ON ERROR

Lehi
06 de Julio del 2005
Hola, a todos, tengo una pregunta que me gustaria que me respondieran, quiero poner un comando on error en mi aplicacion, ya lo probe con un proyecto que hice sin el asistente y funciona muy bien, pero tengo un proyecto que hice con el asistente y en ese no funciona, porque el proyecto maneja una clase de manejo de errores, pero no se como decirle o evitar que no la tome en cuenta y tome en cuenta el programa que yo quiero manejar, me pueden ayudar??? por favor, a todos GRACIAS

carlos correal
06 de Julio del 2005
Bueno, cada objetop tiene un procedimiento error().
Cuando se produce un error, el sistema va para ese procedimiento, donde debe encontrar què hacer,sino se sale.
Ese algo que hacer lo puedes definir con un DO CASE,
con CASE errno= xxxxx

sgomez
06 de Julio del 2005
En este ejemplo yo trato de abrir una tabla, si ya está abierta se queda ciclando hasta que la liberan, y posteriormente la abro yo. Fijáte si te sirve.

public dioerror
dioerror=.T.

*Paso el control de errores a mi procedimiento
on error do errores WITH ERROR( ), MESSAGE( ), MESSAGE(1), PROGRAM( ), LINENO( )

DO while dioerror
use c:archivo
if used("archivo")
dioerror=.F.
endif
enddo

*Restauro el manejo de errores al motor de fox
on error

**continua ejecucion de codigo

return

procedure errores
PARAMETER merror, mess, mess1, mprog, mlineno
do case
case merror=1705
dioerror=.T.
endcase