Geçici Table Üzerinden Değişiklik...

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
barol
Üye
Mesajlar: 49
Kayıt: 05 Oca 2005 04:29
Konum: İzmir

Geçici Table Üzerinden Değişiklik...

Mesaj gönderen barol »

Arkadaşlar Merhaba...
Benim sarunum şu.Benim "kişiler" ve "yakınları" adında iki tablom var."Kişiler" master vede "yakınları" da bunun detail'i.Benim yapmak istediğim ise Kişi bilgilerini düzenlerken bu kişiye ait birden fazla yakın hakkındaki bilgilerinde düzenlenebilmesi bir grid üzerinden olabilir.Ama değişiklikleri kaydet düğmesine basmadan da bu "yakınları" tablosunda yaptığım değişiklikler database'e işlenmesin.Ama grid üzerinden herhangi bi değişiklik yada bir kaydı sildiğimde bu direk databese'e işleniyor.Acaba değişiklikleri ben kaydet diyene kadar geçici olarak tutacak kaydete bastığımda da bu değişkilerin hepsini database'e işleyecek bi kod yok mu?
SQL server ve delphi ile boyle bi şeyin mümkün olduğunu biliyorum.Ama nasıl olduğunu bilmiyorum.Herhangi bir bilgisi ve fikri olan varsa lütfen yardım etsin.
Şimdiden Teşekkürler ve İyi çalışmalar...
Ölümden öteye köy yok!
Kullanıcı avatarı
muskut
Kıdemli Üye
Mesajlar: 1118
Kayıt: 22 Ara 2003 09:50
Konum: Sandalyemden
İletişim:

Mesaj gönderen muskut »

Bunun için kullandığın tablonun CachedUpdates özelliğini TRUE yapman lazım. Bunu True yaptıktan sonra diyelim ki 2 tane buton ekledin; Biri btnKaydet, biride btnIptal. Bunlarında OnClick olaylarına şunları yazabilirsin;

(tablomun adı : OgrTable)
procedure TForm1.btnKaydetClick(Sender: TObject);
begin
OgrTable.ApplyUpdates;
end;
procedure TForm1.btnIptalClick(Sender: TObject);
begin
OgrTable.CancelUpdates;
end;
CachedUpdates özelliği ile girmiş olduğun veriler bir tampon bellekte tutulurlar. Bundan sonra bu verileri ya işleyebilir yada iptal edebilirsin. ApplyUpdates veya CommitUpdates ile verilerini kaydedebilir veya CancelUpdates ile değişiklikleri iptal edebilirsin.

kolaygelsin.
Kullanıcı avatarı
barol
Üye
Mesajlar: 49
Kayıt: 05 Oca 2005 04:29
Konum: İzmir

Mesaj gönderen barol »

muskut ilgilendigin için çok teşekkür ederim yanlız bi sorunum daha var.Senin dediğin CachedUpdates özelliği BDE de mevcut ama Ben ADO ile database bağlantısı yapıyorum ve ADO da CachedUpdates diye bi özellik bulamadım.Acaba ADO bağlantısı ile bu sorun nasıl giderilebilinir.Bu konuda bilgisi olan arkadaşlar varsa yardımlarını bekliyorum.
Ölümden öteye köy yok!
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

AdoTable in LockType proprtys ini ltBatchOptimistic olarak ayarla. Kaydet butonunada AdoTable1.UpdateBatch(arAll); gir.


Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Cevapla