root/trunk/SQL/StoredProcedures/sp_adMotoRaportWyroznienia.txt @ 355

Wersja 355, 1.9 KB (wprowadzona przez marek, 17 years temu)

re #92

Line 
1
2SET ANSI_NULLS ON
3GO
4SET QUOTED_IDENTIFIER ON
5GO
6
7ALTER PROCEDURE [dbo].[sp_adMotoRaportWyroznienia]
8        @rok int,
9        @miesiac int,
10        --@tytul nvarchar(100),
11        @prowizjaPoz money,
12    @prowizjaKat money
13AS
14DECLARE @Wplywy TABLE
15(
16        IdFaktury INT,
17        NumerFaktury INT,
18        Agent nvarchar(100),
19        SymbolFaktury nvarchar(100),
20        DataWplaty DATETIME,
21        Wyroznienie MONEY,
22        DataFaktury DATETIME,
23        Prowizja MONEY,
24        Agencja nvarchar(100)
25)
26DECLARE @Sprzedaz TABLE
27(
28        IdFaktury INT,
29        NumerFaktury INT,
30        Agent nvarchar(100),
31        SymbolFaktury nvarchar(100),
32        DataWplaty DATETIME,
33        Wyroznienie MONEY,
34        DataFaktury DATETIME,
35        Prowizja MONEY,
36        Agencja nvarchar(100)
37)
38
39-- wplywy z wyroznien
40INSERT INTO @Wplywy
41SELECT ID_Faktury AS IdFaktury, NumerFaktury, Symbol AS Agent, Nr_Fk AS SymbolFaktury, DataWplaty, ROUND((Netto * 0.15)/1.15,2) AS Wyroznienie, DATA_WYSTAWIENIA AS DataFaktury,
42procentProwizji AS Prowizja, Agencja
43
44FROM         WplywyByTytul
45WHERE     
46YEAR(dataWplaty) = @rok
47AND MONTH(dataWplaty) = @miesiac
48--AND Tytul IN (@tytul)
49AND Wyroznienie=1
50ORDER BY Symbol, NumerFaktury
51
52UPDATE @Wplywy
53SET Prowizja = @prowizjaPoz
54WHERE Agencja='GS O/POZNAÑ'
55
56UPDATE @Wplywy
57SET Prowizja = @prowizjaKat
58WHERE Agencja='GS O/KATOWICE'
59--SELECT * FROM @Wplywy
60
61UPDATE @Wplywy
62SET Wyroznienie = NULL
63WHERE MONTH(DataFaktury)<@miesiac
64
65
66INSERT INTO @Sprzedaz
67-- sprzedaz reklam z wyroznieniem
68SELECT IdFaktury, NumerFaktury, Agent, SymbolFaktury, DataWplaty, SUM(Wyroznienie) AS Wyroznienie, DataFaktury, NULL AS Prowizja, Agencja
69FROM ReklamyWyroznienie
70WHERE Rok=@rok
71AND Miesiac=@miesiac
72GROUP BY IdFaktury, Rok, Miesiac, Agencja, Agent, NumerFaktury, SymbolFaktury, DataFaktury, DataWplaty
73
74
75SELECT * FROM @Wplywy
76UNION
77SELECT * FROM @Sprzedaz
78WHERE IdFaktury NOT IN (SELECT IdFaktury FROM @Wplywy)
79ORDER BY DataWplaty, Agent, NumerFaktury, Prowizja
80GO
81
82SET ANSI_NULLS OFF
83GO
84SET QUOTED_IDENTIFIER OFF
85GO
86
Notatka: Zobacz TracBrowser aby uzyskać więcej informacji.