cxgrid dbloopupcombobox kullanımı
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
cxgrid dbloopupcombobox kullanımı
CxGrid içerisinde bir sahadaki bilgileri dblookupcombobox ile alıyorum. Sorunum şu. Id,adsoyad,tckimlik sahalarını açılan bir combobox içerisinde görüyorum ve adsoyadı buradan seçiyorum. Seçtiğim adsoyad geliyor ama aynı adsoyad dan başka bir tane daha varsa o gelmiyor. İlk kayıt geliyor. Adsoyadı seçip Id değerine göre getirtebilsem sorun çözülecek. Bura da seçtiğim adsoyada göre listenin bağlı olduğu sicil değerlerine konumlanma yapamıyorum. Bu sorunu nasıl hallederim. Listeden seçtiğim kayıta ait bilglerin gelmesini istiyorum seçimi de adsoyada göre yapmak istiyorum. Delphi7 ve firebird 2.0 kullanıyorum. Teşekkürler.
Re: cxgrid dbloopupcombobox kullanımı
lookup field kısmından id, lookup value kısmında adsoyad seçmeniz lazım sanırım.
-
- Üye
- Mesajlar: 135
- Kayıt: 14 Kas 2005 12:24
Re: cxgrid dbloopupcombobox kullanımı
Ben lookup işlemlerinde genellikle TcxDBExtLookupComboBox bileşenini kullanırım. Size de tavsiye ederim.
Bir örnek ile açıklayalım dilerseniz.
Örneğin il ve ilçeleri aldığımız iki tablo düşünelim. İl tablosu master ilçe tablosu detail olsun.
Herhangi bir cxGrid de birden fazla view oluşturun. Ve oluşturulan bu viewlerden birine il birine ilçe tablosunu aktarın.
Viewlerin text(*.dfm) kodları aşağıda. Siz kendinize göre düzenleyin.
Artık bu verileri istediğiniz yerde kullanabilirsiniz.
Bileşenin özelliklerini de aşağıdaki şekilde ayarlayalım.
iyi çalışmalar.
Bir örnek ile açıklayalım dilerseniz.
Örneğin il ve ilçeleri aldığımız iki tablo düşünelim. İl tablosu master ilçe tablosu detail olsun.
Herhangi bir cxGrid de birden fazla view oluşturun. Ve oluşturulan bu viewlerden birine il birine ilçe tablosunu aktarın.
Viewlerin text(*.dfm) kodları aşağıda. Siz kendinize göre düzenleyin.
Kod: Tümünü seç
object cxGridviewIl: TcxGridDBTableView
DataController.DataSource = FrmGlobal.DsIl
DataController.KeyFieldNames = 'IDNO'
object cxGridviewIlIDNO: TcxGridDBColumn
DataBinding.FieldName = 'IDNO'
Visible = False
end
object cxGridviewIlADI: TcxGridDBColumn
DataBinding.FieldName = 'ADI'
end
end
object cxGrid2Level1: TcxGridLevel
GridView = cxGridviewIl
end
object cxGridviewIlce: TcxGridDBTableView
DataController.DataSource = FrmGlobal.DsIlce
DataController.KeyFieldNames = 'DIDNO'
object cxGridviewIlceDIDNO: TcxGridDBColumn
DataBinding.FieldName = 'DIDNO'
Visible = False
end
object cxGridviewIlceADI: TcxGridDBColumn
DataBinding.FieldName = 'ADI'
end
end
object cxGrid3Level1: TcxGridLevel
GridView = cxGridviewIlce
end
Bileşenin özelliklerini de aşağıdaki şekilde ayarlayalım.
Kod: Tümünü seç
object cxDBExtLookupComboBox2: TcxDBExtLookupComboBox
Left = 120
Top = 159
AutoSize = False
DataBinding.DataField = 'ILCE'
DataBinding.DataSource = FrmGlobal.DsTanik
Properties.View = cxGridviewIlce
Properties.KeyFieldNames = DID'NO'
Properties.ListFieldItem = cxGridviewIlceADI
TabOrder = 9
Height = 24
Width = 145
end
object cxDBExtLookupComboBox1: TcxDBExtLookupComboBox
Left = 120
Top = 132
AutoSize = False
DataBinding.DataField = 'IL'
DataBinding.DataSource = FrmGlobal.DsTanik
Properties.View = cxGridviewIl
Properties.KeyFieldNames = 'IDNO'
Properties.ListFieldItem = cxGridviewIlADI
TabOrder = 10
Height = 24
Width = 145
end