dbGrid'in bir hücresinde birden faza alana ait veri gösterme

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
YeniÜye
Üye
Mesajlar: 9
Kayıt: 18 Şub 2019 12:34

dbGrid'in bir hücresinde birden faza alana ait veri gösterme

Mesaj gönderen YeniÜye »

Merhabalar;

Bire çok ilişkili iki tablom var. Detay tablosunda, master tablodaki her kayda karşılık en fazla 2-3 kayıt olduğu için, bir gridde, her ikisini birden tek satırda gösterebilirsem daha derli toplu olur diye düşündüm. Örneğin bir adres defteri gibi düşünün. Çoğu kişinin bir, nadiren iki ya da üç telefon hattı var. Dolayısıyla grid'in bir hücresinde, telefonları yan yana, örneğin virgülle ya da noktalı virgülle ayrılmış şekilde gösterebilir miyiz?

dbgrid'e eklediğim bir sütunu ondrawcolumncell'e yazdığım bir döngü ile doldurmak istedim ama tüm satırlara aynı veri doldu :)

Tüm yanıtlar için şimdiden teşekkürler.

Sağlıklı günler.

ertank
Üye
Mesajlar: 1315
Kayıt: 12 Eyl 2015 12:45

Re: dbGrid'in bir hücresinde birden faza alana ait veri gösterme

Mesaj gönderen ertank »

Merhaba,

İstediğinizi DBGrid ile yapmanız mümkün değil. Ancak master-detail query yerine tek bir query içinde hem master hem de detail *kolonları* eşleştirerek listeleyebilirsiniz.

3ddark
Üye
Mesajlar: 85
Kayıt: 14 Eyl 2010 10:55
Konum: İstanbul

Re: dbGrid'in bir hücresinde birden faza alana ait veri gösterme

Mesaj gönderen 3ddark »

Mümkün sql sorgunuzu değiştirmelisiniz.
STRING_AGG araştırın.

Kod: Tümünü seç

Select a.adres, a.isim, a.sehir, (Select STRING_AGG(telefon, ',') From adres_tel as at
Where at.adres_id=a.id) From adres as a Order bu a.id
PostgreSQL - Delphi - Linux :!:

Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2194
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: dbGrid'in bir hücresinde birden faza alana ait veri gösterme

Mesaj gönderen freeman35 »

ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!

Cevapla