İki tane tablom var musteritable ve uruntable bu tablolardan gerekli bilgileri toplayıp dbgrid'de göstermek istiyorum ve aynı zamanda bu birleşlen kayıtların içerisinden daha önce kullandığım bir filtreleme metodunu kullanmak istiyorum bu konuda bana yardımcı olabilirseniz çok sevinirim.
Öncelikle alanlarım;
musteritable uruntable
---------------- ------------
cariunvan urunserino
faturatarihi barkod
faturano
Bu 5 alanı iki tabloda birleştirerek tek dbgrid'de göstermek istiyorum. Daha önceden filtreleme için kullandığım kod ise aşağıdaki gibidir.
Kod: Tümünü seç
var
Cumle : AnsiString;
begin
if (dxCheckEdit1.Checked = True) or (dxCheckEdit2.Checked = True) or (dxCheckEdit3.Checked = True) or (dxCheckEdit4.Checked = True) or (dxCheckEdit5.Checked = True) Then
Begin
Cumle := 'Select * From mafbilgileri where id is not null';
if dxCheckEdit1.Checked Then Cumle := Cumle+' and (faturatarihi between :ilk and :son)';
if dxCheckEdit2.Checked Then Cumle := Cumle+' and (faturano=:faturano)';
if dxCheckEdit3.Checked Then Cumle := Cumle+' and (cunvan=:cunvan)';
if dxCheckEdit4.Checked Then Cumle := Cumle+' and (vtarihi between :bas and :sn)';
if dxCheckEdit5.Checked Then Cumle := Cumle+' and (odemedurumu=:odemedurumu)';
cumle := Cumle+' order by faturatarihi asc';
with flistetable do
Begin
Close;
SQL.Clear;
SQL.Add(Cumle);
if dxCheckEdit1.Checked = True Then
Begin
ParamByName('ilk').AsDate := dxDateEdit1.Date;
ParamByName('son').AsDate := dxDateEdit2.Date;
End;
if dxCheckEdit2.Checked = True Then
Begin
ParamByName('faturano').AsString := dxEdit1.Text;
End;
if dxCheckEdit3.Checked = True Then
Begin
ParamByName('cunvan').AsString := RxDBLookupCombo1.Text;
End;
if dxCheckEdit4.Checked = True Then
Begin
ParamByName('bas').AsDate := dxDateEdit3.Date;
ParamByName('sn').AsDate := dxDateEdit4.Date;
End;
if dxCheckEdit5.Checked = True Then
Begin
if RadioButton1.Checked = True Then
Begin
ParamByName('odemedurumu').AsString := 'Ödendi'
End Else ParamByName('odemedurumu').AsString := 'Ödenmedi';
End;
Active := True;
End;
End Else Gerigetir;
Herkese şimdiden kolay gelsin...