Logo Tiger 3 kullanıyorum Aylık cari hesapların bakiyelerinin aşağıdaki gibi ay ay görebileceğim pivot tablo şeklinde bir sorguya ihtiyacım var yardımcı olabilir misiniz ?

Kod: Tümünü seç
select CLC.CODE CARIKODU, CLC.DEFINITION_ CARIUNVANI,
CASE CLF.MONTH_
WHEN 0 THEN 'DVR'
WHEN 1 THEN 'OCA'
WHEN 2 THEN 'ŞUB'
WHEN 3 THEN 'MAR'
WHEN 4 THEN 'NİS'
WHEN 5 THEN 'MAY'
WHEN 6 THEN 'HAZ'
WHEN 7 THEN 'TEM'
WHEN 8 THEN 'AĞU'
WHEN 9 THEN 'EYL'
WHEN 10 THEN 'EKİ'
WHEN 11 THEN 'KAS'
WHEN 12 THEN 'ARA'
END AY,
SUM(CLF.DEBIT-CLF.CREDIT) AS BAKIYE
FROM LG_215_CLCARD CLC
LEFT OUTER JOIN LV_215_01_CLTOTFIL CLF ON CLF.CARDREF=CLC.LOGICALREF
WHERE CLF.TOTTYP=1
AND CLF.YEAR_=2024
AND CLC.CODE LIKE '120%'
GROUP BY CLC.CODE, CLC.DEFINITION_, CLF.MONTH_
ORDER BY CLC.CODE
Kod: Tümünü seç
SELECT CARIKODU, CARIUNVANI,ISNULL([0],0)Devir,
ISNULL([1],0)Oca, ISNULL([2],0)Sub, ISNULL([3],0)Mar, ISNULL([4],0)Nis, ISNULL([5],0)May, ISNULL([6],0)Haz,
ISNULL([7],0)Tem, ISNULL([8],0)Agu, ISNULL([9],0)Eyl, ISNULL([10],0)Eki, ISNULL([11],0)Kas, ISNULL([12],0)Ara,
ISNULL([0],0)+ ISNULL([1],0)+ ISNULL([2],0)+ ISNULL([3],0)+ ISNULL([4],0)+ ISNULL([5],0)+ ISNULL([6],0)+
ISNULL([7],0)+ ISNULL([8],0)+ ISNULL([9],0)+ ISNULL([10],0)+ ISNULL([11],0)+ ISNULL([12],0)Toplam
FROM (
select CLC.CODE CARIKODU, CLC.DEFINITION_ CARIUNVANI,
CLF.MONTH_ as AY,
SUM(CLF.DEBIT-CLF.CREDIT) AS BAKIYE
FROM LG_400_CLCARD CLC
LEFT OUTER JOIN LV_400_01_CLTOTFIL CLF ON CLF.CARDREF=CLC.LOGICALREF
WHERE CLF.TOTTYP=1
AND CLF.YEAR_=2024
AND CLC.CODE LIKE '120%'
GROUP BY CLC.CODE, CLC.DEFINITION_, CLF.MONTH_ )
AS EVN
PIVOT(
SUM(BAKIYE) FOR AY IN([0],[1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12])
) AS PIVOT_TABLOM
Tarkan Bey merhaba, verdiğiniz değerli bilgiler için çok teşekkür ederim. verdiğiniz bilgilerden yola çıkarak aşağıdaki gibi bir yaşlandırma tablosu ortaya çıkardım. Burada bakiyeyi de tutturdum, fakat bakiyenin hangi aylardan geldiğini yapamadım. bu konu da sorguma bakarak yardımıcı olabilir misiniz rica etsem ?Tarkan VURAL yazdı: ↑Pzt Tem 29, 2024 4:23 pm Merhaba,
Aylık toplamları tutan CLTOTFIL view başvurusu yapabilirsiniz.
CARDREF = Cari hesap referansı
TOTTYP = Döviz Tipi ( 1 TL, 2 Raporlama Dövizi )
MONTH_ = Ay
DEBIT = Borç
CREDIT = Alacak
YEAR_ = Yıl
CariToplamlar.PNG
Şu SQL cümlesi ile 2024 yılı için 120 ile başlayan cariler için bir data row rapor alırsınız. Excel Özet Tablo ile tablolayabilirsiniz :RowDataReport.PNGKod: Tümünü seç
select CLC.CODE CARIKODU, CLC.DEFINITION_ CARIUNVANI, CASE CLF.MONTH_ WHEN 0 THEN 'DVR' WHEN 1 THEN 'OCA' WHEN 2 THEN 'ŞUB' WHEN 3 THEN 'MAR' WHEN 4 THEN 'NİS' WHEN 5 THEN 'MAY' WHEN 6 THEN 'HAZ' WHEN 7 THEN 'TEM' WHEN 8 THEN 'AĞU' WHEN 9 THEN 'EYL' WHEN 10 THEN 'EKİ' WHEN 11 THEN 'KAS' WHEN 12 THEN 'ARA' END AY, SUM(CLF.DEBIT-CLF.CREDIT) AS BAKIYE FROM LG_215_CLCARD CLC LEFT OUTER JOIN LV_215_01_CLTOTFIL CLF ON CLF.CARDREF=CLC.LOGICALREF WHERE CLF.TOTTYP=1 AND CLF.YEAR_=2024 AND CLC.CODE LIKE '120%' GROUP BY CLC.CODE, CLC.DEFINITION_, CLF.MONTH_ ORDER BY CLC.CODE
Şu tarz bir cümle ile de, 2024 yılı için 120 ile başlayan cariler için özet tablo şeklinde raporlama yapabilirsiniz :PivotDataReport.PNGKod: Tümünü seç
SELECT CARIKODU, CARIUNVANI,ISNULL([0],0)Devir, ISNULL([1],0)Oca, ISNULL([2],0)Sub, ISNULL([3],0)Mar, ISNULL([4],0)Nis, ISNULL([5],0)May, ISNULL([6],0)Haz, ISNULL([7],0)Tem, ISNULL([8],0)Agu, ISNULL([9],0)Eyl, ISNULL([10],0)Eki, ISNULL([11],0)Kas, ISNULL([12],0)Ara, ISNULL([0],0)+ ISNULL([1],0)+ ISNULL([2],0)+ ISNULL([3],0)+ ISNULL([4],0)+ ISNULL([5],0)+ ISNULL([6],0)+ ISNULL([7],0)+ ISNULL([8],0)+ ISNULL([9],0)+ ISNULL([10],0)+ ISNULL([11],0)+ ISNULL([12],0)Toplam FROM ( select CLC.CODE CARIKODU, CLC.DEFINITION_ CARIUNVANI, CLF.MONTH_ as AY, SUM(CLF.DEBIT-CLF.CREDIT) AS BAKIYE FROM LG_400_CLCARD CLC LEFT OUTER JOIN LV_400_01_CLTOTFIL CLF ON CLF.CARDREF=CLC.LOGICALREF WHERE CLF.TOTTYP=1 AND CLF.YEAR_=2024 AND CLC.CODE LIKE '120%' GROUP BY CLC.CODE, CLC.DEFINITION_, CLF.MONTH_ ) AS EVN PIVOT( SUM(BAKIYE) FOR AY IN([0],[1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12]) ) AS PIVOT_TABLOM
SET DATEFORMAT DMY
DECLARE @CarKod VARCHAR(15) set @CarKod='01.001'
DECLARE @CarKod1 VARCHAR(15) set @CarKod1='S9999'
;WITH
OZELVIEW AS
(
SELECT TRN.CLIENTREF AS CARDREF
,(CASE TRN.TRCODE WHEN 14 THEN 0 ELSE MONTH_ END) AS MONTH_
,TRN.YEAR_
,TRN.BRANCH AS BRANCH
,SUM(ISNULL((CASE ISNULL(PAIDINCASH, 0) WHEN 0 THEN AMOUNT * (1 - SIGN) ELSE AMOUNT END),0)) AS DEBIT
,SUM(ISNULL((CASE ISNULL(PAIDINCASH, 0) WHEN 0 THEN AMOUNT * (SIGN) ELSE AMOUNT END),0)) AS CREDIT
FROM [dbo].LG_022_12_CLFLINE TRN
WHERE TRN.STATUS = 0 AND TRN.CANCELLED = 0 AND TRN.TRCODE <> 12 --AND TRN.TRCODE NOT IN (32,33) LİSTEYE DAHİL OLMAMASI GEREKENLER
AND DATE_>='01.01.2020' and DATE_<='30.04.2024'
GROUP BY TRN.CLIENTREF
,(CASE TRN.TRCODE WHEN 14 THEN 0 ELSE MONTH_ END)
,TRN.YEAR_
,TRN.BRANCH
)
SELECT [CARİ KODU] ,ÜNVANI,
(Acilis_Borc-Acilis_Alacak) [AÇILIŞ],
(Ocak_Borc-Ocak_Alacak) as [OCAK],
(Subat_Borc-Subat_Alacak) as [ŞUBAT],
(Mart_Borc-Mart_Alacak) as [MART],
(Nisan_Borc-Nisan_Alacak) as [NİSAN],
(Mayıs_Borc-Mayıs_Alacak) as [MAYIS],
(Haziran_Borc-Haziran_Alacak) as [HAZİRAN],
(Temmuz_Borc-Temmuz_Alacak) as [TEMMUZ],
(Ağustos_Borc-Ağustos_Alacak) as [AĞUSTOS],
(Eylül_Borc-Eylül_Alacak) as [EYLÜL],
(Ekim_Borc-Ekim_Alacak) as [EKİM],
(Kasım_Borc-Kasım_Alacak) as [KASIM],
(Aralık_Borc-Aralık_Alacak) as [ARALIK],
--((SUM(BORÇ)-SUM(ALACAK))-SUM(AÇILIS)-SUM(OCAK)-SUM(ŞUBAT)-SUM(MART)-SUM(NİSAN)-SUM(MAYIS)-SUM(HAZİRAN)-SUM(TEMMUZ)-SUM(AĞUSTOS)
---SUM(EYLÜL)-SUM(EKİM)-SUM(KASIM)-SUM(ARALIK))
--GROUP BY [CARİ KODU] ,ÜNVANI
BORÇ,ALACAK,(BORÇ-ALACAK) AS [BAKİYE] FROM (
SELECT CL.CODE AS [CARİ KODU] , CL.DEFINITION_ AS 'ÜNVANI',
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '0' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Acilis_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '0' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Acilis_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '1' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Ocak_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '1' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Ocak_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '2' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Subat_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '2' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Subat_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '3' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Mart_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '3' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Mart_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '4' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Nisan_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '4' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Nisan_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '5' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Mayıs_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '5' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Mayıs_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '6' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Haziran_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '6' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Haziran_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '7' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Temmuz_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '7' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Temmuz_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '8' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Ağustos_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '8' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Ağustos_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '9' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Eylül_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '9' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Eylül_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '10' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Ekim_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '10' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Ekim_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '11' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Kasım_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '11' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Kasım_Alacak,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '12' THEN LV_022_12_CLTOTFIL.DEBIT ELSE 0 END) AS Aralık_Borc,
SUM(CASE WHEN LV_022_12_CLTOTFIL.MONTH_ = '12' THEN LV_022_12_CLTOTFIL.CREDIT ELSE 0 END) AS Aralık_Alacak,
SUM(LV_022_12_CLTOTFIL.DEBIT) AS [BORÇ],
SUM(LV_022_12_CLTOTFIL.CREDIT) AS [ALACAK],
SUM(LV_022_12_CLTOTFIL.DEBIT-CREDIT) AS BAKIYE,
CONVERT(NVARCHAR(20), (SELECT TOP 1 DATE_ FROM LG_022_12_INVOICE AS STL WHERE STL.CLIENTREF=CL.LOGICALREF ORDER BY DATE_ DESC),105) AS [SON SATIS TARIHI],
CONVERT(NVARCHAR(20), (SELECT TOP 1 CLF.DATE_ FROM LV_022_12_CLFLINE AS CLF WHERE CLF.CLIENTREF=CL.LOGICALREF AND MODULENR<>4 ORDER BY CLF.DATE_ DESC),105) AS [SON TAHSILAT TARİHİ]
FROM OZELVIEW AS LV_022_12_CLTOTFIL INNER JOIN
LV_022_CLCARD AS CL ON LV_022_12_CLTOTFIL.CARDREF = CL.LOGICALREF
WHERE (CL.ACTIVE = 0) AND CL.CODE BETWEEN @CarKod AND @CarKod1
GROUP BY CL.DEFINITION_,CL.CODE,CL.LOGICALREF
) AS YAŞLANDIRMA
Tarkan Bey, belirttiğiniz yeri inceledim ama sorguya dahil edemedim bir türlü rica etsem. burayı sorguma siz dahil edebilir misiniz ?Tarkan VURAL yazdı: ↑Sal Tem 30, 2024 4:27 pm Merhaba,
Size yazdığım bakiyeler ay toplamları. Siz kapanan kapanmayan kısmına bakıyorsanız bunun için borç takip çalıştırıp fatura ile tahsilatları ( borç ile alacakları) eşleştirerek kapatıp, PAYTRANS tablosuna bakmanız gerek.