Ver Mensaje Individual
  #1  
Antiguo 14-01-2004
Avatar de sitrico
[sitrico] sitrico is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Caracas, Venezuela
Posts: 295
Reputación: 22
sitrico Va por buen camino
Evitar un Key Violation

Buenas, Estoy retocando una aplicación y quisiera verificar ANTES DE QUE OCURRA la validez de una clave, me explico:

Visitando los foros encontré que una de las maneras de manejar la excepción del Key Violation era:

Código:
Try
    db.Post;
Except
   Mensaje....
End;
Ahora bien, manejarlas de esa manera me obligaría a crear un bloque Try..Excep en cada post de la aplicación. Preferiría usar los eventos de la base de datos OnPostError o mejor OnBeforePost para validar la clave antes de que se genere la excepción. Tengo la dificultad adicional de que parte de la base de datos está filtrada y hay claves ocultas.

¿ Existe alguna función como Function IsValidKey(Registro o clave):Boolean (o algo así) que permita llamar a la BDE para que se verifique la validez de la clave ?

El código debe ser algo así:

Código:
Evento On BeforePost

If Not(IsValidKey(Registro acual)) Then
   Begin
   // Mensaje de clave duplicada
   Abort; // pero debe seguir el insert o edit 
   End;
__________________
Sitrico

Última edición por sitrico fecha: 14-01-2004 a las 15:08:02.
Responder Con Cita