Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-11-2007
JerS JerS is offline
Miembro
 
Registrado: may 2005
Ubicación: Venezuela
Posts: 254
Poder: 22
JerS Va por buen camino
Bueno aunque mi pregunta fue un poco compleja amigo [ContraVeneno] yo la formulo por aqui porque se que me van a dar una respuesta mucho mas tecnica y mejor formulada a la que podria obtener en google, por otro lado el manejo de excepciones es muy util pero cuando tu sabes donde esta el error, lo que necesito es ubicar el error en las 5000 lineas de codigo, lo cual seria muy util un archivo log, lo que sucede es que es un modulo de entrada y salida que puede tener cientos de combinaciones y en realidad necesitaria guardar la hora exacta y en donde se esta abortando mi aplicacion , como comenta el amigo Lepe es uno de los errores mas dificil de detectar porque no te dice cual es el error por la pantalla
__________________
La vida es un simple pero complejo If

J=rS
Responder Con Cita
  #2  
Antiguo 30-11-2007
danilo_candales danilo_candales is offline
Miembro
 
Registrado: nov 2007
Posts: 28
Poder: 0
danilo_candales Va por buen camino
Pusiste esta pregunta en el foro Varios, y quizás yo sea medio tonto, pero no me queda claro si el procedimiento es un stored procedure de base de datos o un Procedure de Delphi.
Pero no importa. Mi pregunta aplica para cualquiera sea el caso. Si son 5000 líneas porque mejor no lo partes en pedacitos, refactorizas. Y asi puedes controlar mejor la ejecución y vas ejecutando por partes y cuando salte el error tengas una idea mas clara de por donde. Y con ese log es hasta mas fácil cuando el codigo está en pedazos. A cada rutina le asignas un identificador y guardas en el log cada vez que se ejecute hora, usuario, IP, mac adress, no sé, cuantos valores creas puedas necesitar.

Dijo alguien por ahi, divide y vencerás.

Saludos.
Responder Con Cita
  #3  
Antiguo 01-12-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Cuando dices "procedimiento" no lo asocio con un "procedure de delphi", me parecería una auténtica locura, si es así, de verdad te compadezco .

Por cada mensaje a grabar en el log se debería:
- abrir el archivo
- escribir la línea de mensaje
- cerrar el archivo.

No uses el jvLog de la JVCL, es una patata.

Si el archivo log se mantiene abierto, al dar el error, se puede perder las últimas escrituras hechas (porque estén en cache).

Guardar la hora es lo de menos, es más.... ¿qué más te dá si el error fue a las 11:00 o a las 14:00? Lo que te interesa es saber qué desencadenó el error. Una de las formas es incluir excepciones dentro de esa rutina, haciéndolas saltar, así puedes identificarlo:

Reglas de oro:
- No dejes nunca un case sin else:
Código Delphi [-]
case contador of
0: ....
1: ...
else
  raise exception.CreateFmt('oops, "case del contador" no implementado para valor %d',[contador]);
Tampoco dejes un if sin else, si puede existir dicha opción:
Código Delphi [-]
 type MiPrograma = Class(Exception); 
// así diferencias las excepciones de la VCL con las tuyas propias.

 if a = 0 then
  ....
 else if a> 0 then
 ....
 else
     raise Miprograma.CreateFmt('oops, " a < 0 " no implementado para valor %d',[a]);

Es obvio que ahora mismo, es un engorro hacer todo esto para tí, pero ¡¡deberías seguir buenas prácticas de programación desde un principio!!

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Ayuda con un error en delphi atapia Varios 6 05-07-2007 07:46:41
Ayuda con error edlm Varios 2 04-05-2006 04:00:28
Ayuda con error raco Varios 4 19-04-2006 22:09:45
AYUDA!... Error I/O Darkness Firebird e Interbase 1 18-08-2004 18:57:35
Error en Sizeof ayuda. 460 esquerda21 Varios 2 28-11-2003 11:11:27


La franja horaria es GMT +2. Ahora son las 23:11:24.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi