Cursor Kullanmadan Dataset Sütunu Toplama

Diğer veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
aydin.suleyman
Üye
Mesajlar: 2
Kayıt: 02 Eyl 2018 10:42

Cursor Kullanmadan Dataset Sütunu Toplama

Mesaj gönderen aydin.suleyman »

Merhaba arkadaşlar;

ADO bileşenleri ile Access veritabanı üzerinde çalışıyorum.
SQL kullanmadan Dataset'teki sütunun toplamına ihtiyacım var ancak, toplamı First, Next ile gezmeden almam gerekiyor. Bu şekilde istemediğim olaylar tetikleniyor.
Datasetteki veriye dizi gibi ulaşmanın imkanı var mıdır ?
Veya Başka bir dataset tanımlanıp kaynak veri olarak toplamını alacağım dataseti nasıl gösterebilirim ? Yani yeni bir dataset tanımlayıp DBGrid'in bağlı olduğu datasetin olayları tetiklenmeden sadece verilere ulaşmam gerekiyor.

Lütfen yardımcı olabilir misiniz ?
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2355
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: Cursor Kullanmadan Dataset Sütunu Toplama

Mesaj gönderen freeman35 »

Hem sql kullanmayacaksın, hemde cursor, bu ellerin ayakların bir yere bağlıyken dünya turuna çıkabilir miyim? diye sormak.
DisableControl ü incele, hangi eventler tetikleniyor? İkinci bir query ile sonuç alırsın.
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
aydin.suleyman
Üye
Mesajlar: 2
Kayıt: 02 Eyl 2018 10:42

Re: Cursor Kullanmadan Dataset Sütunu Toplama

Mesaj gönderen aydin.suleyman »

Evet biraz öyle gibi görünüyor ama bir yolu vardır diye düşündüm :)

Kısaca; Master tablom var, detay tablomda ücret girişi yapılıyor ve giriş değiştikçe master tablodaki fiş toplamı alanının değişmesi gerekiyor.

Detay tablodaki ücret alanına bilgi girişi yapılırken field'den çıkıldığında master tablodaki fiş toplamı değerinin detay tablodaki append veya edit modunu veya başka herhangi bir şeyi etkilemeden değişmesini sağlamaya çalışıyorum.
SQL ile master tabloyu yeni baştan oluşturuluyor ve detay tablodaki master bağlantısı bozuluyor, haliyle hata oluşuyor. Disablecontrols denedim ama dediğim gibi giriş yapılırkenki durumu etkiliyor.
Belki master'a calculatedfield ekleyip detay'daki field'in onchange olayında master'daki oncalcfield olayını tetikletip sql ile detay tablodan toplamları alabilirim diye düşünüyorum. Transaction commit edilmeden hatalı veri almazsam istediğim olacaktır diye düşünüyorum.
Akşam deneyeceğim artık.
Biraz karışık oldu galiba ama umarım ifade edebilmişimdir.
emrahgs
Üye
Mesajlar: 110
Kayıt: 08 Tem 2008 06:25
Konum: Antalya

Re: Cursor Kullanmadan Dataset Sütunu Toplama

Mesaj gönderen emrahgs »

hocam dataseti clonelayıp
orda dönseniz
Kullanıcı avatarı
KoPilot
Üye
Mesajlar: 185
Kayıt: 05 Eki 2007 08:02

Re: Cursor Kullanmadan Dataset Sütunu Toplama

Mesaj gönderen KoPilot »

aydin.suleyman yazdı: 05 Eyl 2018 11:47 Evet biraz öyle gibi görünüyor ama bir yolu vardır diye düşündüm :)

Kısaca; Master tablom var, detay tablomda ücret girişi yapılıyor ve giriş değiştikçe master tablodaki fiş toplamı alanının değişmesi gerekiyor.

Detay tablodaki ücret alanına bilgi girişi yapılırken field'den çıkıldığında master tablodaki fiş toplamı değerinin detay tablodaki append veya edit modunu veya başka herhangi bir şeyi etkilemeden değişmesini sağlamaya çalışıyorum.
SQL ile master tabloyu yeni baştan oluşturuluyor ve detay tablodaki master bağlantısı bozuluyor, haliyle hata oluşuyor. Disablecontrols denedim ama dediğim gibi giriş yapılırkenki durumu etkiliyor.
Belki master'a calculatedfield ekleyip detay'daki field'in onchange olayında master'daki oncalcfield olayını tetikletip sql ile detay tablodan toplamları alabilirim diye düşünüyorum. Transaction commit edilmeden hatalı veri almazsam istediğim olacaktır diye düşünüyorum.
Akşam deneyeceğim artık.
Biraz karışık oldu galiba ama umarım ifade edebilmişimdir.
Anladığım kadarıyla yapınızı yanlış kurmuşsunuz. Bu bahsettiğiniz olay o kadar zor değil ve ayrıca bu yapı ilerde başınıza dert açabilir.
Dosyalarınızı kendi bulutunuza yedekleyin. Yandex Disk
Eyvallah..
Cevapla