declare @rok int declare @miesiac int set @rok=2009 set @miesiac=2 SELECT FAKTURY.ID_FAKTURY, Symbol = CASE WHEN AGENCI.Symbol IS NULL THEN CASE WHEN FAKTURY.ID_SPRZEDAWCY = 6 THEN 'przyłucki' WHEN FAKTURY.ID_SPRZEDAWCY = 4 THEN 'wodzu' ELSE AGENCI.Symbol END ELSE AGENCI.Symbol END, NR_FK = CONVERT(VARCHAR, FAKTURY.NUMER) + '/' + CONVERT(VARCHAR, FAKTURY.NUMER_ROZ) + '/' + CONVERT(VARCHAR, FAKTURY.NUMER_ROK), KLIENCI.kodKlienta, Wplaty.symbolPotwierdzenia, Wplaty.rodzajPotwierdzenia, NETTO = CASE WHEN Korekta.Netto IS NULL THEN SUM(FAKTURA_DETAILS.NETTO) ELSE Korekta.Netto END, VAT = CASE WHEN Korekta.Netto IS NULL THEN SUM(FAKTURA_DETAILS.VAT) ELSE Korekta.Vat END, BRUTTO = CASE WHEN Korekta.Brutto IS NULL THEN SUM(FAKTURA_DETAILS.BRUTTO) ELSE Korekta.Brutto END, FAKTURY.DATA_WYSTAWIENIA, FAKTURY.TERMIN_ZAPLATY, FAKTURY.SPOSOB_ZAPLATY, AGENCJE.Symbol AS Agencja, Wplaty.dataWplaty, DATEDIFF(day, FAKTURY.TERMIN_ZAPLATY, Wplaty.dataWplaty) AS roznica_nowa, FAKTURY.suma_zaplat, FAKTURY.zaplata_data, DATEDIFF(day, FAKTURY.TERMIN_ZAPLATY, FAKTURY.zaplata_data) AS roznica_stara, procentProwizji = CASE WHEN Wplaty.rodzajPotwierdzenia = 'ECARD' THEN 0 WHEN (NOT Z.ZP IS NULL) AND Z.ZP = 1 THEN COALESCE(Z.procentProwizji, 0) WHEN (NOT R.zablokuj_prowizje IS NULL) AND R.zablokuj_prowizje = 1 THEN COALESCE(R.[Procent Prowizji] , 0) WHEN DATEDIFF(day, FAKTURY.TERMIN_ZAPLATY, FAKTURY.zaplata_data) > 60 THEN 0 WHEN DATEDIFF(day, FAKTURY.TERMIN_ZAPLATY, Wplaty.dataWplaty) > 60 THEN 0 ELSE CASE WHEN FAKTURY.idZamowienia IS NULL THEN COALESCE(R.[Procent Prowizji] , 0) ELSE COALESCE(P.procentProwizji , 0) END END FROM FAKTURY LEFT OUTER JOIN FAKTURA_DETAILS ON FAKTURY.ID_FAKTURY = FAKTURA_DETAILS.ID_FAKTURY LEFT OUTER JOIN AGENCI ON FAKTURY.NUMER_ROZ = AGENCI.F_ROZ LEFT OUTER JOIN AGENCJE ON FAKTURY.ID_SPRZEDAWCY = AGENCJE.Id_agencji LEFT OUTER JOIN Wplaty ON FAKTURY.ID_FAKTURY = Wplaty.idFaktury LEFT OUTER JOIN KLIENCI ON FAKTURY.ID_NABYWCY = KLIENCI.CustomerID LEFT OUTER JOIN PROWIZJE AS P ON P.idFaktury = FAKTURY.ID_FAKTURY LEFT OUTER JOIN VIEW_KOREKTY AS Korekta ON Korekta.idFakturyKorekta = FAKTURY.ID_FAKTURY LEFT OUTER JOIN REKLAMA AS R ON R.ID_FAKTURY = FAKTURY.ID_FAKTURY LEFT OUTER JOIN Zamowienia AS Z ON FAKTURY.idZamowienia = Z.idZamowienia WHERE (FAKTURY.KOREKTA <> 1) AND (YEAR(Wplaty.dataWplaty) = @rok) AND (MONTH(Wplaty.dataWplaty) = @miesiac) GROUP BY FAKTURY.DATA_WYSTAWIENIA, FAKTURY.ID_FAKTURY, FAKTURY.ID_SPRZEDAWCY, AGENCI.Symbol, CONVERT(VARCHAR, FAKTURY.NUMER) + '/' + CONVERT(VARCHAR, FAKTURY.NUMER_ROZ) + '/' + CONVERT(VARCHAR, FAKTURY.NUMER_ROK), KLIENCI.kodKlienta, Wplaty.symbolPotwierdzenia, Wplaty.rodzajPotwierdzenia, FAKTURY.DATA_WYSTAWIENIA, FAKTURY.TERMIN_ZAPLATY, FAKTURY.SPOSOB_ZAPLATY, AGENCJE.Symbol, Wplaty.dataWplaty, DATEDIFF(day, FAKTURY.TERMIN_ZAPLATY, Wplaty.dataWplaty), FAKTURY.suma_zaplat, FAKTURY.zaplata_data, DATEDIFF(day, FAKTURY.TERMIN_ZAPLATY, FAKTURY.zaplata_data), P.procentProwizji, P.kwotaProwizji, Korekta.netto, Korekta.brutto, Korekta.vat, FAKTURY.idZamowienia, R.[PROCENT PROWIZJI], R.PROWIZJA, FAKTURY.NUMER, R.zablokuj_prowizje, Z.ZP, Z.procentProwizji ORDER BY AGENCI.Symbol, FAKTURY.NUMER