Index: trunk/SQL/Reports/RozliczenieWplywowWgDatyWplaty2009.txt
===================================================================
--- trunk/SQL/Reports/RozliczenieWplywowWgDatyWplaty2009.txt (revision 290)
+++ trunk/SQL/Reports/RozliczenieWplywowWgDatyWplaty2009.txt (revision 291)
@@ -1,24 +1,52 @@
-SELECT     FAKTURY.ID_FAKTURY, AGENCI.Symbol, CONVERT(VARCHAR, FAKTURY.NUMER) + '/' + CONVERT(VARCHAR, FAKTURY.NUMER_ROZ) 
-                      + '/' + CONVERT(VARCHAR, FAKTURY.NUMER_ROK) AS NR_FK, KLIENCI.kodKlienta, Wplaty.symbolPotwierdzenia, Wplaty.rodzajPotwierdzenia, 
-                      CASE WHEN Korekta.Netto IS NULL THEN SUM(FAKTURA_DETAILS.NETTO) ELSE Korekta.Netto END AS NETTO, CASE WHEN Korekta.Netto IS NULL 
-                      THEN SUM(FAKTURA_DETAILS.VAT) ELSE Korekta.Vat END AS VAT, CASE WHEN Korekta.Brutto IS NULL THEN SUM(FAKTURA_DETAILS.BRUTTO) 
-                      ELSE Korekta.Brutto END AS BRUTTO, 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, 
-                      CASE 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 Wplaty.rodzajPotwierdzenia WHEN 'ECARD' THEN 0 ELSE CASE WHEN FAKTURY.idZamowienia IS NULL 
-                      THEN R.[Procent Prowizji] ELSE P.procentProwizji END END END AS procentProwizji, CASE 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 Wplaty.rodzajPotwierdzenia WHEN 'ECARD' THEN 0 ELSE CASE WHEN FAKTURY.idZamowienia IS NULL 
-                      THEN R.[Prowizja] ELSE P.kwotaProwizji END END END AS kwotaProwizji
-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 AGENCI.ID_AGENCJI = 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
+--declare @rok int
+--declare @miesiac int
+
+--set @rok=2009
+--set @miesiac=1
+
+
+SELECT 
+FAKTURY.ID_FAKTURY, 
+AGENCI.Symbol, 
+CONVERT(VARCHAR, FAKTURY.NUMER) + '/' + CONVERT(VARCHAR, FAKTURY.NUMER_ROZ) + '/' + CONVERT(VARCHAR, FAKTURY.NUMER_ROK) AS NR_FK, 
+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 Z.procentProwizji
+    WHEN (NOT R.zablokuj_prowizje IS NULL) AND R.zablokuj_prowizje = 1 THEN R.[Procent Prowizji] 
+	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 R.[Procent Prowizji] 
+			ELSE P.procentProwizji 
+		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 AGENCI.ID_AGENCJI = 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, AGENCI.Symbol, CONVERT(VARCHAR, FAKTURY.NUMER) + '/' + CONVERT(VARCHAR, 
@@ -27,4 +55,4 @@
                       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
+                      FAKTURY.idZamowienia, R.[PROCENT PROWIZJI], R.PROWIZJA, FAKTURY.NUMER, R.zablokuj_prowizje, Z.ZP, Z.procentProwizji
 ORDER BY AGENCI.Symbol, FAKTURY.NUMER
