Cambio en Errorsys

Post Reply
User avatar
Kleyber
Posts: 581
Joined: Tue Oct 11, 2005 11:28 am
Location: São Luiz, Brasil

Cambio en Errorsys

Post by Kleyber »

Hola,

Alguno de ustedes ha conseguido cambiar el errorsys de forma que solo se quite el programa si pulsarmos el botón QUIT, y si pulsarmos el botón SALIR el programa continue normalmente? Se si, donde puedo coger tal información?

Saludos
Kleyber Derick

FWH / xHb / xDevStudio / SQLLIB
R.F.
Posts: 840
Joined: Thu Oct 13, 2005 7:05 pm

Post by R.F. »

No es tan facil, continuar o no la ejecucion de un programa depende del tipo de error que se haya generado, algunos errores pueden "reintentar" pero otros requieren que la aplicacion se aborte.

Clipper posee un "objeto Error" y (x)Harbour hereda dicho comportamiento, funciona asi:

Existe una funcion "global" llamada ErrorBlock(), que recibe como parámetro un bloque de código el cual a su vez puede recibe como parametro el objeto error, el bloque de codigo lleva una funcion a la cual se va a llamar cuando el programa cause un error:

ErrorBlock({|oError| MiControlDeErrores(oError)})

Tan simple como eso, cuando tu programa cause un error, se llama de manera automatica a la funcion MiControlDeErrores() y ahi, tu puedes escribir lo que tu quieras que pase con los errores.

Lo mas facil es hacer:

Funcion MiControlDeErrores(oError)
QUIT
RETURN

Asi el programa directamente se sale sin hacer mas preguntas.

FiveWin tiene el Errsysw.prg que contiene la función que controla los errores en tiempo de ejecucion de FiveWin, esta en \source\function. Esta funcion "analiza" el objeto error y en base a eso dibuja el dialogo muestra el listado de errores y dependiendo del estado del error muestra los botones correspondientes, en _, dependiendo de la serveridad del error sera el "Default", en otras el "Retry" y en otras directamente el "Quit", pero todo esto vienen de analizar las datas del objeto error.

Para mas informacion sobre las propiedades del objeto ERROR las puedes encontrar en el manual de Clipper.
Saludos
R.F.
User avatar
Kleyber
Posts: 581
Joined: Tue Oct 11, 2005 11:28 am
Location: São Luiz, Brasil

Post by Kleyber »

Maestro Rene,

Gracias por la aclaración. Lo que pasa es que en el Errsysw.prg de Fivewin me muestra siempre la misma pantalla con los mismos botones, no importando si el error es un error que se pueda intentar nuevamente o no. Por eso pregunto se si puede "forzar" la diferenciación de un error y otro, y asi hacer una "configuración" del errorsys.

Saludos,
Kleyber Derick

FWH / xHb / xDevStudio / SQLLIB
Post Reply