| [790] | 1 |
|
|---|
| 2 | SET ANSI_NULLS ON
|
|---|
| 3 | GO
|
|---|
| 4 | SET QUOTED_IDENTIFIER ON
|
|---|
| 5 | GO
|
|---|
| 6 |
|
|---|
| 7 | -- =============================================
|
|---|
| 8 | -- Author: <Author,,Name>
|
|---|
| 9 | -- Create date: <Create Date,,>
|
|---|
| 10 | -- Description: <Description,,>
|
|---|
| 11 | -- =============================================
|
|---|
| 12 | ALTER PROCEDURE [dbo].[sp_GetZestawienieZamowien]
|
|---|
| 13 | -- Add the parameters for the stored procedure here
|
|---|
| 14 | @agencja NVARCHAR(50)=NULL,
|
|---|
| 15 | @nrZamowienia INT=NULL,
|
|---|
| 16 | @rokZamowienia INT=NULL,
|
|---|
| 17 | @miesiacZamowienia INT=NULL,
|
|---|
| 18 | @kodAgenta NVARCHAR(3)=NULL,
|
|---|
| 19 | @kodKlienta NVARCHAR(10)=NULL
|
|---|
| 20 |
|
|---|
| 21 | AS
|
|---|
| 22 | BEGIN
|
|---|
| 23 |
|
|---|
| 24 | SET NOCOUNT ON;
|
|---|
| 25 |
|
|---|
| 26 | DECLARE @query nvarchar(4000)
|
|---|
| 27 |
|
|---|
| 28 | SET @query = '
|
|---|
| 29 | DECLARE @ZestawienieZamowien TABLE
|
|---|
| 30 | (
|
|---|
| 31 | idZamowienia INT,
|
|---|
| 32 | agencja NVARCHAR(50),
|
|---|
| 33 | agent NVARCHAR(50),
|
|---|
| 34 | idKlienta INT,
|
|---|
| 35 | nrZamowienia INT,
|
|---|
| 36 | rokZamowienia INT,
|
|---|
| 37 | kodAgenta NVARCHAR(3),
|
|---|
| 38 | nrZamowieniaExt NVARCHAR(76),
|
|---|
| 39 | iloscReklam INT,
|
|---|
| 40 | wartoscNetto FLOAT,
|
|---|
| 41 | kwotaWalutaBrutto float,
|
|---|
| 42 | data_od SMALLDATETIME,
|
|---|
| 43 | data_od_bez_FK SMALLDATETIME,
|
|---|
| 44 | nettoZafakturowane MONEY,
|
|---|
| 45 | DoZafakturowania FLOAT,
|
|---|
| 46 | kodKlienta NVARCHAR(10),
|
|---|
| 47 | Brutto_Euro_Miano NVARCHAR(4)
|
|---|
| 48 | )
|
|---|
| 49 |
|
|---|
| 50 | DECLARE @SumaNaNastepnejFakturze TABLE
|
|---|
| 51 | (
|
|---|
| 52 | idZamowienia INT,
|
|---|
| 53 | SumaNaNastepnejFakturze DECIMAL(18,2)
|
|---|
| 54 | )
|
|---|
| 55 |
|
|---|
| 56 | INSERT INTO @ZestawienieZamowien
|
|---|
| 57 | SELECT TOP 1000 idZamowienia, agencja, agent, idKlienta, nrZamowienia, rokZamowienia,
|
|---|
| 58 | kodAgenta, nrZamowieniaExt, iloscReklam, wartoscNetto, kwotaWalutaBrutto, data_od, data_od_bez_FK,
|
|---|
| 59 | nettoZafakturowane, DoZafakturowania, kodKlienta, Brutto_Euro_Miano
|
|---|
| 60 | FROM VIEW_ZESTAWIENIE_ZAMOWIEN_NOWE WHERE 1=1 '
|
|---|
| 61 |
|
|---|
| 62 | IF NOT (@agencja IS NULL)
|
|---|
| 63 | SET @query = @query + ' AND agencja=''' + @agencja + ''' '
|
|---|
| 64 |
|
|---|
| 65 | IF NOT (@nrZamowienia IS NULL)
|
|---|
| 66 | SET @query = @query + ' AND nrZamowienia=' + CAST(@nrZamowienia as nvarchar) + ' '
|
|---|
| 67 |
|
|---|
| 68 | IF NOT (@rokZamowienia IS NULL)
|
|---|
| 69 | SET @query = @query + ' AND rokZamowienia=' + CAST(@rokZamowienia as nvarchar) + ' '
|
|---|
| 70 |
|
|---|
| 71 | IF NOT (@miesiacZamowienia IS NULL)
|
|---|
| 72 | SET @query = @query + ' AND (DATEPART(MONTH, data_od)=' + CAST(@miesiacZamowienia as nvarchar) + ' OR DATEPART(MONTH, data_od_bez_FK)=' + CAST(@miesiacZamowienia as nvarchar) + ') '
|
|---|
| 73 |
|
|---|
| 74 | IF NOT (@kodAgenta IS NULL)
|
|---|
| 75 | SET @query = @query + ' AND kodAgenta=''' + @kodAgenta + ''' '
|
|---|
| 76 |
|
|---|
| 77 | IF NOT (@kodKlienta IS NULL)
|
|---|
| 78 | SET @query = @query + ' AND kodKlienta=''' + @kodKlienta + ''' '
|
|---|
| 79 |
|
|---|
| 80 | IF (NOT (@rokZamowienia IS NULL)) AND (NOT (@miesiacZamowienia IS NULL))
|
|---|
| 81 | BEGIN
|
|---|
| 82 |
|
|---|
| 83 | SET @query = @query + '
|
|---|
| 84 | DECLARE @startDate DATETIME
|
|---|
| 85 | DECLARE @endDate DATETIME
|
|---|
| 86 |
|
|---|
| 87 | SELECT @startDate=dateadd(yy,(' + CAST(@rokZamowienia as nvarchar) + '-1900),0) + dateadd(mm,' + CAST(@miesiacZamowienia as nvarchar) + '-1,0) + 0
|
|---|
| 88 | SELECT @endDate=dateadd(yy,(' + CAST(@rokZamowienia as nvarchar) + '-1900),0) + dateadd(mm,' + CAST(@miesiacZamowienia as nvarchar) + '-1+3,0) + 0
|
|---|
| 89 |
|
|---|
| 90 | INSERT INTO @SumaNaNastepnejFakturze
|
|---|
| 91 | SELECT Z.idZamowienia, SUM(ROUND((R.[Cena Jedn] * (1-R.Rabat)), 2)) AS SumaFaktura FROM Reklama R
|
|---|
| 92 | INNER JOIN Zamowienia Z ON R.idZamowienia=Z.idZamowienia
|
|---|
| 93 | INNER JOIN [Uka¿e siê w nr] U ON U.ReklamaId=R.ReklamaId
|
|---|
| 94 | INNER JOIN Nr N ON N.Tyt=R.[Tytu³] AND N.NRW=U.[Nr Wydania]
|
|---|
| 95 | WHERE
|
|---|
| 96 | Z.rodzajFakturowania=0
|
|---|
| 97 | AND U.Status=0
|
|---|
| 98 | AND U.Zafakturowana=0
|
|---|
| 99 | AND YEAR(N.Data_W)=' + CAST(@rokZamowienia as nvarchar) + ' AND MONTH(N.Data_W)=' + CAST(@miesiacZamowienia as nvarchar) + '
|
|---|
| 100 | GROUP BY Z.idZamowienia
|
|---|
| 101 | UNION
|
|---|
| 102 | SELECT Z.idZamowienia, SUM(ROUND((R.[Cena Jedn] * (1-R.Rabat)), 2)) AS SumaFaktura FROM Reklama R
|
|---|
| 103 | INNER JOIN Zamowienia Z ON R.idZamowienia=Z.idZamowienia
|
|---|
| 104 | INNER JOIN [Uka¿e siê w nr] U ON U.ReklamaId=R.ReklamaId
|
|---|
| 105 | INNER JOIN Nr N ON N.Tyt=R.[Tytu³] AND N.NRW=U.[Nr Wydania]
|
|---|
| 106 | WHERE
|
|---|
| 107 | Z.rodzajFakturowania=1
|
|---|
| 108 | AND U.Status=0
|
|---|
| 109 | AND U.Zafakturowana=0
|
|---|
| 110 | AND N.Data_W>=@startDate AND N.Data_W<@endDate
|
|---|
| 111 | GROUP BY Z.idZamowienia
|
|---|
| 112 | UNION
|
|---|
| 113 | SELECT Z.idZamowienia, SUM(ROUND((R.[Cena Jedn] * (1-R.Rabat)), 2)) AS SumaFaktura FROM Reklama R
|
|---|
| 114 | INNER JOIN Zamowienia Z ON R.idZamowienia=Z.idZamowienia
|
|---|
| 115 | INNER JOIN [Uka¿e siê w nr] U ON U.ReklamaId=R.ReklamaId
|
|---|
| 116 | INNER JOIN Nr N ON N.Tyt=R.[Tytu³] AND N.NRW=U.[Nr Wydania]
|
|---|
| 117 | WHERE
|
|---|
| 118 | Z.rodzajFakturowania=2
|
|---|
| 119 | AND U.Status=0
|
|---|
| 120 | AND U.Zafakturowana=0
|
|---|
| 121 | GROUP BY Z.idZamowienia
|
|---|
| 122 | '
|
|---|
| 123 | END
|
|---|
| 124 |
|
|---|
| 125 |
|
|---|
| 126 |
|
|---|
| 127 |
|
|---|
| 128 | SET @query = @query + ' SELECT ZZ.*, SNF.SumaNaNastepnejFakturze FROM @ZestawienieZamowien ZZ '
|
|---|
| 129 | SET @query = @query + ' LEFT OUTER JOIN @SumaNaNastepnejFakturze SNF ON SNF.idZamowienia=ZZ.idZamowienia '
|
|---|
| 130 | SET @query = @query + ' ORDER BY ZZ.data_od_bez_FK, ZZ.nrZamowienia, ZZ.kodKlienta '
|
|---|
| 131 |
|
|---|
| 132 | --PRINT @query
|
|---|
| 133 |
|
|---|
| 134 |
|
|---|
| 135 | EXECUTE sp_executesql @query
|
|---|
| 136 | RETURN
|
|---|
| 137 |
|
|---|
| 138 | END
|
|---|
| 139 | GO
|
|---|
| 140 |
|
|---|
| 141 | SET ANSI_NULLS OFF
|
|---|
| 142 | GO
|
|---|
| 143 | SET QUOTED_IDENTIFIER OFF
|
|---|
| 144 | GO
|
|---|
| 145 |
|
|---|