Query de Çift Tıklayınca

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
BLuE_ALoNE
Üye
Mesajlar: 47
Kayıt: 26 Eki 2006 08:30

Query de Çift Tıklayınca

Mesaj gönderen BLuE_ALoNE »

merhaba arkadaşlar

Queryde veya table de bildiğiniz üzere üzerine çift tıklayıp sonra da CTRL+ A yapınca bağlı olduğu veritabanındaki alanları beyaz pencereye getirir ve artık Query1Firmaadi.text diye bir kullanım aktif olur. ben ise şöyle birşey yapmak istiyorum.

Query i bir formda sabit kullanıp isteğe göre onu çeşitli datasetlere bağlayıp SQL stringini de yazıp en son olarak o üzerine çift tıklayıp alanları eklediğimiz işlemi kod olarak yapmak istiyorum. yardımlarınızı bekliyorum. şimdiden çok teşekkür ederim.
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Mesaj gönderen vkamadan »

Merhaba,
Query yada table, siz alanları eklemesenizde alanları çeşitli şekillerde dinamik olarak kullanıma sokar Örneğin, Query.FieldByName('ulasilacak_alanadi').AsString şeklinde yada alanın veri tabanındaki yada sorgudaki indisini biliyorsunuz Query.Fields[0].AsString gibi indis numarasıyla erişip işlemler yapabilirsiniz.
İyi çalışamalar.
Volkan KAMADAN
www.polisoft.com.tr
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

@BLuE_ALoNE yazdı:...ve artık Query1Firmaadi.text diye bir kullanım aktif olur
ve devamında @BLuE_ALoNE yazdı:işlemi kod olarak yapmak istiyorum
- Başat husus, bir Query (sorgu) yapıp Active ettiğin zaman zaten ilgili Query'de SELECT ile seçtiğin alan isimleri kadar alan tanımlı varsayılır ve AddAll demişcesine kendiliğinden bu satırda belirtilen alanlar eklenmiş olur. Eklemek istediğin başka ek bir alan adı varsa ve onu SELECT sorguya eklememişsen Calculated alan hariç, var olmayan bir alanı bu sorgunun Table-FieldList'ine ekleyemez, sonuç alamazsın.

- Diğer husus ise Query1Firmaadi.text şeklinde bir kullanımdan ziyade Query1.FieldByName( 'FirmaAdi' ).Text şeklinde bir yapıyla istenen alanı değerlendirmeye almanız daha doğru olur. Hem aynı işi yapar hem de dinamizmi yitirmemiş, bu bahsettiğin yöntem için ek arayışa girmemiş olursunuz.
Resim
Resim ....Resim
BLuE_ALoNE
Üye
Mesajlar: 47
Kayıt: 26 Eki 2006 08:30

Tamam ama yapmak istediğim şu

Mesaj gönderen BLuE_ALoNE »

arkadaşlar öncelikle teşekkür ederim. olayı tam olarak anlatayım.

bir rapor ekranı yapacağım cxgrid kullanıyorum. datasource ile bağladığım Querye örneğin Select Firma As [Firma Adı], Adres [Firma Adresi] From FirmaTbl gibi bir kod yazıp open dediğimde cxgridin bu alanları otomatik olarak listelemesini istiyorum ama bunu bir türlü yapamadım. cxgrid bu kolonları göstermiyor. acaba yukarıda bahsettiğim şeyi yaparsam çözebilir miyim diye düşündüm ama daha farklı bir yöntem varsa da olabilir.
yani tam olarak yapmak istediğim sabit bir formdan tüm raporları listelemek. sadece Querye gerekli kodu yazıp open yaptığımda cxgrid de o kolonların listelenmesini istiyorum.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

@BLuE_ALoNE yazdı:cxgrid bu kolonları göstermiyor
- cxgrid'i de aynı DataSource'a bağlamazsan, cxgrid hangi sorguyu listeye yansıtacağını bilemez. Fikrimce, dalgınlık eseri bu atamayı yapmayı unutmuş olabilirsin.
Resim
Resim ....Resim
BLuE_ALoNE
Üye
Mesajlar: 47
Kayıt: 26 Eki 2006 08:30

Sorun Çözüldü

Mesaj gönderen BLuE_ALoNE »

merhaba arkadaşlar yardımcı olmak isteyen arkadaşlara tekrar teşekkür ederim. sorunu yine forumda gezerken bulduğum kod sayesinde çözdüm. sizinle paylaşmak istiyorum. bir butonun click olayına yazdım.

Query1.Open;
cxgrid1dbtableView1.DataController.CreateAllItems;
cxgrid1dbtableView1.ViewData;

Kolay Gele...
Kullanıcı avatarı
nitro
Üye
Mesajlar: 1112
Kayıt: 23 Ağu 2004 01:18
Konum: Çanakkale
İletişim:

Mesaj gönderen nitro »

güzel kodmuş, Makaleler ve ipucu kısmına eklemek lazım.
Altın anhtar kıymetinde bir bilgi bence. :)
Cevapla