I have 3 tables (1. Emp, 2. OnLeave,3.DaysWeeks). Im trying to write a pivot query that displyas empname, and calenderdates as columns)
Im getting following error, when I try to run the pivot query.
1.Unclosed quotation mark after the character string '2016-12-31])) as pvt'.
2.Incorrect syntax near '2016-12-31])) as pvt'
    DECLARE @cols AS NVARCHAR(MAX),
@query  AS NVARCHAR(MAX)
SELECT @cols = STUFF((SELECT  ',' + QUOTENAME([CalDate]) 
                    FROM DaysWeeks
            FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)') 
        ,1,1,'')
SELECT @query = 
'WITH cte AS (
SELECT EmpDays.Employee,EmpDays.CalDate, ISNULL(v.VacationType,1) AS LeaveStatus
FROM dbo.OnLeave v
RIGHT OUTER JOIN
 (SELECT e.EmpID AS Employee, dw.CalDate AS CalDate, dw.DayOfWeekName AS DoWName
  FROM daysweeks dw,
      dbo.Emp e
      WHERE dw.CalYear = 2016 AND dw.monthnumber=1) AS EmpDays
ON
   v.EmpID = EmpDays.Employee
   AND v.StartingDate <= empdays.CalDate 
   AND v.EndingDate >= empdays.CalDate
)
SELECT * FROM cte PIVOT 
(Max(cte.LeaveStatus) FOR cte.CalDate in([' + @cols + '])) as pvt'
EXEC SP_EXECUTESQL @query