Veri tabanı hatalarından en önemlilerini yakalamak için gerekli olan kodlar...
QStok : TQuery/// tanımlı
.....
....
procedure TForm1.QStokPostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
var
DBIError:Integer;
// Mesajoku:string;
begin
if (E is EDBEngineError) then
Begin
DBIerror:=(E as EDBEngineError).Errors[0].ErrorCode ;
if DBIError = 9729 then
Begin
// MessageDlg ('Geçersiz Stok Kodu Numarası...Aynısı Mevcut...Lütfen Farklı bir sayı girin',Mtwarning,[mbOk],0);
Application.MessageBox('Geçersiz Stok Kodu Numarası! Aynısı Mevcut.Sistem yöneticinize başvurun','Uyarı',MB_OK + MB_ICONERROR);
Dataset.Cancel ;
E.Free ;
end;
end;
//2. hata yakalama boş kayıt girişi engellenmesi
// Mesajoku:=E.message;
// if (Pos('Field value',Mesajoku)<> 0) or (pos('required',Mesajoku)<>0) then
if DBIError = 9732 then
begin
// MessageDlg('Boş bir Kayıt kesinlikle giremezsiniz.!!', mtError ,[mbOk],0);
Application.MessageBox('Boş bir Kayıt kesinlikle giremezsiniz.!!','Uyarı',MB_OK + MB_ICONERROR);
// dxDBEdit2.SetFocus;
Dataset.Cancel ;
Sysutils.Abort ;
E.Free ;
end;
end;