En iyi yanıtlayıcılar
Sql Server de toplattıklarıma tarih aralığı belirtme

Soru
-
1 AY ONCE
BU AY ICINDE BU AY BU YIL ICINDE BU YIL DEPO GIREN CIKAN GIREN MF. CIKAN MF. CIKAN TL GIREN MF CIKAN MF MEVCUDU
Yukarıdaki raporu sql de almak istiyorum aşağıdaki komutları yazdığım da bir kaç bilgiyi doğru olarak alıyorum fakat diğer bilgiler de sıkıntı yaşıyorum toplam giren çıkan ve kalan kısımları doğru olark geliyor fakat tarih aralığı olarak verdiğim de devreden olmadığı için - bakiye olarak gözüküyor yardımlarınızı bekliyorum teşekkürler..
SELECT TBLSTHAR.STOK_KODU STOKKODU,STOK_ADI STOK_ADI,
sum(STHAR_GCMIK)TOPLAM,
sum(ISNULL((TBLSTHAR.STHAR_GCMIK-(CASE WHEN STHAR_GCKOD='C' AND TBLSTHAR.STHAR_HTUR NOT IN ('L','M') THEN TBLSTHAR.STHAR_GCMIK ELSE 0 END)),0))
AS GİRİŞ,
sum(ISNULL((TBLSTHAR.STHAR_GCMIK-(CASE WHEN STHAR_GCKOD='G' AND TBLSTHAR.STHAR_HTUR NOT IN ('L','M') THEN TBLSTHAR.STHAR_GCMIK ELSE 0 END)),0))
AS ÇIKIŞ,
SUM((ISNULL((TBLSTHAR.STHAR_GCMIK-(CASE WHEN STHAR_GCKOD='C' AND TBLSTHAR.STHAR_HTUR NOT IN ('L','M') THEN TBLSTHAR.STHAR_GCMIK ELSE 0 END)),0) -
(ISNULL((TBLSTHAR.STHAR_GCMIK-(CASE WHEN STHAR_GCKOD='G' AND TBLSTHAR.STHAR_HTUR NOT IN ('L','M') THEN TBLSTHAR.STHAR_GCMIK ELSE 0 END)),0))))
AS KALAN,dbo.trk(TBLSTSABITEK.INGISIM) AS [FİRMA İSMİ]
FROM TBLSTHAR
INNER JOIN TBLSTSABIT ON (TBLSTHAR.STOK_KODU=TBLSTSABIT.STOK_KODU)
INNER JOIN TBLSTSABITEK ON (TBLSTSABIT.STOK_KODU=TBLSTSABITEK.STOK_KODU)
WHERE TBLSTSABITEK.INGISIM IS NOT NULL
group by tblsthar.stok_kodu,stok_adi,TBLSTSABITEK.INGISIM ORDER BY TBLSTSABITEK.INGISIM
Yanıtlar
-
DECLARE @BUAY INT=7; WITH E_GECBUYIL AS ( SELECT STOK_KODU,SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='G' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) GGIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='G' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) GMFGIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='C' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) GCIKAN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='C' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) GMFCIKAN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='G' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) GIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='G' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) MFGIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='C' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) CIKAN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='C' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) MFCIKAN, SUM(CASE WHEN STHAR_GCKOD='G' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) YGIREN, SUM(CASE WHEN STHAR_GCKOD='G' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) YMFGIREN, SUM(CASE WHEN STHAR_GCKOD='C' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) YCIKAN, SUM(CASE WHEN STHAR_GCKOD='C' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) YMFCIKAN FROM TBLSTHAR WHERE STHAR_HTUR NOT IN ('L','M') GROUP BY STOK_KODU ) SELECT PP.STOK_KODU,STOK_ADI,INGISIM,ISNULL(GGIREN,0) GGIREN,ISNULL(GCIKAN,0) GCIKAN, ISNULL(CIKAN,0) CIKAN,ISNULL(MFCIKAN,0) MFCIKAN, ISNULL(YCIKAN,0) YCIKAN, ISNULL(YMFCIKAN,0) YMFCIKAN,KALAN FROM (SELECT A.STOK_KODU,B.STOK_ADI,C.INGISIM, SUM(CASE WHEN STHAR_GCKOD='G' THEN STHAR_GCMIK ELSE -STHAR_GCMIK END) KALAN FROM TBLSTHAR A INNER JOIN TBLSTSABIT B ON A.STOK_KODU=B.STOK_KODU INNER JOIN TBLSTSABITEK C ON B.STOK_KODU=C.STOK_KODU GROUP BY A.STOK_KODU,B.STOK_ADI,C.INGISIM) PP LEFT JOIN E_GECBUYIL D ON PP.STOK_KODU=D.STOK_KODU
- Yanıt Olarak İşaretleyen Burak ORDU 26 Temmuz 2014 Cumartesi 19:15
Tüm Yanıtlar
-
-
-
DECLARE @BUAY INT=7; WITH E_GECBUYIL AS ( SELECT STOK_KODU,SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='G' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) GGIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='G' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) GMFGIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='C' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) GCIKAN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='C' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) GMFCIKAN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='G' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) GIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='G' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) MFGIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='C' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) CIKAN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='C' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) MFCIKAN, SUM(CASE WHEN STHAR_GCKOD='G' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) YGIREN, SUM(CASE WHEN STHAR_GCKOD='G' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) YMFGIREN, SUM(CASE WHEN STHAR_GCKOD='C' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) YCIKAN, SUM(CASE WHEN STHAR_GCKOD='C' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) YMFCIKAN FROM TBLSTHAR WHERE STHAR_HTUR NOT IN ('L','M') GROUP BY STOK_KODU ) SELECT A.STOK_KODU,B.STOK_ADI,C.INGISIM,SUM(ISNULL(GGIREN,0)) GGIREN,SUM(ISNULL(GCIKAN,0)) GCIKAN, SUM(ISNULL(CIKAN,0)) CIKAN,SUM(ISNULL(MFCIKAN,0)) MFCIKAN, SUM(ISNULL(YCIKAN,0)) YCIKAN, SUM(ISNULL(YMFCIKAN,0)) YMFCIKAN, SUM(CASE WHEN STHAR_GCKOD='G' THEN STHAR_GCMIK ELSE -STHAR_GCMIK END) KALAN FROM TBLSTHAR A INNER JOIN TBLSTSABIT B ON A.STOK_KODU=B.STOK_KODU INNER JOIN TBLSTSABITEK C ON B.STOK_KODU=C.STOK_KODU LEFT JOIN E_GECBUYIL D ON B.STOK_KODU=D.STOK_KODU GROUP BY A.STOK_KODU,B.STOK_ADI,C.INGISIM
-
-
DECLARE @BUAY INT=7; WITH E_GECBUYIL AS ( SELECT STOK_KODU,SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='G' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) GGIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='G' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) GMFGIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='C' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) GCIKAN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY - 1 AND STHAR_GCKOD='C' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) GMFCIKAN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='G' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) GIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='G' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) MFGIREN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='C' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) CIKAN, SUM(CASE WHEN MONTH(STHAR_TARIH) = @BUAY AND STHAR_GCKOD='C' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) MFCIKAN, SUM(CASE WHEN STHAR_GCKOD='G' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) YGIREN, SUM(CASE WHEN STHAR_GCKOD='G' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) YMFGIREN, SUM(CASE WHEN STHAR_GCKOD='C' THEN STHAR_GCMIK - STHAR_MALFISK ELSE 0 END) YCIKAN, SUM(CASE WHEN STHAR_GCKOD='C' AND STHAR_MALFISK > 0 THEN STHAR_MALFISK ELSE 0 END) YMFCIKAN FROM TBLSTHAR WHERE STHAR_HTUR NOT IN ('L','M') GROUP BY STOK_KODU ) SELECT PP.STOK_KODU,STOK_ADI,INGISIM,ISNULL(GGIREN,0) GGIREN,ISNULL(GCIKAN,0) GCIKAN, ISNULL(CIKAN,0) CIKAN,ISNULL(MFCIKAN,0) MFCIKAN, ISNULL(YCIKAN,0) YCIKAN, ISNULL(YMFCIKAN,0) YMFCIKAN,KALAN FROM (SELECT A.STOK_KODU,B.STOK_ADI,C.INGISIM, SUM(CASE WHEN STHAR_GCKOD='G' THEN STHAR_GCMIK ELSE -STHAR_GCMIK END) KALAN FROM TBLSTHAR A INNER JOIN TBLSTSABIT B ON A.STOK_KODU=B.STOK_KODU INNER JOIN TBLSTSABITEK C ON B.STOK_KODU=C.STOK_KODU GROUP BY A.STOK_KODU,B.STOK_ADI,C.INGISIM) PP LEFT JOIN E_GECBUYIL D ON PP.STOK_KODU=D.STOK_KODU
- Yanıt Olarak İşaretleyen Burak ORDU 26 Temmuz 2014 Cumartesi 19:15
-