Ayuda con los errores

the_punisher
22 de Julio del 2004
please hay alguien que me pueda ayudar, quiero que los mensajes de error que me salen mientras ejecuto un programa se graben en archivo de texto creado en el mismo programa

sgomez
22 de Julio del 2004
Otra forma puede ser

public cNombreArchivo
cNombreArchivo="d:archivo.txt"

ON ERROR do errores with ERROR(), MESSAGE(), MESSAGE(1), PROGRAM(), LINENO()


PROCEDURE errores
PARAMETER merror, MESS, mess1, mprog, mlineno
STRTOFILE('Número de error: ' + LTRIM(STR(merror)), cNombreArchivo,.T.)
STRTOFILE('Mensaje de error: ' + mess, cNombreArchivo,.T.)
STRTOFILE('Línea de código con error: ' + mess1, cNombreArchivo,.T.)
STRTOFILE('Número de línea del error: ' + LTRIM(STR(mlineno)), cNombreArchivo,.T.)
STRTOFILE('Programa con error: ' + mprog, cNombreArchivo,.T.)
ENDPROC



gr
22 de Julio del 2004
en algun programa principal

ON ERROR errores( ERROR(), MESSAGE(), MESSAGE(1), PROGRAM(), LINENO() )


*-------------------------------------------------------------------------------
PROCEDURE errores
*-------------------------------------------------------------------------------
PARAMETER merror, MESS, mess1, mprog, mlineno
SET ALTE TO error.dat ADDITIVE
SET ALTE ON
SET CONSOLE OFF
? 'Directorio - Fecha y Hora : '+CURDIR()+' '+DTOC( DATE() )+' '+TIME()
? 'Número de error : ' + LTRIM(STR(merror))
? 'Mensaje de error : ' + MESS
? 'Línea de código con error: ' + mess1
? 'Número de línea del error: ' + LTRIM(STR(mlineno))
? 'Programa con error : ' + mprog
? REPLI('-',120)
?
SET ALTE TO
SET CONSOLE ON
ENDPROC