• Hi David,

    I like what you did with the query.  It looks much "cleaner" than before. However, I get the following message: Line 59 (highlighted): Incorrect syntax near 'Daily Total'

    Thank you.

    CREATE PROCEDURE MTDPerformance3

    AS

    SELECT department,

      [Date],

      SUM(CASE [Product] WHEN 'E-Tech' THEN [output] else 0 END) as 'E-TECH',

      SUM(CASE [Product] WHEN 'E-9' THEN  [output] else 0 END) as 'E-9',

      SUM(CASE [Product] WHEN 'E-7' THEN  [output] else 0 END) as 'E-7',

      SUM(CASE [Product] WHEN 'E-6' THEN  [output] else 0 END) as 'E-6',

      SUM([output]) as 'Total Output',

      Manpower,

      holidays,

      Absent,

      Overtime,

      Launch,

      [Daily Total]

    FROM (SELECT tblInput_Output.department,

            tblInput_Output.[Date],

            ([1st-output] + [2nd-output] + [3rd-output] + [OT-output]) as  'Output',

            ([1st Shift Manpower]+[2nd Shift Manpower]+[3rd Shift Manpower]) as 'Manpower',

            holidays,

            ([Absent 1st Shift]+[Absent 2nd Shift]+[Absent 3rd Shift]) as 'Absent',

            ([Overtime 1st Shift]+[Overtime 2nd Shift]+[Overtime 3rd Shift]) as 'Overtime',

            ([Launch 1st Shift]+[Launch 2nd Shift]+[Launch 3rd Shift]) as 'Launch',

           

             Case Left( Datename(dw,tblAbsentOverLaunch.[Date]),1)

              When 'S' then ([Overtime 1st Shift]+[Overtime 2nd Shift]+[Overtime 3rd Shift])

     else (( [1st-output]+[2nd-output]+[3rd-output]+[OT-output]) +( [1st Shift Manpower]+[2nd Shift Manpower]+[3rd Shift Manpower]) * 8 ) -

      ([Absent 1st Shift]+[Absent 2nd Shift]+[Absent 3rd Shift]) +( [Overtime 1st Shift]+[Overtime 2nd Shift]+[Overtime 3rd Shift])

              End as 'Daily Total'

     

            FROM tblAbsentOverLaunch

              RIGHT OUTER JOIN tblProduct

              INNER JOIN tblInput_Output

                ON tblProduct.department =  tblInput_Output.department

                AND tblProduct.[Part Number] =  tblInput_Output.[Part Number]

              INNER JOIN tblCensusDaily

                ON tblInput_Output.department =  tblCensusDaily.Department

                AND tblInput_Output.[Date] =  tblCensusDaily.[Date]

              LEFT OUTER JOIN tblHolidaySchedule

                ON  tblCensusDaily.[Date] =  tblHolidaySchedule.[Date]

              ON tblAbsentOverLaunch.[Date] =  tblCensusDaily.[Date]

              AND tblAbsentOverLaunch.department =  tblCensusDaily.Department

            WHERE ( tblInput_Output.department = N'110')

            AND ( tblInput_Output.[Date] >= CONVERT(DATETIME, '2004-04-01 00:00:00', 102))

         

    GROUP BY

      department,

      [product],

      [Date],

      [Manpower],

      holidays,

      [Absent],

      [Overtime],

      [Launch],

      [Daily Total]

    GO