Filitre uygulamak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

Filitre uygulamak

Mesaj gönderen ozcank »

Arkadaşlar kodlarım çalışıyor fakat şöyle bir şey yapmak istedim bir tane GrupKod um var ve hem numeric hemde karakter değeri alıyor edit9 ve edit11 e ben
"759" dan "820" kadar filitre uygulatmak istiyorum şu şekilde değiştirerek yapmak istedim ama ikinci edit11 dikkate almadı

Kod: Tümünü seç

D.GRUP_KODU=:GrupKod AND D.GRUP_KODU=:GrupKod1 /// burası 

Kod: Tümünü seç

...
...
...
'INNER JOIN TBLCASABIT AS E ON B.CARI_KODU=E.CARI_KOD WHERE A.STHAR_TARIH between :IsTarih1 AND :IsTarih2 AND D.GRUP_KODU=:GrupKod AND D.GRUP_KODU=:GrupKod1 AND A.STHAR_FTIRSIP=''2'' '+
             'GROUP BY A.STOK_KODU,A.STHAR_GCMIK, A.STHAR_BF, D.STOK_ADI,D.GRUP_KODU,E.CARI_KOD, E.CARI_ISIM, B.FATIRS_NO, A.STHAR_TARIH, B.BRUTTUTAR, B.SAT_ISKT,A.STHAR_SATISK, A.STHAR_SATISK2, '+
             'A.STRA_SATISK3, A.STRA_SATISK4, A.STRA_SATISK5, A.STRA_SATISK6, B.GEN_ISK1O, B.GEN_ISK1T, B.GEN_ISK2O, B.GEN_ISK2T, B.GEN_ISK3O, B.GEN_ISK3T, B.KDV, B.GENELTOPLAM';

   Parameters.ParamByName('GrupKod').Value := Edit9.Text;
   Parameters.ParamByName('GrupKod1').Value := Edit11.Text;
   Parameters.ParamByName('IsTarih1').Value := DateTimePicker1.Date;
   Parameters.ParamByName('IsTarih2').Value := DateTimePicker2.Date;



Kullanıcı avatarı
xozcanx
Üye
Mesajlar: 362
Kayıt: 05 Oca 2012 12:55

Re: Filitre uygulamak

Mesaj gönderen xozcanx »

Kod: Tümünü seç

D.GRUP_KODU=>GrupKod AND D.GRUP_KODU=<GrupKod1
Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

Re: Filitre uygulamak

Mesaj gönderen ozcank »

xozcanx kardeşim dediğini yaptım ama "Parameters.ParamByName('GrupKod').Value := Edit9.Text;" burda grupkod not found hatası veriyor

Kod: Tümünü seç

...
...
...
             '(((A.STHAR_SATISK * 100000))/100)) * A.STHAR_SATISK2/100) )) * A.STRA_SATISK3/100 ))) * A.STRA_SATISK4/100))) * A.STRA_SATISK5/100))) * A.STRA_SATISK6/100 AS Iskonto6, '+
             'A.STHAR_BF * A.STHAR_GCMIK AS BRUT_TOPLAM FROM TBLSTHAR AS A INNER JOIN TBLFATUIRS AS B ON B.FATIRS_NO=A.FISNO INNER JOIN TBLSTSABIT AS D ON A.STOK_KODU=D.STOK_KODU '+
             'INNER JOIN TBLCASABIT AS E ON B.CARI_KODU=E.CARI_KOD WHERE A.STHAR_TARIH between :IsTarih1 AND :IsTarih2 AND D.GRUP_KODU=>GrupKod AND D.GRUP_KODU=<GrupKod1 AND A.STHAR_FTIRSIP=''1'' '+
             'GROUP BY A.STOK_KODU,A.STHAR_GCMIK, A.STHAR_BF, D.STOK_ADI,D.GRUP_KODU,E.CARI_KOD, E.CARI_ISIM, B.FATIRS_NO, A.STHAR_TARIH, B.BRUTTUTAR, B.SAT_ISKT,A.STHAR_SATISK, A.STHAR_SATISK2, '+
             'A.STRA_SATISK3, A.STRA_SATISK4, A.STRA_SATISK5, A.STRA_SATISK6, B.GEN_ISK1O, B.GEN_ISK1T, B.GEN_ISK2O, B.GEN_ISK2T, B.GEN_ISK3O, B.GEN_ISK3T, B.KDV, B.GENELTOPLAM';

    Parameters.ParamByName('GrupKod').Value := Edit9.Text;
    Parameters.ParamByName('GrupKod1').Value := Edit11.Text;
    Parameters.ParamByName('IsTarih1').Value := DateTimePicker1.Date;
    Parameters.ParamByName('IsTarih2').Value := DateTimePicker2.Date;

