dbcombobox dan çıkınca seçili değer siliiyor.

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
cfyasar
Üye
Mesajlar: 169
Kayıt: 31 Oca 2005 05:18
Konum: izmir

dbcombobox dan çıkınca seçili değer siliiyor.

Mesaj gönderen cfyasar »

Veritabanına veri girişi çin bir bir sayfa hazırladım. Sayfayı açmak için kullandığım butonun onclick koduna "DataModule3.IBDataset1.insert;" satırını yazdım. Böylece kayıt giriş sayfamdaki datacontrol bileşenleri boş geliyor. Veri girişinde kullandığım dbcombobox itemlerını bir txt dosyasından alıyorum. Kayıt girişi için bu comboboxtan bir değer seçiyorum. Başka bir kontrole değer girmek için tıkladığımda comboboxtaki seçtiğim değer siliniyor. ib expertten tabloya kayıtda bakıyom o alana kayıt yapılmadığını görüyorum. DBCombobox ın style tipini değiştirdim ama hala sorun var. Neden olabiliceğini bilen var mı?
öğrenmek, zorlukları yenmektir.
Kullanıcı avatarı
macsonfor
Üye
Mesajlar: 118
Kayıt: 14 Haz 2004 04:59

Mesaj gönderen macsonfor »

Belki tam anlayamadım ama keşke birazdaha açıklayıcı olsaydınız...

Combobox itemlerini neden txt dosyasına alıyorsununuz bunu anlayamadım. Birde ben olsam SQL ile işlem yaptırmayı tercih ederdim.

İşlem yaptığınız kodlarınızı yazarsanız daha güzel olacak...
Bilgi Paylaşıldıkça Çoğalır
Kullanıcı avatarı
cfyasar
Üye
Mesajlar: 169
Kayıt: 31 Oca 2005 05:18
Konum: izmir

Mesaj gönderen cfyasar »

combobox itemleri 20 kadar. müşteri buna ileriki bir zamanda bazı eklemeler yapmak isteyebilir diye txt dosyasında tutuyorum. 20 tane seçenek içinde bi table yapmak zor geldi :) program açılışında txt dosyasını okuyup bunları dbcombobox itemlarına atıyorum.
öğrenmek, zorlukları yenmektir.
ulu coder
Üye
Mesajlar: 838
Kayıt: 01 Nis 2006 06:46
Konum: Ankara

Mesaj gönderen ulu coder »

Nedenini anlayamasam da şöyle bir çözüm önerebilirim;
DB değil normal cb kullanın.
CB'nin OnChange'inde ilgili alana cb'deki değeri verin:

Kod: Tümünü seç

DataModule3.IBDataset1.FieldByName('Hede').AsString := ComboBox1.Text;
gibi.
Ya da bunu CB'nin OnChange'inde değil de Post işleminden hemen önce yapabilirsiniz.

Kolay gele...
Kullanıcı avatarı
cfyasar
Üye
Mesajlar: 169
Kayıt: 31 Oca 2005 05:18
Konum: izmir

Mesaj gönderen cfyasar »

bende nedenini bulamadım ama söylediğin gibi bir yöntemle normal combobox kullanıp seçilen datayı veritabanına atıyom.
öğrenmek, zorlukları yenmektir.
Kullanıcı avatarı
nitro
Üye
Mesajlar: 1112
Kayıt: 23 Ağu 2004 01:18
Konum: Çanakkale
İletişim:

Mesaj gönderen nitro »

DataModule3.IBDataset1.insert
yerine DataModule3.IBDataset1.append kullanın, ve söz konusu itemlerin txt dosyasından çekilme olayını bu koddan önce yap, yani önce dbcombobox'ı doldurun, sonra kaydetmek için tabloyu açın bence.
kolay gelsin.
Cevapla