a.Cat_A_Countf=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='A' or isnull(b.Cat,'')='a') and b.Status = 'Completed'),
a.Cat_A_CountWUH=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='A' or isnull(b.Cat,'')='a') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_A_CountBASF=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='A' or isnull(b.Cat,'')='a') and (b.Verified_Date is not null or b.Verified_Date!=''))
,a.Cat_B_Count=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b')) ,
a.Cat_B_Countf=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b') and b.Status = 'Completed'),
a.Cat_B_CountWUH=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_B_CountBASF=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b') and (b.Verified_Date is not null or b.Verified_Date!=''))
,a.Cat_C_Count=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c')) ,
a.Cat_C_Countf=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c') and b.Status = 'Completed'),
a.Cat_C_CountWUH=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_C_CountBASF=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c') and (b.Verified_Date is not null or b.Verified_Date!=''))
,a.Cat_D_Count=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d')) ,
a.Cat_D_Countf=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d') and b.Status = 'Completed'),
a.Cat_D_CountWUH=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_D_CountBASF=(select count(1) from #AllPunchlistFromSortTemp1 b where a.Disc=b.Disc AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d') and (b.Verified_Date is not null or b.Verified_Date!=''))
a.Cat_A_Countf=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='A' or isnull(b.Cat,'')='a') and b.Status = 'Completed'),
a.Cat_A_CountWUH=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='A' or isnull(b.Cat,'')='a') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_A_CountBASF=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='A' or isnull(b.Cat,'')='a') and (b.Verified_Date is not null or b.Verified_Date!=''))
,a.Cat_B_Count=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b')) ,
a.Cat_B_Countf=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b') and b.Status = 'Completed'),
a.Cat_B_CountWUH=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_B_CountBASF=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b') and (b.Verified_Date is not null or b.Verified_Date!=''))
,a.Cat_C_Count=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c')) ,
a.Cat_C_Countf=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c') and b.Status = 'Completed'),
a.Cat_C_CountWUH=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_C_CountBASF=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c') and (b.Verified_Date is not null or b.Verified_Date!=''))
,a.Cat_D_Count=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d')) ,
a.Cat_D_Countf=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d') and b.Status = 'Completed'),
a.Cat_D_CountWUH=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_D_CountBASF=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d') and (b.Verified_Date is not null or b.Verified_Date!=''))
//strSql.AppendLine(" INTO #PunchlistFromProgressTemp from #AllPunchlistFromProgressTemp where ProjectId = @ProjectId group by Sub_Sys_No ");
//strSql.AppendLine(" update a set a.ActualDateCount=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND isnull(b.Actual_Date,'')<>'') ");
//strSql.AppendLine(" ,a.ClearedByCount=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND isnull(b.Cleared_By,'')<>'') ");
//strSql.AppendLine(" ,a.ConfirmedByCount=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND isnull(b.Confirmed_By,'')<>'') ");
//strSql.AppendLine(" ,a.VerifiedByCount=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND isnull(b.Verified_By,'')<>'') ");
cast(0 as decimal(18, 2)) Cat_A_Countf,cast(0 as decimal(18, 2)) Cat_A_CountPercent, cast(0 as decimal(18, 2)) Cat_A_CountWUH, cast(0 as decimal(18, 2)) Cat_A_CountBASF,
cast(0 as decimal(18, 2)) Cat_B_Countf,cast(0 as decimal(18, 2)) Cat_B_CountPercent, cast(0 as decimal(18, 2)) Cat_B_CountWUH, cast(0 as decimal(18, 2)) Cat_B_CountBASF,
cast(0 as decimal(18, 2)) Cat_C_Countf,cast(0 as decimal(18, 2)) Cat_C_CountPercent, cast(0 as decimal(18, 2)) Cat_C_CountWUH, cast(0 as decimal(18, 2)) Cat_C_CountBASF,
cast(0 as decimal(18, 2)) Cat_D_Countf,cast(0 as decimal(18, 2)) Cat_D_CountPercent, cast(0 as decimal(18, 2)) Cat_D_CountWUH, cast(0 as decimal(18, 2)) Cat_D_CountBASF,
cast(0 as decimal(18, 2)) allCount,cast(0 as decimal(18, 2)) allfinshedCount,cast(0 as decimal(18, 2)) allCountPercent,cast(0 as decimal(18, 2)) allWUH, cast(0 as decimal(18, 2)) allBASF
allWUH=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
allBASF=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No and (b.Verified_Date is not null or b.Verified_Date!='')),
a.Cat_A_Count=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='A' or isnull(b.Cat,'')='a')),
a.Cat_A_Countf=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='A' or isnull(b.Cat,'')='a') and b.Status = 'Completed'),
a.Cat_A_CountWUH=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='A' or isnull(b.Cat,'')='a') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_A_CountBASF=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='A' or isnull(b.Cat,'')='a') and (b.Verified_Date is not null or b.Verified_Date!=''))
,a.Cat_B_Count=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b')) ,
a.Cat_B_Countf=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b') and b.Status = 'Completed'),
a.Cat_B_CountWUH=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_B_CountBASF=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b') and (b.Verified_Date is not null or b.Verified_Date!=''))
,a.Cat_C_Count=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c')) ,
a.Cat_C_Countf=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c') and b.Status = 'Completed'),
a.Cat_C_CountWUH=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_C_CountBASF=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c') and (b.Verified_Date is not null or b.Verified_Date!=''))
,a.Cat_D_Count=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d')) ,
a.Cat_D_Countf=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d') and b.Status = 'Completed'),
a.Cat_D_CountWUH=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d') and (b.Confirmed_Date is not null or b.Confirmed_Date!='')),
a.Cat_D_CountBASF=(select count(1) from #AllPunchlistFromProgressTemp b where a.Sub_Sys_No=b.Sub_Sys_No AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d') and (b.Verified_Date is not null or b.Verified_Date!=''))
a.Cat_A_CountPercent=(case ISNULL(a.Cat_A_Count,0) when 0 then 0 else CONVERT(DECIMAL(10,2),100*(ISNULL(a.Cat_A_Countf,0)*1.0/ISNULL(a.Cat_A_Count,0))) end ),
a.Cat_B_CountPercent=(case ISNULL(a.Cat_B_Count,0) when 0 then 0 else CONVERT(DECIMAL(10,2),100*(ISNULL(a.Cat_B_Countf,0)*1.0/ISNULL(a.Cat_B_Count,0))) end ),
a.Cat_C_CountPercent=(case ISNULL(a.Cat_C_Count,0) when 0 then 0 else CONVERT(DECIMAL(10,2),100*(ISNULL(a.Cat_C_Countf,0)*1.0/ISNULL(a.Cat_C_Count,0))) end ),
a.Cat_D_CountPercent=(case ISNULL(a.Cat_D_Count,0) when 0 then 0 else CONVERT(DECIMAL(10,2),100*(ISNULL(a.Cat_D_Countf,0)*1.0/ISNULL(a.Cat_D_Count,0))) end ),
a.allCountPercent=(case ISNULL(a.allCount,0) when 0 then 0 else CONVERT(DECIMAL(10,2),100*(ISNULL(a.allfinshedCount,0)*1.0/ISNULL(a.allCount,0))) end )