aşağıda dbeditin çıkış olayında kitabın kayıtlı olup olmadığını kontrol ediyorum eğer kayıtlı ise bilgileri label lere yazdırıyorum ama kayıt boş ise hata veriyordu bende aşağıdaki gibi if leri kullandım sorun çözüldü ama daha iyi bi fikri olan arkadaşlar varsa yardım ederse sevinirim
procedure TForm1.DBEdit8Exit(Sender: TObject);
VAR
ARA:variant;
begin
if not (dbedit8.Text='') then
begin
ara:=table1.Lookup('KIT_KODu',dbedit8.Text,'KIT_ADI;KIT_YAZAR;BASIM_EVI;BASIM_TAR;ISBN_NO;KIT_KONU;FIYAT;RAF_NO');
if varisnull(ara) then
begin
showmessage('KİTAP KAYITLI DEĞİL');
dbedit8.SetFocus;
END
else
begin
panel7.visible:=true;
dbedit9.Text:=ara[0];
dbedit9.Enabled:=false;
if not varisnull (ara[0]) then
label52.caption:=ara[0];
if not varisnull (ara[1]) then
label53.Caption:=ara[1];
if not varisnull (ara[2]) then
label54.Caption:=ara[2];
if not varisnull (ara[3]) then
label55.Caption:=ara[3];
if not varisnull (ara[4]) then
label56.Caption:=ara[4];
if not varisnull(ara[5]) then
LABEL57.Caption:=ara[5];
if not varisnull(ara[6]) then
label58.caption:=ara[6];
if not varisnull (ara[7]) then
label59.Caption:=ara[7];
dbedit16.SetFocus;
end;
end
else
begin
Showmessage('KİTAP KODU BOŞ GEÇİLEMEZ');
dbedit8.SetFocus;
end;
end;
procedure TForm1.DBEdit8Exit(Sender: TObject);
VAR
ARA:variant;
i:integer;
begin
if not (dbedit8.Text='') then
begin
ara:=table1.Lookup('KIT_KODu',dbedit8.Text,'KIT_ADI;KIT_YAZAR;BASIM_EVI;BASIM_TAR;ISBN_NO;KIT_KONU;FIYAT;RAF_NO');
if varisnull(ara) then
begin
showmessage('KİTAP KAYITLI DEĞİL');
dbedit8.SetFocus;
END
else
begin
panel7.visible:=true;
dbedit9.Text:=ara[0];
dbedit9.Enabled:=false;
For i:=0 to 7 do
begin
if not varisnull (ara[i]) then TLabel(FindComponent('Label'+inttostr(52+i)).Caption:=ara[i]
end;
end;
dbedit16.SetFocus;
end
else
begin
Showmessage('KİTAP KODU BOŞ GEÇİLEMEZ');
dbedit8.SetFocus;
end;
end;