Arkadaşlar günlerdir uğraşıyorum şu dögü koduna lütfen bir bakın nerde hata yapıyorumda istediğim olmuyuyor.
(QRY ler Ibdataset i anlatmakta) ve QRY_GIDERCIKTI daki alanlara başka bir tablodan QRY_GELIR den veri aktarımı yapacağım.Ve aktardığım QRY_GIDERCIKTI dataset inin selectSQL sinde
Kod: Tümünü seç
select*from TBLGELIR_CIKTI order by TARIH asc,SIRA_NO ASC
1.Veri aktarımı yapılmadan önce QRY_GIDERCIKTI tablosunu silmek
2.QRY_GELIR tablosundan verileri almak
3.Bu veri alma işlemi bittiğinde QRY_GIDERCIKTI dataset i açıp kapamak ki TARIH alanlarını sıralasın
4.TARIH sıralaması bittiğinde SIRA_NO alanına 1.2.3.4.5... şeklinde sıra numarası vermek
*Ibquery ile de denedim ama saydığım dört maddeyi yerine getiremedim
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
var
a:integer;
begin
for a:=1 to QRY_GIDERCIKTI.RecordCount do
begin
QRY_GIDERCIKTI.delete;
QRY_GIDERCIKTI.Next;
end;
QRY_GELIR.First;
for a:=1 to QRY_GELIR.RecordCount do
Begin
if QRY_GELIR.FieldByName('TAKSIT1').VALUE>0 then
begin
QRY_GIDERCIKTI.Active:=false;
QRY_GIDERCIKTI.Active:=true;
QRY_GIDERCIKTI.refresh;
IBTransaction1.CommitRetaining;
QRY_GIDERCIKTI.Append;
QRY_GIDERCIKTI.FieldByName('ADI_SOYADI').VALUE :=QRY_GELIR.FieldByName('ADI_SOYADI').VALUE;
QRY_GIDERCIKTI.FieldByName('TARIH').VALUE :=QRY_GELIR.FieldByName('TARIH1').VALUE ;
QRY_GIDERCIKTI.FieldByName('DEKONT_NO').VALUE :=QRY_GELIR.FieldByName('DEKONT1').VALUE ;
QRY_GIDERCIKTI.FieldByName('TUTARI').VALUE :=QRY_GELIR.FieldByName('TAKSIT1').VALUE ;
QRY_GIDERCIKTI.post;
QRY_GIDERCIKTI.refresh;
end;
if QRY_GELIR.FieldByName('TAKSIT2').VALUE>0 then
begin
QRY_GIDERCIKTI.Active:=false;
QRY_GIDERCIKTI.Active:=true;
QRY_GIDERCIKTI.refresh;
IBTransaction1.CommitRetaining;
QRY_GIDERCIKTI.Append;
QRY_GIDERCIKTI.FieldByName('ADI_SOYADI').VALUE :=QRY_GELIR.FieldByName('ADI_SOYADI').VALUE;
QRY_GIDERCIKTI.FieldByName('TARIH').VALUE :=QRY_GELIR.FieldByName('TARIH2').VALUE ;
QRY_GIDERCIKTI.FieldByName('DEKONT_NO').VALUE :=QRY_GELIR.FieldByName('DEKONT2').VALUE ;
QRY_GIDERCIKTI.FieldByName('TUTARI').VALUE :=QRY_GELIR.FieldByName('TAKSIT2').VALUE ;
QRY_GIDERCIKTI.post;
QRY_GIDERCIKTI.refresh;
end;
if QRY_GELIR.FieldByName('TAKSIT3').VALUE>0 then
begin
QRY_GIDERCIKTI.Active:=false;
QRY_GIDERCIKTI.Active:=true;
QRY_GIDERCIKTI.refresh;
IBTransaction1.CommitRetaining;
QRY_GIDERCIKTI.Append;
QRY_GIDERCIKTI.FieldByName('ADI_SOYADI').VALUE :=QRY_GELIR.FieldByName('ADI_SOYADI').VALUE;
QRY_GIDERCIKTI.FieldByName('TARIH').VALUE :=QRY_GELIR.FieldByName('TARIH3').VALUE ;
QRY_GIDERCIKTI.FieldByName('DEKONT_NO').VALUE :=QRY_GELIR.FieldByName('DEKONT3').VALUE ;
QRY_GIDERCIKTI.FieldByName('TUTARI').VALUE :=QRY_GELIR.FieldByName('TAKSIT3').VALUE ;
QRY_GIDERCIKTI.post;
QRY_GIDERCIKTI.refresh;
end;
if QRY_GELIR.FieldByName('TAKSIT4').VALUE>0 then
begin
QRY_GIDERCIKTI.Active:=false;
QRY_GIDERCIKTI.Active:=true;
QRY_GIDERCIKTI.refresh;
IBTransaction1.CommitRetaining;
QRY_GIDERCIKTI.Append;
QRY_GIDERCIKTI.FieldByName('ADI_SOYADI').VALUE :=QRY_GELIR.FieldByName('ADI_SOYADI').VALUE;
QRY_GIDERCIKTI.FieldByName('TARIH').VALUE :=QRY_GELIR.FieldByName('TARIH4').VALUE ;
QRY_GIDERCIKTI.FieldByName('DEKONT_NO').VALUE :=QRY_GELIR.FieldByName('DEKONT4').VALUE ;
QRY_GIDERCIKTI.FieldByName('TUTARI').VALUE :=QRY_GELIR.FieldByName('TAKSIT4').VALUE ;
QRY_GIDERCIKTI.post;
QRY_GIDERCIKTI.refresh;
end;
QRY_GELIR.Next ;
end;
IBTransaction1.CommitRetaining;
//aktarım yapıldı
//sıra nosu
begin
QRY_GIDERCIKTI.edit;
QRY_GIDERCIKTI.post;
QRY_GIDERCIKTI.refresh;
QRY_GIDERCIKTI.first;
begin
for a:=1 to QRY_GIDERCIKTI.recordcount do
begin
QRY_GIDERCIKTI.edit;
QRY_GIDERCIKTI.FieldByName('SIRA_NO').VALUE:=inttostr(a);
QRY_GIDERCIKTI.Post;
QRY_GIDERCIKTI.next;
QRY_GIDERCIKTI.Refresh;
end;
end;
end;
QRY_GIDERCIKTI.Active:=false;
QRY_GIDERCIKTI.Active:=true;
IBTransaction1.CommitRetaining;
END;