Ver Mensaje Individual
  #4  
Antiguo 17-10-2006
Avatar de kalimero
kalimero kalimero is offline
Miembro
 
Registrado: may 2003
Ubicación: Alicante
Posts: 288
Reputación: 22
kalimero Va por buen camino
Hola.
Pues como te comenta Roman, y suponiendo que uses Firebird y los componentes FibPlus, en el evento OnpostError puedes colocar un procedimiento (o sin procedimiento) tal como:
Código Delphi [-]
procedure TdmDatos.InformaError(E:EDatabaseError);
begin
  Case EIBError(E).IBErrorCode of
    isc_unique_key_violation: 
    begin
      MessageDlg(E.Message +
      'CLAVE DUPLICADA',mteRROR,[mbOk], 0);
    end
    else
    begin
      showmessage(inttostr(EIBError(E).IBErrorCode));
    end;
  end;
end;
isc_unique_key_violation es una constante con el codigo de error que te devuelve el servidor correspondiente a la clve duplicada. Si quieres controlar otros codigos de error, en IbErrorCodes.pas tienes el (creo recordar..).
No olvides añadir a las uses : Ib,IbErrorCodes.

Saludos
Responder Con Cita