master/detail tabloda detail içinde arama hakkında..

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
serkan
Üye
Mesajlar: 666
Kayıt: 10 Tem 2003 12:08
Konum: bursa

master/detail tabloda detail içinde arama hakkında..

Mesaj gönderen serkan »

merhaba arkadaşlar..
ürünler ve bu ürünlerin içindeki hammedelerin tutulduğu iki tablom var.bunlar ürün kodu ile master/detail olarak bağlı.amacım içinde X maddesi bulunan ürün bilgilerini sorgulamaktı.

Kod: Tümünü seç

receteler.Close;
receteler.SelectSQL.Clear;
receteler.SelectSQL.Add('select distinct r.recetekodu, r.receteadi,r.cinsi, r.toplamkalori,r.aktiv, r.toplammaliyet,m.malzemeadi from recetedata r, recmalzlist m ');
receteler.SelectSQL.Add('WHERE r.recetekodu = m.recetekodu');
if e1.Text<>'' then receteler.SelectSQL.Add('and r.receteadi like'''+e1.text+'%''');
if cbox.Text<>'' then receteler.SelectSQL.Add('and r.CINSI like'''+CBOX.text+'%''');
if (e2.Text<>'') and (e3.Text<>'') then begin
if e2.Text='=' then
receteler.SelectSQL.Add('and m.malzemeadi like'''+e3.text+'''')
else
receteler.SelectSQL.Add('and m.malzemeadi not like'''+e3.text+'''');
end;
if CHK1.Checked=TRUE then receteler.SelectSQL.Add('and AKTIV like''EVET''');
receteler.Open;
yukarıdaki kod görevini yapıyor fakat içerisinde X maddesi olmayan kayıtları sorguladığımda aynı ürün bilgisini birden çok listeliyor çünkü x maddesi dışındaki tüm malzemeleri listeliyo.firebird kullanıyorum.soru biraz karışık oldu özetleyecek olursak Detailinde X olmayan ürünleri ekranda tekrarlanmayacak şekilde nasıl gösterebilirim.teşekkürler
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Selamlar.

Soruya tam olarak çözümleyemedim ama anladığım kadarıyla yazayım;

Distinct tekrarlanmasını engeller zaten..X ürünü olmayanları listelerken de not in kullanabilirsin.ya da left outer join olabilir..

Kolay gele..
Cevapla