Buenas tardes foro,
Actualmente estoy haciendo un handle de error personalizado y va todo viento en popa. Exceptuando una cosa, cuando pierde la conexi贸n a MYSQL, tiene unos 20 segundos de timeout para volver a conectarse como habia menciado Mr. Rao. Pero al terminar esos 20 segundos, tira error fatal y cierra sistema. Lo que quiero hacer es que le aparezca para reintentar. Pero al reintentar, y conectarse exitosamente, no vuelve a ejecutar la linea que arrojo el error. Puedo obtener la QUERY consultando los GetParam( n, j ) pero no puedo saber el NOMBRE de la variable donde se guardaba esa informaci贸n, y por lo complejo de mi sistema, no puedo ponerle el mismo nombre de variable a todas las consultas SQL. Lo ideal, seria que se haga automaticamente, pero a mi me gustaria hacer la asignaci贸n por ejemplo de ntab := oodbc:query(GetParam( n, 1 )).
Habria alguna forma de saber, cuando ocurre un error, toda la linea del problema para asi descubrir la variable en cuestion? O bien, que me brinde el nombre de la variable asociada. No la puedo encontrar en ningun log. EJEMPLO:
ntab := oodbc:query("SELECT id from customers")
"SELECT id from customer" - Lo tengo.
ntab - No lo tengo
Actualmente estoy haciendo un handle de error personalizado y va todo viento en popa. Exceptuando una cosa, cuando pierde la conexi贸n a MYSQL, tiene unos 20 segundos de timeout para volver a conectarse como habia menciado Mr. Rao. Pero al terminar esos 20 segundos, tira error fatal y cierra sistema. Lo que quiero hacer es que le aparezca para reintentar. Pero al reintentar, y conectarse exitosamente, no vuelve a ejecutar la linea que arrojo el error. Puedo obtener la QUERY consultando los GetParam( n, j ) pero no puedo saber el NOMBRE de la variable donde se guardaba esa informaci贸n, y por lo complejo de mi sistema, no puedo ponerle el mismo nombre de variable a todas las consultas SQL. Lo ideal, seria que se haga automaticamente, pero a mi me gustaria hacer la asignaci贸n por ejemplo de ntab := oodbc:query(GetParam( n, 1 )).
Habria alguna forma de saber, cuando ocurre un error, toda la linea del problema para asi descubrir la variable en cuestion? O bien, que me brinde el nombre de la variable asociada. No la puedo encontrar en ningun log. EJEMPLO:
ntab := oodbc:query("SELECT id from customers")
"SELECT id from customer" - Lo tengo.
ntab - No lo tengo
if e:sUbsystem = "MYSQL" .and. e:sUbcode = 2013
聽 聽 聽 Envia_Error_Log(cErrorLog)
聽 聽 聽 msgstop("Se perdio la conexi贸n al servidor. Aguarde unos instantes y presione aceptar. Vamos a reintentar conectarnos","Ha ocurrido un error de conexion")
聽 聽 聽 if !msgrun("Conectandose al servidor", "Conectando", { || meconecto() } )
聽 聽 聽 聽 聽msgstop("Fallo la reconexi贸n al servidor. El sistema se cerrara.","Error al reconectarse")
聽 聽 聽 聽 聽PostQuitMessage( 0 )
聽 聽 聽 聽 聽QUIT
聽 聽 聽 聽 聽return .f.
聽 聽 聽 else
聽 聽 聽 聽 聽if len(variablesInUse['TDOLPHINQRY:LOADQUERY']) > 0
聽 聽 聽 聽 聽 聽
聽 聽 聽 聽 聽 聽 return .t.
聽 聽 聽 聽 聽else
聽 聽 聽 聽 聽 聽 msgstop("Pudimos reconectarnos, pero fallo la recuperaci贸n de lo que estabas haciendo. El sistema va a cerrarse.","No se ha podido recuperar")
聽 聽 聽 聽 聽 聽 return .f.
聽 聽 聽 聽 聽endif
聽 聽 聽 endif
聽 聽endifNicol谩s