s.a. arkadaşlar;
forumda daha önce buna benzer soru sorulmuş ama cevap alınamamış..
benim master/detail olan 3 tablom var.. kasa bölümündeki formumda bulunan dbgrid'e müşteri formundaki müşteri adı ve müşteri soyadını, arıza tablosundaki tarih alanını ve kasa tablosundaki mevcut_kasa alanlarını listelemek istiyorum.. yardımcı veya fikri olanlar varsa şimdiden çok teşekkür ederim.. Allah hepinizden razı olsun.
az önce okudum ve çok hoşuma gitti: "Keskin bıçak olmak için çok çekiç darbesi yemek gerekir."
3 tablo'dan dbgrid'e istenilen alanları listeleme?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Bunun için SQL kullanman lazım. Tabloları uygun şartlar ile birleştirerek yapacaksın.
gibi sana örnek teşkil edebilecek bir SQL sorgusu bu şekilde. Burada musteri tablosundan ADI ve SOYADI alınıyor, kasa tablosundan BAKIYE alanı ve ariza tablosundan da TARIH.
INNER JOIN ile 2 tablo daha uygun şartlar ile birleştiriliyor. Tabii ki sen tablolar arasındaki ilişkiyi nasıl kurmuşsan ON'dan sonrasını o şarta göre kurmalısın. Ben ilişkinin musteri.id ve MUSTERI_ID alanları arasında olduğunu varsaydım.
Daha sonra veritabanına göre uygun bileşenleri kullanarak, TQuery, TIBQuery, TAdoQuery vs.. bu SQL'i Select SQL property'sine yazıp aynen bir tablo gibi kullanabilirsin.
Kod: Tümünü seç
SELECT musteri.ADI, musteri.SOYADI, ariza.TARIH, kasa.BAKIYE
FROM musteri
INNER JOIN ariza ON ariza.MUSTERI_ID = musteri.ID
INNER JOIN kasa ON kasa.MUSTERI_ID = musteri.ID
INNER JOIN ile 2 tablo daha uygun şartlar ile birleştiriliyor. Tabii ki sen tablolar arasındaki ilişkiyi nasıl kurmuşsan ON'dan sonrasını o şarta göre kurmalısın. Ben ilişkinin musteri.id ve MUSTERI_ID alanları arasında olduğunu varsaydım.
Daha sonra veritabanına göre uygun bileşenleri kullanarak, TQuery, TIBQuery, TAdoQuery vs.. bu SQL'i Select SQL property'sine yazıp aynen bir tablo gibi kullanabilirsin.
arkadaşım verdiğin kodları yaptım yalnız hata veriyo..
formuma BDE yaprağından Query yerleştirdim.. Obj.İns.'dan SQL kısmına girip;
select KASA_TABLO.GELIR,KASA_TABLO.GIDER,MUSTERI_TABLO.MUSTERI_ADI,MUSTERI_TABLO.MUSTERI_SOYADI,ARIZA_TABLO.ARIZA_TARIHI from KASA_TABLO yazdım ama olmadı.. eksik veya yanlış varmı yardım edersen sevinirim.. ilgin için Allah razı olsun.
formuma BDE yaprağından Query yerleştirdim.. Obj.İns.'dan SQL kısmına girip;
select KASA_TABLO.GELIR,KASA_TABLO.GIDER,MUSTERI_TABLO.MUSTERI_ADI,MUSTERI_TABLO.MUSTERI_SOYADI,ARIZA_TABLO.ARIZA_TARIHI from KASA_TABLO yazdım ama olmadı.. eksik veya yanlış varmı yardım edersen sevinirim.. ilgin için Allah razı olsun.