Visual Basic - ¿Cuales son las posibles causas del error 40002?

Life is soft - evento anual de software empresarial
 
Vista:

¿Cuales son las posibles causas del error 40002?

Publicado por Esteban Contreras (1 intervención) el 16/11/2000 00:00:00
Buenas tardes, les explico, tengo una aplicación en VB5 la cual accesa una base de datos de INFORMIX mediante RDO en un servidor HP-UX cuyo alias es K3 y esta base tiene una vista de una tabla de otra base INFORMIX que se encuentra en otro equipo cuyo alias es DARIO1_TCP.
He revisado que el usuario tenga los permisos correspondientes en los dos equipos, así como la configuración, etc. Cuando realizo una consulta o genero un reporte el cual implica el cruce de las dos tablas mencionadas de FORMA LOCAL no tengo problemas, pero cuando es de una localidad externa (solo en 6 localidades de 65) me genera el siguiente error:

ERROR 40002 EN TIEMPO DE EJECUCION:
S1000; INTERSOLV ODBC INFORMIX DRIVER INFORMIX ATTEMPT TO CONNECT TO DATA BASE SERVER (DARIO_TCP, CORNERR = 25553, OSERR =0 ) FAILED.

¿Alguén podría decirme que está pasando o a consecuencia de que se está dando este error?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

¿Cuales son las posibles causas del error 40002?

Publicado por Iván (2 intervenciones) el 12/06/2015 16:51:51
The root cause:

The ODBC driver does not support transactions on a connection that has open sets of results. The result set must be opened and closed within the scope of the transaction. The ODBC driver does not preserve cursors in the transaction boundaries. This means that open result sets, but must be closed before entering or exiting the scope of a transaction. This is a limitation in the design of the ODBC driver used.

Recommended Solutions:

1. Check if there is an ODBC driver that does not have this limitation, and use it if exists.
2. Use DAO instead of RDO.
3. Rewrite the code to avoid this limitation. That is, that the result sets open but closed before entering or exiting the scope of a transaction.

It is not a backend problem, it corresponds to an error in the way you are programming, taking into account the limitations of the ODBC driver used.


Iván.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar