Index: trunk/RaportySQL/SprzedazReklam2009.rdl
===================================================================
--- trunk/RaportySQL/SprzedazReklam2009.rdl (revision 162)
+++ trunk/RaportySQL/SprzedazReklam2009.rdl (revision 233)
@@ -163,20 +163,51 @@
       <Query>
         <DataSourceName>BAZA_REKLAM</DataSourceName>
-        <CommandText>SELECT        Agencja, Agent, ROK, MS, NrRoz, SUM(NETTO) AS NETTO, SUM(VAT) AS VAT, SUM(BRUTTO) AS BRUTTO, SUM(SZap) AS SUMAZAPLAT, COUNT(NETTO) 
-                         AS ilosc
-FROM            (SELECT        AGENCJE.Symbol AS Agencja, AGENCI.Nazwisko + ' ' + AGENCI.ImiÄ AS Agent, YEAR(FAKTURY.DATA_SPRZEDAZY) AS ROK, 
-                                                    MONTH(FAKTURY.DATA_SPRZEDAZY) AS MS, FAKTURY.NUMER_ROZ AS NrRoz, SUM(FAKTURA_DETAILS.NETTO) AS NETTO, 
-                                                    SUM(FAKTURA_DETAILS.VAT) AS VAT, SUM(FAKTURA_DETAILS.BRUTTO) AS BRUTTO, FAKTURY.suma_zaplat AS SZap
-                          FROM            FAKTURY INNER JOIN
-                                                    FAKTURA_DETAILS ON FAKTURY.ID_FAKTURY = FAKTURA_DETAILS.ID_FAKTURY LEFT JOIN
-                                                    AGENCI ON FAKTURY.NUMER_ROZ = AGENCI.F_ROZ LEFT JOIN
-                                                    AGENCJE ON FAKTURY.ID_SPRZEDAWCY = AGENCJE.Id_agencji
-           where       (YEAR(FAKTURY.DATA_SPRZEDAZY) = 2009) AND (MONTH(FAKTURY.DATA_SPRZEDAZY) = 1) AND (AGENCJE.Id_agencji&lt;&gt;4 OR FAKTURY.NUMER_ROZ ='KAT')
-           AND (AGENCJE.Id_agencji &lt;&gt;6 OR FAKTURY.NUMER_ROZ ='POZ')
-           GROUP BY AGENCJE.Symbol, AGENCI.Nazwisko + ' ' + AGENCI.ImiÄ, FAKTURY.ID_FAKTURY, FAKTURY.DATA_SPRZEDAZY, 
-                                                    YEAR(FAKTURY.DATA_SPRZEDAZY), FAKTURY.NUMER_ROZ, FAKTURY.suma_zaplat
-               ) T
+        <CommandText>SELECT Agencja, Agent, ROK, MS, NrRoz, 
+SUM(NETTO) AS NETTO, SUM(VAT) AS VAT, SUM(BRUTTO) AS BRUTTO, SUM(SZap) AS SUMAZAPLAT, COUNT(NETTO) AS ilosc
+FROM 
+(
+	SELECT AGENCJE.Symbol AS Agencja, AGENCI.Nazwisko + ' ' + AGENCI.ImiÄ AS Agent, 
+	YEAR(FAKTURY.DATA_SPRZEDAZY) AS ROK, MONTH(FAKTURY.DATA_SPRZEDAZY) AS MS, FAKTURY.NUMER_ROZ AS NrRoz, 
+	NETTO = CASE 
+				WHEN Korekta.Netto IS NULL THEN SUM(FAKTURA_DETAILS.NETTO)
+				ELSE Korekta.Netto
+			END,
+	VAT = CASE 
+				WHEN Korekta.Vat 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,	
+
+--	SUM(FAKTURA_DETAILS.NETTO) AS NETTO, 
+--	SUM(FAKTURA_DETAILS.VAT) AS VAT, 
+--	SUM(FAKTURA_DETAILS.BRUTTO) AS BRUTTO, 
+	
+	FAKTURY.suma_zaplat AS SZap
+	FROM FAKTURY 
+	INNER JOIN FAKTURA_DETAILS ON FAKTURY.ID_FAKTURY = FAKTURA_DETAILS.ID_FAKTURY 
+	LEFT JOIN AGENCI ON FAKTURY.NUMER_ROZ = AGENCI.F_ROZ 
+	LEFT JOIN AGENCJE ON FAKTURY.ID_SPRZEDAWCY = AGENCJE.Id_agencji
+    LEFT OUTER JOIN dbo.VIEW_KOREKTY AS Korekta ON Korekta.idFakturyKorekta = FAKTURY.ID_FAKTURY
+	WHERE 
+	(YEAR(FAKTURY.DATA_SPRZEDAZY) =@rok) AND (MONTH(FAKTURY.DATA_SPRZEDAZY) = @miesiac) 
+	AND (AGENCJE.Id_agencji&lt;&gt;4 OR FAKTURY.NUMER_ROZ ='KAT') AND (AGENCJE.Id_agencji &lt;&gt;6 OR FAKTURY.NUMER_ROZ ='POZ')
+	AND FAKTURY.KOREKTA=0
+	GROUP BY AGENCJE.Symbol, AGENCI.Nazwisko + ' ' + AGENCI.ImiÄ, FAKTURY.ID_FAKTURY, FAKTURY.DATA_SPRZEDAZY, 
+	YEAR(FAKTURY.DATA_SPRZEDAZY), FAKTURY.NUMER_ROZ, FAKTURY.suma_zaplat, FAKTURY.Korekta,
+	Korekta.Netto, Korekta.Vat, Korekta.Brutto
+) T
 GROUP BY Agencja, Agent, ROK, MS, NrRoz
 ORDER BY Agencja, Agent</CommandText>
+        <QueryParameters>
+          <QueryParameter Name="@rok">
+            <Value>=Parameters!rok.Value</Value>
+          </QueryParameter>
+          <QueryParameter Name="@miesiac">
+            <Value>=Parameters!miesiac.Value</Value>
+          </QueryParameter>
+        </QueryParameters>
         <rd:UseGenericDesigner>true</rd:UseGenericDesigner>
       </Query>
@@ -366,16 +397,33 @@
       <Query>
         <DataSourceName>BAZA_REKLAM</DataSourceName>
-        <CommandText>SELECT        Agencja, Agent, ROK, MS, NrRoz, SUM(NETTO) AS NETTO, SUM(VAT) AS VAT, SUM(BRUTTO) AS BRUTTO, SUM(SZap) AS SUMAZAPLAT, COUNT(NETTO) 
-                         AS ilosc
-FROM            (SELECT        AGENCJE.Symbol AS Agencja, AGENCI.Nazwisko + ' ' + AGENCI.ImiÄ AS Agent, YEAR(FAKTURY.DATA_SPRZEDAZY) AS ROK, 
-                                                    MONTH(FAKTURY.DATA_SPRZEDAZY) AS MS, FAKTURY.NUMER_ROZ AS NrRoz, SUM(FAKTURA_DETAILS.NETTO) AS NETTO, 
-                                                    SUM(FAKTURA_DETAILS.VAT) AS VAT, SUM(FAKTURA_DETAILS.BRUTTO) AS BRUTTO, FAKTURY.suma_zaplat AS SZap
-                          FROM            FAKTURY INNER JOIN
-                                                    FAKTURA_DETAILS ON FAKTURY.ID_FAKTURY = FAKTURA_DETAILS.ID_FAKTURY INNER JOIN
-                                                    AGENCI ON FAKTURY.NUMER_ROZ = AGENCI.F_ROZ INNER JOIN
-                                                    AGENCJE ON AGENCI.ID_AGENCJI = AGENCJE.Id_agencji
-                          GROUP BY AGENCJE.Symbol, AGENCI.Nazwisko + ' ' + AGENCI.ImiÄ, FAKTURY.ID_FAKTURY, FAKTURY.DATA_SPRZEDAZY, 
-                                                    YEAR(FAKTURY.DATA_SPRZEDAZY), FAKTURY.NUMER_ROZ, FAKTURY.suma_zaplat
-                          HAVING         (YEAR(FAKTURY.DATA_SPRZEDAZY) = @rok) AND (MONTH(FAKTURY.DATA_SPRZEDAZY) = @miesiac) and  SUM(FAKTURA_DETAILS.VAT)&lt;&gt;0 ) AS sprzedaz
+        <CommandText>SELECT Agencja, Agent, ROK, MS, NrRoz, 
+SUM(NETTO) AS NETTO, SUM(VAT) AS VAT, SUM(BRUTTO) AS BRUTTO, SUM(SZap) AS SUMAZAPLAT, COUNT(NETTO) AS ilosc
+FROM 
+(
+	SELECT  AGENCJE.Symbol AS Agencja,  AGENCI.Nazwisko + ' ' + AGENCI.ImiÄ AS Agent, YEAR(FAKTURY.DATA_SPRZEDAZY) AS ROK, 
+	MONTH(FAKTURY.DATA_SPRZEDAZY) AS MS, FAKTURY.NUMER_ROZ AS NrRoz,
+	NETTO = CASE 
+				WHEN Korekta.Netto IS NULL THEN SUM(FAKTURA_DETAILS.NETTO)
+				ELSE Korekta.Netto
+			END,
+	VAT = CASE 
+				WHEN Korekta.Vat 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.suma_zaplat AS SZap
+		FROM FAKTURY 
+			INNER JOIN FAKTURA_DETAILS ON FAKTURY.ID_FAKTURY = FAKTURA_DETAILS.ID_FAKTURY 
+			INNER JOIN AGENCI ON FAKTURY.NUMER_ROZ = AGENCI.F_ROZ 
+			INNER JOIN AGENCJE ON AGENCI.ID_AGENCJI = AGENCJE.Id_agencji
+			LEFT OUTER JOIN dbo.VIEW_KOREKTY AS Korekta ON Korekta.idFakturyKorekta = FAKTURY.ID_FAKTURY
+		GROUP BY AGENCJE.Symbol, AGENCI.Nazwisko + ' ' + AGENCI.ImiÄ, FAKTURY.ID_FAKTURY, FAKTURY.DATA_SPRZEDAZY, 
+				 YEAR(FAKTURY.DATA_SPRZEDAZY), FAKTURY.NUMER_ROZ, FAKTURY.suma_zaplat,
+				 Korekta.Netto, Korekta.Vat, Korekta.Brutto
+		HAVING (YEAR(FAKTURY.DATA_SPRZEDAZY) = @rok) AND (MONTH(FAKTURY.DATA_SPRZEDAZY) = @miesiac) and  SUM(FAKTURA_DETAILS.VAT)&lt;&gt;0 
+) AS sprzedaz
 GROUP BY Agencja, Agent, ROK, MS, NrRoz
 ORDER BY Agencja, Agent</CommandText>
