1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| PROCEDURE [dbo].[SPX_MYK]
@PeseeDateDebut datetime,
@PeseeDateFin datetime,
@ProduitDebut int,
@ProduitFin int,
@rub1 varchar(50),
@rub2 varchar(50),
@rub3 varchar(50),
@rub4 varchar(50),
@rub5 varchar(50)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @PivotColumnHeaders VARCHAR(1000)
SELECT @PivotColumnHeaders =''+ @rub1 +','+@rub2+','+@rub3+','+@rub4+','+@rub5+''
SELECT *
FROM (
SELECT tblPesee.PeseeID, tblPesee.peseePoidsNet, CONVERT(varchar(10), tblPesee.PeseeDateEntree, 108) AS arrive, CONVERT(varchar(10), tblPesee.PeseeDateSortie, 108)
AS depart, DetailLivraison.SocieteID, tblPesee.ProduitID, CritereNotation.CritereNotationLibelle, Notation_Pesee.Note, tblPesee.VehiculeID, CONVERT(varchar(10),
tblPesee.PeseeDateEntree, 103) AS entree, CONVERT(varchar(10), tblPesee.PeseeDateSortie, 103) AS sortie
FROM Notation_Pesee INNER JOIN
DetailLivraison INNER JOIN
tblPesee ON DetailLivraison.PeseeID = tblPesee.PeseeID AND DetailLivraison.SiteID = tblPesee.SiteID ON Notation_Pesee.PeseeID = tblPesee.PeseeID AND
Notation_Pesee.SiteID = tblPesee.SiteID INNER JOIN
CritereNotation ON Notation_Pesee.CritereNotationID = CritereNotation.CritereNotationID
WHERE ( dbo.FonctionSurEtatDate(tblPesee.PeseeDateSortie,@PeseeDateDebut,@PeseeDateFin)=1 AND dbo.FonctionSurEtat(tblPesee.ProduitID,@ProduitDebut,@ProduitFin)=1)
GROUP BY tblPesee.PeseeID, tblPesee.peseePoidsNet, tblPesee.PeseeDateEntree, tblPesee.PeseeDateSortie, DetailLivraison.SocieteID, CritereNotation.CritereNotationLibelle, Notation_Pesee.Note,
tblPesee.VehiculeID, tblPesee.ProduitID, tblPesee.AgentDeSuppression, tblPesee.DateSuppression, tblPesee.RaisonSuppressionID
HAVING (tblPesee.RaisonSuppressionID IS NULL) AND (tblPesee.DateSuppression IS NULL) AND (tblPesee.AgentDeSuppression IS NULL)
) AS PivotData
PIVOT (
SUM(Note)
FOR CritereNotationLibelle IN (''@PivotColumnHeaders'')
) AS PivotTable
END |
Partager