Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-04-2004
cmena cmena is offline
Miembro
 
Registrado: abr 2004
Ubicación: CHILE
Posts: 67
Poder: 21
cmena Va por buen camino
Unhappy uso del try

Amigos la funcion try opera con todos los errores de ejecucion ?
sucede que puse try antes de un error de despliege de datos y no
salta al except(error9).
este es el caso
gracias


if dmBasedatos.tbkcli903.FindKey( [lv_rut] ) then
begin
try
ShowMessage(dmBasedatos.tbkcli903['b_atc903']);
except
ShowMessage('error9')
end;
Responder Con Cita
  #2  
Antiguo 20-04-2004
Avatar de nefy
nefy nefy is offline
No confirmado
 
Registrado: nov 2003
Posts: 171
Poder: 0
nefy Va por buen camino
No entiendo tu logica podrias explicarlo con pseudocodigo o en tus palabras q quieres q haga el codigo?
Responder Con Cita
  #3  
Antiguo 20-04-2004
cmena cmena is offline
Miembro
 
Registrado: abr 2004
Ubicación: CHILE
Posts: 67
Poder: 21
cmena Va por buen camino
Wink try

Cita:
Empezado por nefy
No entiendo tu logica podrias explicarlo con pseudocodigo o en tus palabras q quieres q haga el codigo?
al deplegar el mensaje la aplicacion se cae al venir el atributo en blanco
por lo tanto emplee un try para saltar el error

try
despliego datos (aqui se produce el error de dato invalido)
except
envio mensaje de error

mi pregunta es por que no salta al parrafo de except
Responder Con Cita
  #4  
Antiguo 20-04-2004
Avatar de nefy
nefy nefy is offline
No confirmado
 
Registrado: nov 2003
Posts: 171
Poder: 0
nefy Va por buen camino
Deja ver si te entendi. Quieres q si no se encuentra el registro se despliegue un mensaje de error para comunicar al usuario q el registro no existe?
Responder Con Cita
  #5  
Antiguo 20-04-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
la ejecución del programa saltará a la clausula except siempre que algo eleve una excepción (algo de lo que se ejecuta después de try y antes de except). Hay bibliotecas que están programadas al muy antiguo estilo (o muy mal programadas) y devuelven códigos de error o informan ellas mismas al usuario.

El ShowMessage en raras ocasiones elevará una excepción... quizas solo por falta de recursos.

la expresión dmBasedatos.tbkcli903['b_atc903'] no tengo idea si eleve una excepción, pues no tengo idea de que se trate.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #6  
Antiguo 20-04-2004
cmena cmena is offline
Miembro
 
Registrado: abr 2004
Ubicación: CHILE
Posts: 67
Poder: 21
cmena Va por buen camino
Te explico, el error se produce al usar el showmessage, por lo tanto intento con el try
para que salte el error y no caiga la aplicacion, pero la aplicacion se sigue cayendo,
mi pregunta es por que no funciona el try?
gracias

dmBasedatos.tbkcli903.FindKey( [lv_rut] ) then
begin
try
ShowMessage(dmBasedatos.tbkcli903['b_atc903']);
except
ShowMessage('error9')
end;
Responder Con Cita
  #7  
Antiguo 20-04-2004
cmena cmena is offline
Miembro
 
Registrado: abr 2004
Ubicación: CHILE
Posts: 67
Poder: 21
cmena Va por buen camino
Te explico, el error se produce al usar el showmessage, por lo tanto intento con el try
para que salte el error y no caiga la aplicacion, pero la aplicacion se sigue cayendo,
mi pregunta es por que no funciona el try?
gracias

dmBasedatos.tbkcli903.FindKey( [lv_rut] ) then
begin
try
ShowMessage(dmBasedatos.tbkcli903['b_atc903']);
except
ShowMessage('error9')
end;
Responder Con Cita
  #8  
Antiguo 20-04-2004
Avatar de nefy
nefy nefy is offline
No confirmado
 
Registrado: nov 2003
Posts: 171
Poder: 0
nefy Va por buen camino
Q mensaje te envia al "caerse" la aplicacion?. Y que es dmBasedatos.tbkcli903['b_atc903'])?.
Responder Con Cita
  #9  
Antiguo 20-04-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por nefy
Y que es dmBasedatos.tbkcli903['b_atc903'])?.
dmBasedatos.tbkcli903 es una tabla, al menos a juzgar por la llamada anterior a FindKey. Si este error es el mismo que le da problemas en el hilo http://www.clubdelphi.com/foros/showthread.php?t=9286 entonces creo que lo qe allá le respondo es lo que necesita.

// Saludos
Responder Con Cita
  #10  
Antiguo 20-04-2004
Avatar de nefy
nefy nefy is offline
No confirmado
 
Registrado: nov 2003
Posts: 171
Poder: 0
nefy Va por buen camino
Y bien Cmena tu q dices?. Es lo q te menciona Roman o q?
Responder Con Cita
  #11  
Antiguo 20-04-2004
cmena cmena is offline
Miembro
 
Registrado: abr 2004
Ubicación: CHILE
Posts: 67
Poder: 21
cmena Va por buen camino
el error es "invalid variant type conversion" dmbasedatos es el datamodule, el tbcli903 es la tabla y el b_atc903 es el atributo (tipo caracter de largo 15) este cuando viene en blanco showmesagge se cae
gracias
Responder Con Cita
  #12  
Antiguo 20-04-2004
Avatar de nefy
nefy nefy is offline
No confirmado
 
Registrado: nov 2003
Posts: 171
Poder: 0
nefy Va por buen camino
Mira cmena yo ya probe el codigo y si salta al except Algo tienes mal en tu codigo no podrias poner el procedimiento completo o de menos unas lineas hacia arriba y otras hacia abajo?
Responder Con Cita
  #13  
Antiguo 20-04-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por cmena
el error es "invalid variant type conversion" dmbasedatos es el datamodule, el tbcli903 es la tabla y el b_atc903 es el atributo (tipo caracter de largo 15) este cuando viene en blanco showmesagge se cae
gracias
Pregunta: ¿este problema tiene que ver con el hilo que te menciono? Y en tal caso, ya probaste lo que ahí te digo?

// Saludos
Responder Con Cita
Respuesta



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


La franja horaria es GMT +2. Ahora son las 17:50:34.


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