2 ayrı tablodan veri çekmek ve dbgridde listelemek...
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 15
- Kayıt: 08 Haz 2005 12:26
2 ayrı tablodan veri çekmek ve dbgridde listelemek...
Arkadaşlar s.a;
site aidat programı yazıyorum.ve borçlu üyelerin kayıtno,adı,soyadını 1. tablodan
donem aıdatlarını da 2. tablodan çekip dbgridde birleştirmek istiyorum.
1. tabloda
kayıtno,adı,soyadı alanlarım var.
2.tabloda
kayıtno,donem1,donem2 alanlarım var.
dbgridde
kayıtno adı soyadı 1.donem aidat 2.donem aidat
1 ali veli 10 null
gibi görünmesini istiyorum.(odenmeyen donem aidatını null atıyorum.)
ve buna göre şu mantığı kurdum. borcu olan alanları is null ile listeliyorum.
ama ad ve soyad diğer tablodan olduğu için birtürlü aynı dbgridde birleştiremedim.
yardımlarınızı rica ediyorum.Saygılarımla...
site aidat programı yazıyorum.ve borçlu üyelerin kayıtno,adı,soyadını 1. tablodan
donem aıdatlarını da 2. tablodan çekip dbgridde birleştirmek istiyorum.
1. tabloda
kayıtno,adı,soyadı alanlarım var.
2.tabloda
kayıtno,donem1,donem2 alanlarım var.
dbgridde
kayıtno adı soyadı 1.donem aidat 2.donem aidat
1 ali veli 10 null
gibi görünmesini istiyorum.(odenmeyen donem aidatını null atıyorum.)
ve buna göre şu mantığı kurdum. borcu olan alanları is null ile listeliyorum.
ama ad ve soyad diğer tablodan olduğu için birtürlü aynı dbgridde birleştiremedim.
yardımlarınızı rica ediyorum.Saygılarımla...
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
Siz sanırım table nesnesi kullanarak yapıyorsunuz. SQL komutu kullanarak iki tabloyu birleştirebilirsiniz.
Bu SQL komutlarını SQLtable nesnesine girebilirsiniz.
Kod: Tümünü seç
select tablo1.kayıtno,adı,soyadı,donem1,donem2 from tablo1 left join tablo2 on tablo1.kayıtno=tablo2.kayıtno
-
- Üye
- Mesajlar: 15
- Kayıt: 08 Haz 2005 12:26
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
üstad dediğin gibi yaptım (biraz değiştirdim çünkü donem 1 ve 2 alanları tablo2 de)fakat
bu seferde aynı kayıt no lu üyenin önceki dönemlere ait olan borcu varsa onu listelemiyor.
yani üyenin listenin ilk satırını yazıyor dbgrid e sonrasında "birden çok kayıt var sadece 1 i seçildi" diye hata veriyor
kayıtno,adı,soyadı > tablo 1 de , kayıtno,donem1borc,donem2borc > tablo2 de
aynı kayıt no lu üyenin önceki yıllarda ve bir önceki aidat dönemine borcu olabilir,böylelikle tablo2 de aynı kayıta ait birden fazla donem borcu olan kayıt olabilir.
yani sonuçta almak istediğim dbgrid görüntüsü şöyle olmalı.
kayıt no adı soyadı donem1 donem2 aidat yılı
11 ali veli 10 null 2006
11 ali veli null 15 2007
13 ahmet 15 null 2008
aynı kayıt nolu üyenin önceki dönem borcu var mı yokmu dbgridde listelenmeli.
sadece borcu olanları dbgride çekebiliyorum ama diğer tablodan ad ve soyad gelmiyor.
ve ayrıca yukarıda dedğim hatayı veriyor.
teşekkürler...
bu seferde aynı kayıt no lu üyenin önceki dönemlere ait olan borcu varsa onu listelemiyor.
yani üyenin listenin ilk satırını yazıyor dbgrid e sonrasında "birden çok kayıt var sadece 1 i seçildi" diye hata veriyor
kayıtno,adı,soyadı > tablo 1 de , kayıtno,donem1borc,donem2borc > tablo2 de
aynı kayıt no lu üyenin önceki yıllarda ve bir önceki aidat dönemine borcu olabilir,böylelikle tablo2 de aynı kayıta ait birden fazla donem borcu olan kayıt olabilir.
yani sonuçta almak istediğim dbgrid görüntüsü şöyle olmalı.
kayıt no adı soyadı donem1 donem2 aidat yılı
11 ali veli 10 null 2006
11 ali veli null 15 2007
13 ahmet 15 null 2008
aynı kayıt nolu üyenin önceki dönem borcu var mı yokmu dbgridde listelenmeli.
sadece borcu olanları dbgride çekebiliyorum ama diğer tablodan ad ve soyad gelmiyor.
ve ayrıca yukarıda dedğim hatayı veriyor.
teşekkürler...
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
join'i tersten kurabilirsin o zaman. tablo2 join tablo1 yapabilirsin. sonuçta üye yıllardırda ödemiyor olabilir.
-
- Üye
- Mesajlar: 15
- Kayıt: 08 Haz 2005 12:26
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
üstad dediğin gibi yaptım,
joini left yaptım ve tabloları yer değiştim.
şu an tam istediğim gibi oldu.
yardımların için teşekkürler.
ALLAH A EMANET OL.
joini left yaptım ve tabloları yer değiştim.
şu an tam istediğim gibi oldu.
yardımların için teşekkürler.
ALLAH A EMANET OL.
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
selamlar konu açacaktım baktım tamda benim derdimi anlatmışlar bu sqltable nesnesini yerzeştirdim ancak üzerine tıklayınca kodyazma sayfası gelmiyor yukardaki kodu nereye yazacağız
mysql kullanıyorum
formumda
zconnection1
zquery1
ztable1
datasource1
dbgrid1
ve söylediğiniz gibi eklediğim
sqltable1 var başka birşey lazımmı bağlantı için şimdiden teşekkürler bekliyorum
mysql kullanıyorum
formumda
zconnection1
zquery1
ztable1
datasource1
dbgrid1
ve söylediğiniz gibi eklediğim
sqltable1 var başka birşey lazımmı bağlantı için şimdiden teşekkürler bekliyorum
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
bukadar zorbi meslemiydi yav korkmaya başladım 

Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
pelitt daha Table veya Query nedir bilmeden nasıl program yapacaksın ? Hiç bir alt yapınız olmadan mı başladınız program yapmaya...
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
sayfadaki sorunu hallettim program bitmek üzereyken birinden bunları duymak çok güzel cevap için teşekkür table query meselesi bilmesem uğraşmam heralda demi
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
Kod: Tümünü seç
Edit1.Text:=DBGrid1.DataSource.DataSet.Fieldbyname('adi').value;
mysql de
200,00
projeyi çalıştırdığımda
edit1 de
200
oluyor
bunu düzeltmem için neyapmam gerekiyor
querystring eklenecekte biyere nereye eklenecek çözemedim
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
Kod: Tümünü seç
deger:=DBGrid1.DataSource.DataSet.Fieldbyname('adi').asfloat;
Edit1.Text:=FormatFloat('#,##0.00',deger);
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
sorun başka biryerden kaynaklanıyor dbgridde zaten
200
olarak gözüktüğü için editbox ta 200 oluyor
ama mysql de 200,00
olarak gözüküyor
dbgride ne yapmalıyımki düzgün göstersin yanlışımiçin özürdilerim
200
olarak gözüktüğü için editbox ta 200 oluyor
ama mysql de 200,00
olarak gözüküyor
dbgride ne yapmalıyımki düzgün göstersin yanlışımiçin özürdilerim
Kod: Tümünü seç
zQuery1.Close;
zQuery1.SQL.Add('Select UYE.ADI, UYE.BLOK,HESAP.AIDAT,HESAP.AODEME,HESAP.YAKIT,HESAP.YODEME,HESAP.AY,HESAP.YIL,HESAP.NOTC From UYE,HESAP Where UYE.ID=HESAP.KIM');
zQuery1.Open;
DBGrid1.Columns[0].Width:=160;
DBGrid1.Columns[1].Width:=50;
DBGrid1.Columns[2].Width:=50;
DBGrid1.Columns[3].Width:=50;
DBGrid1.Columns[4].Width:=50;
DBGrid1.Columns[5].Width:=50;
DBGrid1.Columns[6].Width:=50;
DBGrid1.Columns[7].Width:=50;
DBGrid1.Columns[8].Width:=190;
DBGrid1.Columns[0].Title.Caption:='ADI SOYADI';
DBGrid1.Columns[1].Title.Caption:='BLOK';
DBGrid1.Columns[2].Title.Caption:='AİDAT';
DBGrid1.Columns[3].Title.Caption:='A.ÖDEME';
DBGrid1.Columns[4].Title.Caption:='YAKIT';
DBGrid1.Columns[5].Title.Caption:='Y.ÖDEME';
DBGrid1.Columns[6].Title.Caption:='AY';
DBGrid1.Columns[7].Title.Caption:='YIL';
DBGrid1.Columns[8].Title.Caption:='NOT';
end;
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
Arkadaşlar bu iki tabloyu birbirine bağladım dbgridde ondalıklı kısmın gözükmemesi dışında bir sorunumda yok fakat
koyduğum editbox(isim soyad yazılacak) a yazacağım ilk karekterden itibaren(yani butona gerek yok) dbgridi filtreleyecek (sadece o isimdeki kaydın detaylarını verecek) kodu yazamadım
(not isimler uye sql tablosunda hesaplar ise hesap sql tablosunda)
aslında aynı kodu paradox ile çalışırken yazmıştım çalışıyordu fakat şimdi karıştı işler
koyduğum editbox(isim soyad yazılacak) a yazacağım ilk karekterden itibaren(yani butona gerek yok) dbgridi filtreleyecek (sadece o isimdeki kaydın detaylarını verecek) kodu yazamadım
(not isimler uye sql tablosunda hesaplar ise hesap sql tablosunda)
aslında aynı kodu paradox ile çalışırken yazmıştım çalışıyordu fakat şimdi karıştı işler
Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
Program bitti diyorsun ama hiçte öyle gözükmüyor...
Delphi ile database uygulamaları konusunu herhangi bir kaynaktan çalışıp başlasaydın program yapmaya şuan bu sorunlar ile uğraşmazdın...

