Arkadaşlar umarım yanlış yere yazmıyorumdur sorunumu. Sorun şu. cxgrid kullanıyorum. cxgrid içinde iki adet lookupcombobox kullanıyorum. Sahalar şunlar 1.saha iladı 2. saha ilçe adı
1.lookupcomboboxın verileri il tableından alıyor. Burda sorun yok. İkinci table ilce tableı. Bu table master table olan il tableına bağlı. Buna göre o ile bağlı ilcenin gelmesi lazım. Ancak 1.lookupcomboboxtan ili seçmeme rağmen ilçeler değişmiyor. Yaptığım işlemleri söyleyeyim. cxgridin properties i lookupcombobox. List source İl tablosu. List field ı iladi. Keyfieldi iladi.
İlçe içinde.
Listsource ilce tablosu. Listfield ilceadi keyfield ilceadi.
immediadte post u true yapıyorum. İli seçince buna bağlı ilçeler gelmiyor.
Fakat klasik dbgrid de yaptımmı master-detail çalışıyor sorun yok. cxgrid de olmuyor.
Şunu denedim. ilin yazılı olduğu lookupcomboboxın oncloseup ına tableil.locate('ILADI',ilinadi,[]) komutuyla o kayda git diyorum. Gidiyor. O zaman ilçeler geliyor. Post edip ikinci kayda geçtiğimde ili seçince bu sefer yukarıdaki yani birinci kayıttaki ilçe siliniyor. İkinci kayıtta yaptığım birinci kaydı da etkiliyor. Bu sorunu nasıl çözerim. Forumda arama yaptım. Ancak benim sorunumu çözecek bir yöntem göremedim. Lüften bu konuda yardımcı olun. İli seçince otomatik olarak detail den gelen bilgiler görünsün ve ikinci kayda geçince etkilemesin. Teşekkürler.
cxGrid lookupcombobox veritabanı bağlantısı
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
malesef help te bulamadım
Helpde bahsettiklerinin benim sorunumla ilgisi yok. Yalnız bu forumda benzeri bir soruna rastlamıştım. Ama o sorunun çözümü de benim sorunuma çare olmadı. Master-detail yerine query kullandım yine olmadı. Yeni girilen kayda göre önceki girilen kayıtta da değişiklik oluyor. Bir türlü çözemedim.
sorunun kaynağını buldum ama çözümünü bulamadım.
Sorunun kaynağı belli. cxGrid de iki sahada da lookupcombobox olduğu için seçilenleri tableda gösteriyor. Yani post ediyor, ama cxgrid üzerinde en son seçilen il neyse onun ilçelerini gösteriyor. Ama benim istediğim. Bir önceki kayıtta seçilenler orada kalsın ve bunu kullanıcı görsün. Aşağıda hangi il seçilirse seçilsin bu bir önceki girilen kaydı görüntüsünü etkilemesin. Umarım bu sorun çözülür buna çok ihtiyacım var. Yoksa master-setail table kaldırıp tek lookupcomboboxta bütün ilkodu,iladi ve ilçeadını birlikte yazacağım. İlgilenen herkese teşekkürler.
Şöyle bir yöntem işini görecektir:
Master-Detail bağlantıyı kaldır. İlller ve İlçeler tabaloların tamamını göstersin. Aksi halde cxGrid'de tüm ilçeleri göremezsin.
Bilahare LookupComboBox'ların 2 adet eventine şunlara benzer kod yaz:
İyi çalışmalar.
Master-Detail bağlantıyı kaldır. İlller ve İlçeler tabaloların tamamını göstersin. Aksi halde cxGrid'de tüm ilçeleri göremezsin.
Bilahare LookupComboBox'ların 2 adet eventine şunlara benzer kod yaz:
Kod: Tümünü seç
procedure TForm1.cxGrid1DBTableView1ILCE_SIRA_NOPropertiesInitPopup(
Sender: TObject);
begin
if Table3IL_SIRA_NO.AsString = '' then
Table2.CancelRange
else
Table2.SetRange([Table3IL_SIRA_NO.AsInteger], [Table3IL_SIRA_NO.AsInteger]);
end;
procedure TForm1.cxGrid1DBTableView1ILCE_SIRA_NOPropertiesCloseUp(
Sender: TObject);
begin
Table2.CancelRange;
end;
teşekkürler
Dediğiniz yöntemle zaten yapmıştım. Ama prof. yöntem böyle olur diye uğraşıyordum. Çok teşekkür ederim ilginiz için.