Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-02-2004
Avatar de StartKill
StartKill StartKill is offline
Miembro
 
Registrado: ene 2004
Posts: 299
Poder: 21
StartKill Va por buen camino
violation of PRIMARY or UNIQUE KEY

Hola amigos

Estoy muy contento de que mi aplicacion se "autocontrole" cuando repito algun codigo.... (Tengo entendido que el servidor de encarga de eso).

El problema que tengo es: Que en todos mis formularios cuando repito algun codigo me envia "violation of PRIMARY or UNIQUE KEY..." cosa que es correcta, pero tengo otro formulario que cuando repito el codigo no envia el error pero si controla que no se duplique es decir no hace el insert.

Si no me explique bien: No me estoy quejando que envie el error, mas bien me estoy quejando de que no envie el error----pero sí el server controla que no se repita dos codigo iguales...

Your Friend

StartKill
Lima-Perú
Responder Con Cita
  #2  
Antiguo 27-02-2004
Avatar de StartKill
StartKill StartKill is offline
Miembro
 
Registrado: ene 2004
Posts: 299
Poder: 21
StartKill Va por buen camino
Thumbs up

Hola,
Cuando hablaba de codigo repetido me referia al codigo/valor de un campo/clave... por si no me deje entender

En mi formulario tengo un bottom para grabar mi registro nuevo.

procedure TfrmRuteos_Single.BitBtn1Click(Sender: TObject);
begin
__try
____frmRuteos.IBQuery1.Post;
____frmRuteos.IBTransaction1.CommitRetaining;
____frmRuteos.close;
__except
____frmRuteos.IBTransaction1.RollbackRetaining;
____frmRuteos.IBQuery1.Edit;
____raise; // esta linea me faltó escribir
__end;
end;


Si omitia la linea "RAISE" el ejecutable no emitia el error del server y el usuario no sabia que habia pasado.

Ahora, tengo otra consulta:
No quise abrir otro Hilo, por que creo que es del mismo, Como personalizo mis errores...?

Gracias,

Your Friend

StartKill
Lima-Perú
Responder Con Cita
  #3  
Antiguo 28-02-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
por ejemplo

Código:
try
except
  on E:Exception do
     ShowMessage('mi error personalizado. Mensaje de error:'#13#13 + E.Message);
end;
Por supuesto puedes capturar el tipo de error que quieras y, sino lo es, lanzar el raise
Código:
try
except
  on E:EDivByZero do
     ShowMessage('mi error personalizado. Mensaje de error:'#13#13 + E.Message)
  else raise
end;

Última edición por __cadetill fecha: 28-02-2004 a las 02:29:09.
Responder Con Cita
  #4  
Antiguo 01-03-2004
ramiretor ramiretor is offline
Miembro
 
Registrado: may 2003
Ubicación: México
Posts: 196
Poder: 21
ramiretor Va por buen camino
Hola:
Aparte de lo que te dice Cadetill, puedes usar un archivo que guarde el error, pero para agarrar el error lo pones en un try. Por ejemplo:

var
Mensaje: TStringList;

begin
....


try
except on E:Exception do
begin
Mensaje.Add(E.Message);
Mensaje.SaveToFile('miarchivo.txt');
end;
end;
__________________
Ernesto R.
Responder Con Cita
  #5  
Antiguo 03-03-2004
Avatar de StartKill
StartKill StartKill is offline
Miembro
 
Registrado: ene 2004
Posts: 299
Poder: 21
StartKill Va por buen camino
Gracias, muy buena sus acotes.. sin menospreciar lo que indica nuestro amigo Cadetill, ...me gusto la idea de Ramiretor de guardar los errores en un archivo.

Your friend

StartKill
Lima-Perú
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 19:00:58.


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