Je kunt deze exception gewoon zelf afvangen.
In de On E: Exception kun je controleren op
Exception EIBInterBaseError
en EIBInterBaseError(E).IBErrorCode = 335544466
Delphi Code:
except
on E: EIBInterBaseError do
if EIBInterBaseError(E).IBErrorCode = 335544466 then
begin
Showmessage('Dit record wordt elders nog gebruikt. Verwijderen is niet mogelijk');
end;
end;
Edit:
Kleine aanpassing voor Lazarus:
Delphi Code:
uses ibase40; // alleen voor de isc_foreign_key constant
...
try
//
except
on E: EIBDatabaseError do
if E.ErrorCode = isc_foreign_key {335544466} then
begin
Showmessage('Dit record wordt elders nog gebruikt. Verwijderen is niet mogelijk');
end;
end;
Bookmarks