Kullanıcı avatarı
xozcanx
Üye
Mesajlar: 362
Kayıt: 05 Oca 2012 12:55

Re: Filitre uygulamak

Mesaj gönderen xozcanx »

Kod: Tümünü seç

Parameters.ParamByName('GrupKod').Value := StrToInt(Edit9.Text);
Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

Re: Filitre uygulamak

Mesaj gönderen ozcank »

parameter 'GrupKod' not found hatası veriyor
Kullanıcı avatarı
xozcanx
Üye
Mesajlar: 362
Kayıt: 05 Oca 2012 12:55

Re: Filitre uygulamak

Mesaj gönderen xozcanx »

"GrupKod" bulunamadı hatası alıyorsun, kullandığın Query nin Fields Editör kısmına bakabilirmisin,
Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

Re: Filitre uygulamak

Mesaj gönderen ozcank »

ADOQuery kullanıyorum parameters de tanımladım ama sonuç aynı hata
Kullanıcı avatarı
xozcanx
Üye
Mesajlar: 362
Kayıt: 05 Oca 2012 12:55

Re: Filitre uygulamak

Mesaj gönderen xozcanx »

Peki burada şarta bağlı parametre kullanmak yerine SQL cümlenizin içinde kullansanız, yani

Kod: Tümünü seç

where Grupkod =''%'+Edit9.text+'%''
şeklinde..
Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

Re: Filitre uygulamak

Mesaj gönderen ozcank »

hemen deniyorum
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

Re: Filitre uygulamak

Mesaj gönderen ozcank »

Incorrect syntax near '>' hatası verdi
Kullanıcı avatarı
xozcanx
Üye
Mesajlar: 362
Kayıt: 05 Oca 2012 12:55

Re: Filitre uygulamak

Mesaj gönderen xozcanx »

'>' bunun kullanımında bir hata var kodlarını tekrar gözden geçirmelisin.
Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

Re: Filitre uygulamak

Mesaj gönderen ozcank »

ammy versem birlikde bakabilirmiyiz vaktiniz var mı?
Kullanıcı avatarı
xozcanx
Üye
Mesajlar: 362
Kayıt: 05 Oca 2012 12:55

Re: Filitre uygulamak

Mesaj gönderen xozcanx »

Merhaba;
Sorun devam ediyorsa SQL cümlenizi tam olarak burada paylaşabilirseniz, bir kişinin gözünden kaçan ayrıntıyı bir başkası farkedebilir. probleminiz daha hızlı çözülür ;)

İyi Çalışmalar.
Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

Re: Filitre uygulamak

Mesaj gönderen ozcank »

Merhaba ;
Yapmak istediğim Edit9.Text ve Edit11.Text alanlarına mesela "755" den "760" kadar arasındaki ürünleri listelemek bu karakter de olabilir "ABC" ile "BAKLIYAT"
şeklinde fakat şu şekilde değiştirdiğimde Incorret syntax near '>' hatası alıyorum

Kod: Tümünü seç

WHERE A.STHAR_TARIH between :IsTarih1 AND :IsTarih2 AND D.GRUP_KODU=>'+#39+''+Edit9.text+''+#39+' AND D.GRUP_KODU=<'+#39+''+Edit11.text+''+#39+' AND A.STHAR_FTIRSIP=''1'' '+
tayipk
Üye
Mesajlar: 284
Kayıt: 27 Kas 2013 11:32

Re: Filitre uygulamak

Mesaj gönderen tayipk »

sorunu uzaklarda aramayın sql cümlendeki

Kod: Tümünü seç

D.GRUP_KODU=>GrupKod AND D.GRUP_KODU=<GrupKod1
kodun

Kod: Tümünü seç

D.GRUP_KODU between :GrupKod AND  :GrupKod1
olarak değiştirirsen çalışma olasılığı %99 diye düşünüyorum :) %1 hata payı her zaman vardır :D
Soru Sorarken yazmaya Üşenmeyen Parmaklar Sorunun Çözüldükten Sonra Teşekkür etmeye de Üşenmesin.
Cevapla