Capturar un error

Post Reply
User avatar
cmarucco
Posts: 46
Joined: Tue Oct 11, 2005 2:23 pm
Location: argentina

Capturar un error

Post by cmarucco »

Hola Amigos:
Necesito saber como puedo saber o capturar el momento en que se produce un error....
Ejemplo: Estoy usando
oExcel := TOleAuto():New( "Excel.Application", .F. )
oExcel:WorkBooks:Open(cNombre_archivo:=cGetFile("Consignas\*.*", "Seleccione Fichero"))
Hasta aca perfecto, pero si continuo con el proceso, y se produce un error, por ejemplo "array access", el aplicativo se cancela y al no poder ejecutar
oExcel:Quit(), el EXCEL.EXE sigue ejecutandose como proceso con la planilla seleccionada abierta, y por cada vez que se produce un error, se suman EXCEL.EXE en procesos, que los tengo que eliminar con el administrador de tareas....Lo interesante es que si se puede "capturar" el momento del error, se pueda realizar alguna otra operacion para subsanarlo o avisarle a usuario final, como por ejemplo..... "La Variable xx adquirio un valor 0 o invalido"....
Carlos Gustavo Marucco
Rio Gallegos - Santa Cruz
PATAGONIA ARGENTINA
FWH 10.08 - Eagle1 Ver 6.0 - xHarbour 1.2.1 Rev 6717
xMate Ver 1.15 - Workshop Ver 4.5 - Windows 7
horacio
Posts: 1270
Joined: Wed Jun 21, 2006 12:39 am
Location: Capital Federal Argentina

Re: Capturar un error

Post by horacio »

Puedes usar try, catch, end para controlar cualquier tipo de errores. Espero te sirva
Salu2
User avatar
cmarucco
Posts: 46
Joined: Tue Oct 11, 2005 2:23 pm
Location: argentina

Re: Capturar un error

Post by cmarucco »

Gracias Horacio, funciona !!!! pero ya que estamos ( y esto es para Antonio) .. como se captura lo siguiente en el error.log.......

Application
===========
Path and name: S:\Sistemas\Proyectos\Auditoria\Menu.Exe (32 bits)
Size: 2,227,712 bytes
Time from start: 0 hours 0 mins 11 secs
Error occurred at: 12/05/2011, 10:29:06
Error description: Error BASE/1099 Argument error: STR
o este otro mensaje
Error description: Error BASE/1003 Variable does not exist: N
Args:
[ 1] = U
[ 2] = U
[ 3] = U
Variables in use
================
Procedure Type Value
==========================
DIAGNOSTICOS
Local 1: U
Local 2: U
Local 3: U
Local 4: U
Etc.... Etc....
Todo esto es a los fines de "tratar" de que no aparezca la ventana de error al momento de que este se produzca. Y aqui se denota la edad del suscrito,,,,,, los que venimos migrando de cobol, existe los FILE STATUS, con lo cual se pueden intepretar los errores. Existe algo parecido ...???

Muchas Gracias ...
Carlos Gustavo Marucco
Rio Gallegos - Santa Cruz
PATAGONIA ARGENTINA
FWH 10.08 - Eagle1 Ver 6.0 - xHarbour 1.2.1 Rev 6717
xMate Ver 1.15 - Workshop Ver 4.5 - Windows 7
horacio
Posts: 1270
Joined: Wed Jun 21, 2006 12:39 am
Location: Capital Federal Argentina

Re: Capturar un error

Post by horacio »

Puedes hacer de la siguiente manera:
Try
//tu rutina
Catch oError
? oError : Description, oError : Operation
End
Salu2
User avatar
cmarucco
Posts: 46
Joined: Tue Oct 11, 2005 2:23 pm
Location: argentina

Re: Capturar un error

Post by cmarucco »

Horacio: Muchisimas gracias por las respuestas ... todo muy claro ...

Un Abrazo
Carlos Gustavo Marucco
Rio Gallegos - Santa Cruz
PATAGONIA ARGENTINA
FWH 10.08 - Eagle1 Ver 6.0 - xHarbour 1.2.1 Rev 6717
xMate Ver 1.15 - Workshop Ver 4.5 - Windows 7
Post Reply