Hola buenos días, gracias a todos por responder
I forgot.
For my own use and testing, can you reproduce that function here?
Now I need it for myself.
Mr. Rao esta es la función que nos proporcionaste.
- Code: Select all Expand view RUN
Function AdoExecute( oCn, bAction ) //Aporte Mr.Rao Foro FW
Local uRet
if oCn:State == 0 .or. Empty( oCn:Properties( "Current Catalog" ):Value )
oCn:Close()
oCn:Open()
endif
if oCn:State > 0
TRY
uRet := Eval( bAction, oCn )
CATCH
FW_ShowAdoError( oCn )
END
else
msginfo("Conexión Perdida, imposible recuperar","Error de conexión")
endif
//Usage:
//oRs := AdoExecute( oMyConObject, { |oCn| FW_OpenRecordSet( oCn, cSql ) } )
//uResult := AdoExecute( oMyConObject, { |oCn| oCn:Execute( cSql ) } )
return uRet
Cesar y José gracias por la ayuda.
Mi experiencia me dice que al servidor hay que ir solo cuando necesitamos traer algo
o cuando vamos a modificar algo.
No es necesario tener abierta la conexión todo el tiempo
Sql no es DBF.
es importante comprender la parte (FRONTEND y BACKEND
Con respecto al este aporte, es el tema de conexión y desconexión con un servidor remoto aumenta el tiempo de respuesta demasiado, ya que depende de muchos factores, en alguna oportunidad lo intente así, tomamos los tiempos, pero es realmente demorado en algunas ocasiones, lo mejor que nos ha funcionado de momento es mantener la aplicación en línea con el servidor. Pero no se si este problema sea de ADO, por eso nos surge la idea de cambiar de clase y podamos mejorar esos tiempos y reconexiones.
Gabo gracias por responder
Leandro
Puedes usar un timer que este validando la conexion con el servidor.. depende de tu aplicacion y el proceso que necesites realizar..
Si, de momento así lo tenemos, el problema es cuando la conexión se cae (realmente), así sea por algunos segundos. Luego le es imposible reconectarse.