TDataSource - OnDataChange

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
ozn
Üye
Mesajlar: 20
Kayıt: 17 Haz 2003 02:10
Konum: Ankara

TDataSource - OnDataChange

Mesaj gönderen ozn »

Merhaba arkadaşlar;

Bu TDataSource nesnesinin OnDataChange olayı nezaman gerçekleşiyor.
Tam olarak anlayamadım. Tablodaki cursor ün yeri değiştiği zaman mı?? Yoksa aktif kayıtta değişiklik olduğu zaman mı??
Sorudaki asıl amacım ;
Yaptığım programda hem veri bilinçli denetimler var hemde standart VCL bileşenler ve bunların hepsi aynı tablonun verisini yansıtıyor. Ama cursor değiştiği zaman (yani sadece aktif kayıt değiştiği zaman) VCL bileşenlerede bunu yasıtmak sorun oluyor. OnDataChange olayında gerekli kodları yazıyorum.Ama bazen bu olay prosedürüne 3-4 kere giriyor ve boşuna zaman harcamış oluyorum. Veri Bilinçli denetimlerde kayıt değiştiği zamanda OnDataChange olayına giriyor Cursor değiştiğinde de... Bu konuda bir öneriniz varmı? Acaba BeforeScroll olayında mı kodları yazmam gerek... yada başka yerde mi :roll:.Veri tabanları çok sıkıcı iş...
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2356
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Mesaj gönderen freeman35 »

Senin istediğin nedir ? eğer cursor yani row değiştiğinde bir tetikleme istiyorsan, Ben Primary key ye bağlı bir DBEdit koyuyorum visible ını false yapıp bunun onchange ini kullanıyorum. OnScroll lar çok saçmalıyor, şimdiye kadar bulduğum en sağlam yöntem bu. Eğer kayıt işleminden sonra işlem yapmaksa Afterpost u kullanabilirsin
Kolay gele
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 !!!
Kullanıcı avatarı
ozn
Üye
Mesajlar: 20
Kayıt: 17 Haz 2003 02:10
Konum: Ankara

Mesaj gönderen ozn »

Merhaba freeman abi;
Söylediğin yöntem gayet mantıklı.Bunu bi deniyceem.Büyük ihtimal sorunumu çözer. Ama yinede OnScroll olaylarıyla bunu yapmaya çalışacağım. Kesin kararım DataChange olayını kullanmamak. Çünkü ne zaman oraya gireceği belli olmuyoo.
Bide CachedUpdates yöntemini kullanmamı tavsiye edermisin ??

Saolasın ağa.
Cevapla