Re: 2 ayrı tablodan veri çekmek ve dbgridde listelemek...
Battosai kardeş bundan 2 sene önce okumuştum ancak hiç birşey anlamadım basit şeyler yapıp bırakmıştım
şimdi ise veri tabanları ile tekrar başladım şunu öğrendim bu iş hikaye okur gibi okumakla olmuyor yanlış yapıp öyle öğreneceksin
ben a.ö.f maliye okuyorum 4. sınıftayım sınavım var sitres atmak için uğraşıyom bunla uğraşınca akılda ne sınav kalıyo ne ders güzel oluyor
okuyacak zamanım yok yani bu işin en iyi tarafı yapmak istediğini yaptıktan sonra kendine olan güveninin daha bi artması.
keşke okadar şey yazacağına bir parça bilgi yazsaydın bende düşüncelerindeki samimiyeti sezseydim...
ayrıca yaptığım şey paradox olarak
form1 üye kaydı bitti
form2 üye kayıt borç ödeme düzeltme bitti
form3 aidat ödeme girişi
form4 borçlandır yapılacak
form5 rapor çıktı yapılacak
ancak hoşuma gitmedi sql ye çeviriyorum
heralda bundonsonra bu işi ben bilmiyom diyerek kenara çekilmek baya bi entrasan olur adama gülerler
selamlar
şimdi ise veri tabanları ile tekrar başladım şunu öğrendim bu iş hikaye okur gibi okumakla olmuyor yanlış yapıp öyle öğreneceksin
ben a.ö.f maliye okuyorum 4. sınıftayım sınavım var sitres atmak için uğraşıyom bunla uğraşınca akılda ne sınav kalıyo ne ders güzel oluyor
okuyacak zamanım yok yani bu işin en iyi tarafı yapmak istediğini yaptıktan sonra kendine olan güveninin daha bi artması.
keşke okadar şey yazacağına bir parça bilgi yazsaydın bende düşüncelerindeki samimiyeti sezseydim...
ayrıca yaptığım şey paradox olarak
form1 üye kaydı bitti
form2 üye kayıt borç ödeme düzeltme bitti
form3 aidat ödeme girişi
form4 borçlandır yapılacak
form5 rapor çıktı yapılacak
ancak hoşuma gitmedi sql ye çeviriyorum
heralda bundonsonra bu işi ben bilmiyom diyerek kenara çekilmek baya bi entrasan olur adama gülerler

selamlar