Capturar un error

Capturar un error

Postby cmarucco » Wed May 11, 2011 7:42 pm

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
User avatar
cmarucco
 
Posts: 46
Joined: Tue Oct 11, 2005 2:23 pm
Location: argentina

Re: Capturar un error

Postby horacio » Wed May 11, 2011 11:31 pm

Puedes usar try, catch, end para controlar cualquier tipo de errores. Espero te sirva
Salu2
horacio
 
Posts: 1358
Joined: Wed Jun 21, 2006 12:39 am
Location: Capital Federal Argentina

Re: Capturar un error

Postby cmarucco » Thu May 12, 2011 2:03 pm

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
User avatar
cmarucco
 
Posts: 46
Joined: Tue Oct 11, 2005 2:23 pm
Location: argentina

Re: Capturar un error

Postby horacio » Thu May 12, 2011 3:00 pm

Puedes hacer de la siguiente manera:
Try
//tu rutina
Catch oError
? oError : Description, oError : Operation
End
Salu2
horacio
 
Posts: 1358
Joined: Wed Jun 21, 2006 12:39 am
Location: Capital Federal Argentina

Re: Capturar un error

Postby cmarucco » Thu May 12, 2011 4:54 pm

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
User avatar
cmarucco
 
Posts: 46
Joined: Tue Oct 11, 2005 2:23 pm
Location: argentina


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 8 guests