var
say :integer;
begin
say :=0;
ibquery1.SQL.Text :='select * from GECICI';
ibquery1.Open;
ibquery1.First;
while not Ibquery1.Eof do begin
Inc(say);
dbKayi[say] :=IbQuery.FieldByName('ILANNU').AsString;
ibquery.Next;
end;
ibquery.Close;
end;
for i:=1 to LByeniIlanlar.Items.Count-1 do
begin
IBQuery1.Close;
IBQuery1.SQL.Clear;
IBQuery1.SQL.Add('select * from GECICI where ILANNU='+LByeniIlanlar.Items[i]);
IBQuery1.Open;
while (not IBQuery1.Eof) do
begin
lbSatilan.Items.Add(IBQuery1.fieldbyname('ILANNU').value);
//ShowMessage('Bulundu');
IBQuery1.Next;
end;
//lbSatilan.Items.Add(LByeniIlanlar.Items[i]);
end;
yukardaki kod ile veritabanında aradığımı bulup listbox'a atıyorum ama
bulamadıklarımıda başka bir listbax.'a atmak istiyorum ama beceremedim bir türlü
for i:=1 to LByeniIlanlar.Items.Count-1 do
begin
IBQuery1.Close;
IBQuery1.SQL.Clear;
//IBQuery1.SQL.Add('select * from GECICI where ILANNU='+LByeniIlanlar.Items);
IBQuery1.SQL.Add('select * from GECICI');
IBQuery1.Open;
while (not IBQuery1.Eof) do
begin
if IBQuery1.fieldbyname('ILANNU').AsString = LByeniIlanlar.Items then
lbListe1.Items.Add(IBQuery1.fieldbyname('ILANNU').AsString)
else
lbListe2.Items.Add(IBQuery1.fieldbyname('ILANNU').AsString);
IBQuery1.Next;
end;
end;
procedure Doldur(const ASorgu :string; const AStrings :TStrings);
begin
IBQuery1.SQL.Text :=ASorgu;
IBQuery1.Open;
AStrings.Clear;
try
while not IBQuery1.Eof do begin
AStrings.Add(IBQuery1.Fields[0].AsString);
IBQuery1.Next;
end;
finally
IBQuery1.Close;
end;
end;
function kontrolEt(gln:string):Boolean;
var
i:integer;
begin
Result:=False;
_yolExe:=ExtractFilePath(Application.Exename);
frmAnaliz.IBDatabase1.DatabaseName:=_yolExe+'DB\VT.FDB';
frmAnaliz.IBDatabase1.Connected:=true;
frmAnaliz.IBQuery1.Close;
frmAnaliz.IBQuery1.SQL.Clear;
frmAnaliz.IBQuery1.SQL.Add('select * from GECICI where ILANNU='+gln);
frmAnaliz.IBQuery1.Open;
while (not frmAnaliz.IBQuery1.Eof) do
begin
Result:=True;
frmAnaliz.IBQuery1.Next;
end;
end;
procedure TfrmAnaliz.btnYeniClick(Sender: TObject);
var
i:integer;
s:Boolean;
begin
for i:=0 to LByeniIlanlar.Items.Count-1 do
begin
s:=kontrolEt(LByeniIlanlar.Items[i]);
if s=True then
begin
end;
if s=False then LByeni.Items.Add(LByeniIlanlar.Items[i]);
end;
ShowMessage('Ok');
end;
çok teşekkürler hocam
verdiğiniz örnege göre geliştirmeye çalışacağım..