Öncelikle merhabalar ve hayırlı çalışmalar.
DbCombobox diye yaptığım aramada sorunuma uygun makale bulamadım. Sorunum şu.
Yaptığımız çalışmada bir form üzerinde dbedit, dbnavigator ve dbcomboboxlar var. yeni kayıt girdiğimizde dbcombobox larda seçimi klavye ile otomatik yaptığımızda seçim gerçekleşiyor. tab ile yolumuza devam ediyoruz. böle bir kaç tane dbcombobox ile işlemleri yapıyoru. veri giriş işi bitince navigator dan kaydet(insert) tuşuna basınca bazı combolar içindeki veriler kayboluyor. bazıları duruyor sebebini anlamadım. kayboluncada geriye dönüp baktığımızda kaydetmemiş oluyor.
misalen formda 4 adet dbcombobox var ise insert dediğimizde(navigatorda) bunlardan ikizinin içeriği kayboluyor ve kaydetmemiş oluyor. Comboboxların items sine baktığımda stringler duruyor.
bu hata nereden kaynaklanabilir?
birde DBcomboboxların otomatik yani misalen 'İ' harfine basınca otomatik olarak 'İ' ile başlayanları sırasıyla göstermesini istiyorum. Şimdiki durumda girmek istediğim verinin harflerini bulana kadar sırayla giriyorum. Misalen İstanbul İçin önce i sonra s gibi
hayırlı çalışmalar.
DBCombobox sorunu
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
olc, olmaması gereken bir durum.
1. Bir dataset koy (table, Query vs.)
2. dataset'in ayarlarını yap ve aktif et (Active := True)
3. Bir DataSource koy ve datasetine bağla
4. Daha sonra dbedit, dbcombo vs. koyup bu datasource'a bağla ve alanları seç.
5. dbnavigator koyup datasource'a bağla
6. çalıştır.
Böyle bir dene hata olmadan çalışman lazım.
kolay gelsin.
1. Bir dataset koy (table, Query vs.)
2. dataset'in ayarlarını yap ve aktif et (Active := True)
3. Bir DataSource koy ve datasetine bağla
4. Daha sonra dbedit, dbcombo vs. koyup bu datasource'a bağla ve alanları seç.
5. dbnavigator koyup datasource'a bağla
6. çalıştır.
Böyle bir dene hata olmadan çalışman lazım.
kolay gelsin.
Sorunuza bir cevap olmayacak ama db bileşenlerinden ziyade normal bileşenler kullanıp bunları kodlarla veri tabanına bağlamanız en sağlıklı çözüm olacaktır. DB bileşenleri genelde bu tür sorunları çıkarıyor. Onun yerine normal Edit, Normal ComboBox kullanıp arka plandaki işlemleri kodlarla halletmeniz daha verimli olacaktır. Hem bu tür çalışmalar daha fazla programlama mantığı kazandıracaktır. Yaptığımız programlarda db bileşenlerini sil baştan değiştirdiğimiz zamanlar biliyorum. Daha sonradan değiştirmek çok daha zor oluyor. Benim önerim eğer projeye yeni başladı iseniz henüz geç değilken herşeyni manuel halletmeniz olacaktır.
vesselam
vesselam
Mustafa abi
aynen dediğin gibi formlarım. Yeni öğrenme düzeyinde olduğum için formlarımı dbtable nesnesi ile tablolara bağlıyorum datasourcem var ve bileşenler sourceye bağlı ve tablodaki alanlara bağlı.
bağlantılarda bi sorunum yok comboları fare ile seçim yaparsam yine sorun yok bu işi combolara gelince klavyeden harf secerek yapmak istediğimde bazılarını yapıyor bazılarını temizleyip boş bırakıyor.
dediğiniz gibi sorun yapmamalı garip bişi bazılarında sorun yapması bazılarında yapmaması fareyle seçim yapınca sorun yapmaması klavye ile yapınca sorun yapması.
muskut abi
senin yolu da deniycem şimdilik elimde yapılmış tek form var geri dönüş kolay olucak ama kod yazmaya gelince takılacaz heral ama dediğin gibi geliştirme açısından çok yararlı olabilir.
teşekkür ve saygılarla
[/code]
aynen dediğin gibi formlarım. Yeni öğrenme düzeyinde olduğum için formlarımı dbtable nesnesi ile tablolara bağlıyorum datasourcem var ve bileşenler sourceye bağlı ve tablodaki alanlara bağlı.
bağlantılarda bi sorunum yok comboları fare ile seçim yaparsam yine sorun yok bu işi combolara gelince klavyeden harf secerek yapmak istediğimde bazılarını yapıyor bazılarını temizleyip boş bırakıyor.
dediğiniz gibi sorun yapmamalı garip bişi bazılarında sorun yapması bazılarında yapmaması fareyle seçim yapınca sorun yapmaması klavye ile yapınca sorun yapması.
muskut abi
senin yolu da deniycem şimdilik elimde yapılmış tek form var geri dönüş kolay olucak ama kod yazmaya gelince takılacaz heral ama dediğin gibi geliştirme açısından çok yararlı olabilir.
teşekkür ve saygılarla
[/code]
Re: DBCombobox sorunu
Selam,
DBComboBox kullandigim sahalarda veriyi kaydediyorum. Fakat post yaptiktan sonra DBComboBox taki bilgi siliniyor. Box in Style ozelligi csDropDownList, yani kullanici istedigi bilgiyi giremiyor. Style ozelligini csDropDown yaptigim zaman veri silinmiyor fakat bu durumda kullanici herhangi bir sey girebiliyor.
Bu noktada sebebin sahanin uzunlugu ile ilgili oldugunu farkettim. Ornegin sahada sadece evet hayir girilebiliyor. Fakat veritabanindaki uzunlugu 100 karakter. Post yaptiktan sonra veri gelirken 5 karakteri var sonraki karakterler bosluk olarak geliyor, itemsdeki satirlarla uyusmadigi icin ekrana yazmiyor.
Bu bosluk doldurulma olayi nasil engellenebilir ???
Ayni problemi bende yasiyorum. Kullandigim veritabani firebird, ibexpert personal edition ile tablolari olusturdum. Programda ise bir data module uzerinde ibdatabase,ibtransaction,ibdataset ve data sourcelerla veriye ulasiyorum.olc yazdı:misalen formda 4 adet dbcombobox var ise insert dediğimizde(navigatorda) bunlardan ikizinin içeriği kayboluyor ve kaydetmemiş oluyor. Comboboxların items sine baktığımda stringler duruyor.
bu hata nereden kaynaklanabilir?
DBComboBox kullandigim sahalarda veriyi kaydediyorum. Fakat post yaptiktan sonra DBComboBox taki bilgi siliniyor. Box in Style ozelligi csDropDownList, yani kullanici istedigi bilgiyi giremiyor. Style ozelligini csDropDown yaptigim zaman veri silinmiyor fakat bu durumda kullanici herhangi bir sey girebiliyor.
Bu noktada sebebin sahanin uzunlugu ile ilgili oldugunu farkettim. Ornegin sahada sadece evet hayir girilebiliyor. Fakat veritabanindaki uzunlugu 100 karakter. Post yaptiktan sonra veri gelirken 5 karakteri var sonraki karakterler bosluk olarak geliyor, itemsdeki satirlarla uyusmadigi icin ekrana yazmiyor.
Bu bosluk doldurulma olayi nasil engellenebilir ???