arkadaşlar locate edit modunda hep ilk satıra konulanıyor ve ilgili kaydı değilde ilk satırdaki kaydı değiştiriyor
Nerde yanlış yapıyorum anlayamadım
Kod şu şekilde:
if veri.kasa_islem.Locate('ONO',veri.odeme.fieldbyname('ID').Value,[])=False then begin
FORM21.DateTimePicker1.date:=veri.odeme.fieldbyname('TARIH').asdatetime;
FORM21.DateTimePicker1.OnChange(Sender);
veri.kasa_islem.Insert;
veri.kasa_islem.Edit;
veri.kasa_islem.FieldByName('ISLEM').value:='ÇIKIŞ';
veri.kasa_islem.FieldByName('BOL_KOD').AsFloat:=veri.bolge.FieldByName('BOL_KOD').AsFloat;
veri.kasa_islem.FieldByName('KOY_KOD').AsFloat:=veri.koy.FieldByName('KOY_KOD').AsFloat;
veri.kasa_islem.FieldByName('DEF_NO').AsFloat:=veri.cari.FieldByName('DEF_NO').AsFloat;
veri.kasa_islem.FieldByName('BOLGE').VALUE:=veri.bolge.FieldByName('BOL_AD').VALUE;
veri.kasa_islem.FieldByName('KOY').VALUE:=veri.koy.FieldByName('KOY_AD').VALUE;
veri.kasa_islem.FieldByName('AD').VALUE:=veri.cari.FieldByName('AD').VALUE;
veri.kasa_islem.FieldByName('TARIH').AsDateTime:=veri.odeme.FieldByName('TARIH').AsDateTime;
veri.kasa_islem.FieldByName('ACIK').VALUE:=veri.odeme.FieldByName('ACIK').VALUE;
veri.kasa_islem.FieldByName('ODEME_TIP').VALUE:=veri.odeme.FieldByName('ODEME_TIP').VALUE;
veri.kasa_islem.FieldByName('CIKIS').AsFloat:=veri.odeme.FieldByName('GIRIS').AsFloat;
veri.kasa_islem.FieldByName('ONO').AsFloat:=veri.odeme.fieldbyname('ID').AsFloat;
veri.kasa_islem.Post;
end else begin
FORM21.DateTimePicker1.date:=veri.odeme.fieldbyname('TARIH').asdatetime;
FORM21.DateTimePicker1.OnChange(Sender);
veri.kasa_islem.Edit;
veri.kasa_islem.FieldByName('ISLEM').value:='ÇIKIŞ';
veri.kasa_islem.FieldByName('BOL_KOD').AsFloat:=veri.bolge.FieldByName('BOL_KOD').AsFloat;
veri.kasa_islem.FieldByName('KOY_KOD').AsFloat:=veri.koy.FieldByName('KOY_KOD').AsFloat;
veri.kasa_islem.FieldByName('DEF_NO').AsFloat:=veri.cari.FieldByName('DEF_NO').AsFloat;
veri.kasa_islem.FieldByName('BOLGE').VALUE:=veri.bolge.FieldByName('BOL_AD').VALUE;
veri.kasa_islem.FieldByName('KOY').VALUE:=veri.koy.FieldByName('KOY_AD').VALUE;
veri.kasa_islem.FieldByName('AD').VALUE:=veri.cari.FieldByName('AD').VALUE;
veri.kasa_islem.FieldByName('TARIH').AsDateTime:=veri.odeme.FieldByName('TARIH').AsDateTime;
veri.kasa_islem.FieldByName('ACIK').VALUE:=veri.odeme.FieldByName('ACIK').VALUE;
veri.kasa_islem.FieldByName('ODEME_TIP').VALUE:=veri.odeme.FieldByName('ODEME_TIP').VALUE;
veri.kasa_islem.FieldByName('CIKIS').AsFloat:=veri.odeme.FieldByName('GIRIS').AsFloat;
veri.kasa_islem.FieldByName('ONO').AsFloat:=veri.odeme.fieldbyname('ID').AsFloat;
veri.kasa_islem.Post;
end;
Burda edit modda problem veriyor.
locate de konumlanma hatası
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: locate de konumlanma hatası
sanırım sorunertline yazdı: if veri.kasa_islem.Locate('ONO',veri.odeme.fieldbyname('ID').Value,[])=False then begin
FORM21.DateTimePicker1.date:=veri.odeme.fieldbyname('TARIH').asdatetime;
FORM21.DateTimePicker1.OnChange(Sender);
veri.kasa_islem.Insert;
veri.kasa_islem.Edit;
veri.kasa_islem.FieldByName('ISLEM').value:='ÇIKIŞ';
satırlarından kaynaklanıyor. buradaki veri.kasa_islem.Insert; olayını kaldırın. konumlandığınız kaydı edit etmeniz güncellemek için yeterli. kolay gelsinveri.kasa_islem.Insert;
veri.kasa_islem.Edit;