Saludos
tengo un problemilla cuando se repiten las claves,
Cita:
Empezado por marcoszorrilla
Aquí tienes los códigos más interesantes de error y un ejemplo de como manipular el "KeyViol", yo lo que hago es definir un Procedimiento y le llamo desde cualquier postError de cualquier tabla para evitar la repetición del mismo código.
Código:
const
eKeyViol = 9729;
eRequiredFieldMissing = 9732;
eForeignKey = 9733;
eDetailsExist = 9734;
eSqlGralerror = 13059;
implementation
{$R *.DFM}
procedure TForm1.Table1PostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
begin
if (E is EDBEngineError) then
if (E as EDBEngineError).Errors[0].Errorcode = eKeyViol then
begin
Application.MessageBox('Imposible dar alta ese registro ya existe','Atención',mb_Ok +
mb_IconQuestion);
Abort;
end;
end;
Un Saludo.
|
Saben pongo el codigo como este, y me salta la excepcion, y en el debugger option escojo que no se detenga en las excepciones. Me sale un error mas o menos asi "Los cambios solicitados en la tabla.......' que puedo hecer? manejo una BD Access 2000 gracias