giriş çıkış sql sorgusu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

giriş çıkış sql sorgusu

Mesaj gönderen erdogan_ozkaya »

arkadaşlar STOK_KARTLARI, SATIS_FATURA_DETAY ve FIYAT_LISTESI die 3 tablom var aşağıdaki kod ile giriş çıkış stoklar filtreliyorum fiyat kısmını fiyatlar tablosundan çekiyordu FIYAT_LISTESI tablosunu iptal ettim [ALIS_FIYATI] [SATIS_FIYATI] die STOK_KARTLARI ilave ettim ekleyemiyorum sorguya

teşekkürler.


kod

Kod: Tümünü seç

 qryKAR_ZARAR_DB.Close;
 qryKAR_ZARAR_DB.SQL.Clear;
 qryKAR_ZARAR_DB.SQL.Add(' SELECT SKT.Stok_ID,SKT.Genel_Stok_Kodu, SKT.Genel_Stok_Adi, SKT.Genel_Aciklama,'
                        +' ISNULL(SUM(CKN.Birim_Miktari),0) CIKAN, ISNULL(SUM(GRN.Birim_Miktari),0) GIREN,'
                        +' (ISNULL(SUM(CKN.Birim_Miktari),0)-ISNULL(SUM(GRN.Birim_Miktari),0)) DEPO_KALAN,'
                        +' ISNULL(ALS.Tutar,0) ALIS_TTR,ISNULL(STS.Tutar,0) SATIS_TTR,'
                        +' (ISNULL(SUM(ALS.Tutar),0)*ISNULL(SUM(GRN.Birim_Miktari),0)) GIRIS_TOPLAM_TUTAR,'
                        +' (ISNULL(SUM(STS.Tutar),0)*ISNULL(SUM(CKN.Birim_Miktari),0)) CIKIS_TOPLAM_TUTAR,'
                        +' (ISNULL(SUM(STS.Tutar),0)*ISNULL(SUM(CKN.Birim_Miktari),0)-ISNULL(SUM(ALS.Tutar),0)*'
                        +' ISNULL(SUM(GRN.Birim_Miktari),0)) KAR_ZARAR  FROM STOK_KARTLARI SKT'


                        +' LEFT JOIN SATIS_FATURA_DETAY CKN ON CKN.Stok_Kodu=SKT.Stok_ID AND CKN.FIS_TIPI = '+#39+'SatisFaturasi'+#39+''
                        +' and CKN.Cikis_Tarihi>=:tar1 and CKN.Cikis_Tarihi<=:tar2');


                        if DEPO_KODU_TEXT.Text<>'' then
 qryKAR_ZARAR_DB.SQL.Add(' and CKN.Depo_Kodu='+#39+DEPO_KODU_TEXT.Text+#39+'');

                        if CARI_KOD_TEXT.Text<>'' then
 qryKAR_ZARAR_DB.SQL.Add('  and CKN.Cari_Kart_ID='+#39+CARI_KOD_TEXT.Text+#39+'');

 qryKAR_ZARAR_DB.SQL.Add(' LEFT JOIN SATIS_FATURA_DETAY GRN ON GRN.Stok_Kodu=SKT.Stok_ID AND GRN.FIS_TIPI = '+#39+'AlisFaturasi'+#39+''
                        +' and GRN.Cikis_Tarihi>=:tar3 and GRN.Cikis_Tarihi<=:tar4');

                         if DEPO_KODU_TEXT.Text<>'' then
 qryKAR_ZARAR_DB.SQL.Add(' and GRN.Depo_Kodu='+#39+DEPO_KODU_TEXT.Text+#39+'');


                        if CARI_KOD_TEXT.Text<>'' then
 qryKAR_ZARAR_DB.SQL.Add('  and GRN.Cari_Kart_ID='+#39+CARI_KOD_TEXT.Text+#39+'');


 qryKAR_ZARAR_DB.SQL.Add(' LEFT JOIN FIYAT_LISTESI ALS ON ALS.Fiyat_ID=SKT.Stok_ID AND ALS.Aciklama = '+#39+'Peşin Alış Fiyatı'+#39+' AND ALS.Birim='+#39+'TL'+#39+' AND ALS.Durumu='+#39+'Evet'+#39+' '
                        +' LEFT JOIN FIYAT_LISTESI STS ON STS.Fiyat_ID=SKT.Stok_ID AND STS.Aciklama = '+#39+'Peşin Satış Fiyatı'+#39+' AND STS.Birim='+#39+'TL'+#39+' AND STS.Durumu='+#39+'Evet'+#39+''



                        +' GROUP BY SKT.Genel_Stok_Kodu, SKT.Stok_ID, SKT.Genel_Stok_Adi, SKT.Genel_Aciklama,ALS.Tutar,STS.Tutar'
                        +' order by SKT.Stok_ID  DESC');


                        qryKAR_ZARAR_DB.Parameters.ParamByName('tar1').Value:=StrToDate(DateToStr(dtp1.Date));
                        qryKAR_ZARAR_DB.Parameters.ParamByName('tar2').Value:=StrToDate(DateToStr(dtp2.Date));
                        qryKAR_ZARAR_DB.Parameters.ParamByName('tar3').Value:=StrToDate(DateToStr(dtp1.Date));
                        qryKAR_ZARAR_DB.Parameters.ParamByName('tar4').Value:=StrToDate(DateToStr(dtp2.Date));

   qryKAR_ZARAR_DB.Open;
   mmo1.Lines.Clear;
   mmo1.Lines.Add(qryKAR_ZARAR_DB.SQL.Text);
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: giriş çıkış sql sorgusu

Mesaj gönderen erdogan_ozkaya »

Kod: Tümünü seç

 
SELECT SKT.Stok_ID,SKT.Genel_Stok_Kodu, SKT.Genel_Stok_Adi, SKT.Genel_Aciklama, 

ISNULL(SUM(CKN.Birim_Miktari),0) CIKAN,
 ISNULL(SUM(GRN.Birim_Miktari),0) GIREN, 
(ISNULL(SUM(CKN.Birim_Miktari),0)-ISNULL(SUM(GRN.Birim_Miktari),0)) DEPO_KALAN,

 ISNULL(ALS.Tutar,0) ALIS_TTR,ISNULL(STS.Tutar,0) SATIS_TTR,
 (ISNULL(SUM(ALS.Tutar),0)*ISNULL(SUM(GRN.Birim_Miktari),0)) GIRIS_TOPLAM_TUTAR, 

(ISNULL(SUM(STS.Tutar),0)*ISNULL(SUM(CKN.Birim_Miktari),0)) CIKIS_TOPLAM_TUTAR, 

(ISNULL(SUM(STS.Tutar),0)*ISNULL(SUM(CKN.Birim_Miktari),0)-ISNULL(SUM(ALS.Tutar),0)* ISNULL(SUM(GRN.Birim_Miktari),0)) KAR_ZARAR 

 FROM STOK_KARTLARI SKT 

LEFT JOIN SATIS_FATURA_DETAY CKN ON CKN.Stok_Kodu=SKT.Stok_ID AND CKN.FIS_TIPI = 'SatisFaturasi' and CKN.Cikis_Tarihi>=:tar1 and CKN.Cikis_Tarihi<=:tar2
 
LEFT JOIN SATIS_FATURA_DETAY GRN ON GRN.Stok_Kodu=SKT.Stok_ID AND GRN.FIS_TIPI = 'AlisFaturasi' and GRN.Cikis_Tarihi>=:tar3 and GRN.Cikis_Tarihi<=:tar4
 
LEFT JOIN FIYAT_LISTESI ALS ON ALS.Fiyat_ID=SKT.Stok_ID AND ALS.Aciklama = 'Peşin Alış Fiyatı' AND ALS.Birim='TL' AND ALS.Durumu='Evet'  
LEFT JOIN FIYAT_LISTESI STS ON STS.Fiyat_ID=SKT.Stok_ID AND STS.Aciklama = 'Peşin Satış Fiyatı' AND STS.Birim='TL' AND STS.Durumu='Evet' 

GROUP BY SKT.Genel_Stok_Kodu, SKT.Stok_ID, SKT.Genel_Stok_Adi, SKT.Genel_Aciklama,ALS.Tutar,STS.Tutar 
order by SKT.Stok_ID  DESC
Cevapla