S.A.
veritabanı FB 1.5
arkadaşlar fatura alanını gözönüne alabilirsiniz. bu tipteki bir yapıda miktar ve fiyat alanları değiştiğinde tutar hanesinin hesaplanması ve hemen akabinde tutar toplamının belirlenmesi. ben bu işi 2 adet dataset ile çözdüm ancak sum işlemi sadece form açılışlarında gerçekleşiyor. DBgriddeki değerler değiştiğinde select sorgusunu yapmama rağmen sum işlemi gerçekleşmiyor. tabi bu işlemin gerçekleşmemesini fb nin anında kayıtları vt ye yazmaması olarak düşünübiliriz. ancak miktar ve fiyat field lerinin oncahnge olaylarına önce transaction commitretaining kodunu hemen arkasına da sum sorgusunu yazıyorum ancak bişey değişmiyor. bu işlemi kalasik top := top + IBDataset1Fiyat.ascurrency işlemi ile yapıyorum ancak kayıtların milyon hanede olduğunu düşünürsek bu işlemin zaman açısından sorun çıkaracağı kanatindeyim. field lerdeki değişim sonucunu sum ile nasıl sağlarız.
sum sorgusu
merhaba;
Böyle olaylarda kademeli olarak gitsen daha iyi olur.BreakPoint koyarakta yapabilirsin.Yani ilk önce değişikliğin veritabanına uygulandığından emin olmalısın,gerçekten kayıt yapıyor mu.Ibexpert'e bakarak öğrenebilirsin vs. .Toplamı grid de gösteriyorsan,sorgu çektiğin dataset'i close,open yapmalısın. Yani gride IBQuery1 bağlı diyelim..
Bu aşamalardan sonra ,sorun çıkmasının hiç bir nedeni yok(M$ durumları hariç) 
iyi günler...
Böyle olaylarda kademeli olarak gitsen daha iyi olur.BreakPoint koyarakta yapabilirsin.Yani ilk önce değişikliğin veritabanına uygulandığından emin olmalısın,gerçekten kayıt yapıyor mu.Ibexpert'e bakarak öğrenebilirsin vs. .Toplamı grid de gösteriyorsan,sorgu çektiğin dataset'i close,open yapmalısın. Yani gride IBQuery1 bağlı diyelim..
Kod: Tümünü seç
With IBquery1 do
begin
Sql.Clear;
SQL.Add('select Sum(Tutar) as ToplamTutar from TabloAdi');
Close;
Prepare;
Open;
Label1.Caption:=IBQuery1.FieldByName('toplamTutar').AsFloat;
//Grid kullanmıyorsan direk bir labele de aldırabilirsin...
end;

iyi günler...
kardeş dediğin işlemler gerçekleşiyor zaten elbette vt ye kayıt yapıyor. ancak 2 datasetin aynı tablelere bağlanması bu aşamada sorun çıkarıyor olabilir. close open metotlarıda bir işe yaramadı. kaldıki select ifadedisinin tekrar yazılması esnasında zaten close open oluyor. bence de anlamsız ancak mutlaka bir sebebi vardır diye düşünüyorum.
Zengin
Merhaba,
Siz bu alanları Calc alanı olarak mı tanımladınız acaba
ama belirttiğiniz şekilde böyle tanımlanmamış yinede belirteyim dedim.
bence sum fonk. düzgün çalışmaması için bir neden gözükmüyor.
sorun u aşama aşama çözmenizde fayda var.
Siz bu alanları Calc alanı olarak mı tanımladınız acaba

ama belirttiğiniz şekilde böyle tanımlanmamış yinede belirteyim dedim.
bence sum fonk. düzgün çalışmaması için bir neden gözükmüyor.
sorun u aşama aşama çözmenizde fayda var.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
_________________