SELECT a.site,a.OrderNo,a.ItemNo,a.OperationDesc,a.PartNo,dbo.Get_Part_Spec(a.Site,a.PartNo) as PartDesc,a.QtyRequired,
a.QtyReported,a.QtyApprove,isnull(SOP.TotalFinishedQty,0) lastApproveQty,b.NeedDate as planFinishTime,dbo.Get_SORouting_ClosedFlag(a.site,a.OrderNo,a.ItemNo) as ClosedFlag
from SORouting a left join ShopOrder b on a.site=b.site and a.orderNo=b.orderNo
LEFT JOIN SORoutingOutput SOP ON a.site=SOP.site and a.OrderNo=SOP.OrderNo and SOP.itemNo=dbo.Get_SORouting_PreviousOperationItemNo(a.site,a.OrderNo,a.itemNo)
Left Join PartSubPropertiesValue as S90 On S90.Site=a.Site and S90.PartNo=a.PartNo and S90.RecordType='P' and S90.SubCodeSeqNo=1 and S90.PropertiesItemNo='WATER TEMP'
Left Join PartSubPropertiesValue as S91 On S91.Site=a.Site and S91.PartNo=a.PartNo and S91.RecordType='P' and S91.SubCodeSeqNo=1 and S91.PropertiesItemNo='WATER TIME'
Left Join PartSubPropertiesValue as S92 On S92.Site=a.Site and S92.PartNo=a.PartNo and S92.RecordType='P' and S92.SubCodeSeqNo=1 and S92.PropertiesItemNo='POST CURE-TEMP'
Left Join PartSubPropertiesValue as S93 On S93.Site=a.Site and S93.PartNo=a.PartNo and S93.RecordType='P' and S93.SubCodeSeqNo=1 and S93.PropertiesItemNo='POST CURE-TIME'
LEFT JOIN PartSubPropertiesValue p3 on p3.site=a.site and p3.PartNo=a.PartNo and p3.PropertiesItemNo='MATERIAL'
where a.partNo like 'FP%' and (b.status not in ('已取消','已关闭','已停工','已计划') and a.QtyRequired>a.QtyReported) and dbo.Get_WorkCenter_ProLineNo(a.site,a.WorkCenterNo)='TREAT'
and( (isnull(SOP.TotalFinishedQty,0)>0 and isnull(SOP.TotalFinishedQty,0)>a.QtyReported) or a.itemNo=10) and b.enterDate>'2022-01-01'
LEFT JOIN SOScheduledRouting SOP1 ON SOP1.site=t.site and SOP1.OrderNo=t.OrderNo and SOP1.SeqNo = isnull(T.PreviousSeqNo,-1)
,SORouting a left join ShopOrder b on a.site=b.site and a.orderNo=b.orderNo
LEFT JOIN SORoutingOutput SOP ON a.site=SOP.site and a.OrderNo=SOP.OrderNo and SOP.itemNo=dbo.Get_SORouting_PreviousOperationItemNo(a.site,a.OrderNo,a.itemNo)
Left Join PartSubPropertiesValue as S90 On S90.Site=a.Site and S90.PartNo=a.PartNo and S90.RecordType='P' and S90.SubCodeSeqNo=1 and S90.PropertiesItemNo='WATER TEMP'
Left Join PartSubPropertiesValue as S91 On S91.Site=a.Site and S91.PartNo=a.PartNo and S91.RecordType='P' and S91.SubCodeSeqNo=1 and S91.PropertiesItemNo='WATER TIME'
Left Join PartSubPropertiesValue as S92 On S92.Site=a.Site and S92.PartNo=a.PartNo and S92.RecordType='P' and S92.SubCodeSeqNo=1 and S92.PropertiesItemNo='POST CURE-TEMP'
Left Join PartSubPropertiesValue as S93 On S93.Site=a.Site and S93.PartNo=a.PartNo and S93.RecordType='P' and S93.SubCodeSeqNo=1 and S93.PropertiesItemNo='POST CURE-TIME'
LEFT JOIN PartSubPropertiesValue p3 on p3.site=a.site and p3.PartNo=a.PartNo and p3.PropertiesItemNo='MATERIAL'
where T.Site = A.Site AND T.OrderNo = A.OrderNo AND T.ItemNo = A.ItemNo AND T.ClosedFlag = 'N' AND T.OutWorkFlag = 'Y'
and a.partNo like 'FP%'
and dbo.Get_WorkCenter_ProLineNo(a.site,a.WorkCenterNo)='TREAT'