SELECT DISTINCT SUBSTR(SMP_NO ,11 ) LABEL ,SUBSTR(SMP_NO ,11 ) VALUE FROM TBB02_LOT_COM WHERE OVER_SMP_TP IS NOT NULL AND SUBSTR(SMP_NO , 1 , 10 ) = ? SELECT 'N' CHK , LCM.SMP_NO , LCM.SMP_CUT_LOC , LCM.SLAB_NO , LCM.SMP_PROG_CD , LCM.SPEC_ABBSYM , LCM.SPEC_STL_GRD , LCM.ORD_USE_TP , LCM.EXAMORG_CD , LCM.SMP_WORK_DTIME , CCM.COIL_NO , CCM.MATLQLTY_DEC_GRD --材质判定结果 , LCM.OVER_SMP_TP --复样原因 -- SAMPLING_CODE为取样指示,只有当QLTY_CD为SAMP时,代表需要取样,SAMPLING_CODE才会有值 -- , IQY.SMP_LOT_CD||IQY.SMP_LEN_LOC||IQY.SMP_WTH_LOC SAMPLING_CODE FROM TBB02_LOT_COM LCM , TBB02_LOT_COIL LCL , TBH02_COIL_COMM CCM , TBB02_INS_QLTY IQY WHERE LCM.SMP_NO = LCL.SMP_NO AND LCM.SMP_CUT_LOC = LCL.SMP_CUT_LOC AND LCL.COIL_NO = CCM.COIL_NO AND LCM.SMP_NO = IQY.SMP_NO AND LCM.SMP_CUT_LOC = IQY.SMP_CUT_LOC AND IQY.QLTY_CD = 'SAMP' AND LCL.SMP_TIT_YN = 'Y' --代表试样 AND LCM.OVER_SMP_TP IS NOT NULL --复样原因不为空,表示该样式复样 AND LCM.SMP_NO LIKE ? AND LCM.SMP_PROG_CD LIKE ? ------------------- --复样位置为W ------------------- SELECT IQL.QLTY_CD , to_number('') QLTY_SEQ , IQL.QLTY_CD QLTY_CDNM , IQL.QLTY_MIN , IQL.QLTY_MAX , IQL.QLTY_UNIT , IQL.SMP_NO SMPNO --更新需要 , IQL.SMP_CUT_LOC SMPCUTLOC --更新需要 , max(decode(WQL.SMP_CUT_LOC , '1' , WQL.QLTY_VAL_WK)) QLTY_VAL_WK1 , max(decode(WQL.SMP_CUT_LOC , '1' , WQL.QLTY_UNIT_WK)) QLTY_UNIT_WK1 , max(decode(WQL.SMP_CUT_LOC , '2' , WQL.QLTY_VAL_WK)) QLTY_VAL_WK2 , max(decode(WQL.SMP_CUT_LOC , '2' , WQL.QLTY_UNIT_WK)) QLTY_UNIT_WK2 --复样不会通过2级系统,所以不会有实绩表中缺少某检验项目的情况 FROM TBB02_INS_QLTY IQL , TBB02_WORK_QLTY WQL WHERE IQL.SMP_NO = WQL.SMP_NO AND IQL.QLTY_CD = WQL.QLTY_CD AND IQL.QLTY_CD != 'SAMP' AND IQL.SMP_NO = ? GROUP BY IQL.QLTY_CD , IQL.QLTY_CD , IQL.QLTY_MIN , IQL.QLTY_MAX , IQL.QLTY_UNIT , IQL.SMP_NO --更新需要 , IQL.SMP_CUT_LOC --更新需要 UNION ALL SELECT IQY.QLTY_CD , RQY.QLTY_SEQ , IQY.QLTY_CD QLTY_CDNM , IQY.QLTY_MIN , IQY.QLTY_MAX , IQY.QLTY_UNIT , IQY.SMP_NO SMPNO --更新需要 , IQY.SMP_CUT_LOC SMPCUTLOC --更新需要 , max(decode(RQY.SMP_CUT_LOC , '1' , RQY.QLTY_VAL_WK)) QLTY_VAL_WK1 , max(decode(RQY.SMP_CUT_LOC , '1' , RQY.QLTY_UNIT_WK)) QLTY_UNIT_WK1 , max(decode(RQY.SMP_CUT_LOC , '2' , RQY.QLTY_VAL_WK)) QLTY_VAL_WK2 , max(decode(RQY.SMP_CUT_LOC , '2' , RQY.QLTY_UNIT_WK)) QLTY_UNIT_WK2 --复样不会通过2级系统,所以不会有实绩表中缺少某检验项目的情况 FROM TBB02_INS_QLTY IQY , TBB02_REWORK_QLTY RQY WHERE IQY.SMP_NO = RQY.SMP_NO AND IQY.QLTY_CD = RQY.QLTY_CD AND IQY.QLTY_CD != 'SAMP' AND IQY.SMP_NO = ? GROUP BY IQY.QLTY_CD , RQY.QLTY_SEQ , IQY.QLTY_CD , IQY.QLTY_MIN , IQY.QLTY_MAX , IQY.QLTY_UNIT , IQY.SMP_NO , IQY.SMP_CUT_LOC ----------------------------------- --试样位置非W的情况 ----------------------------------- SELECT decode(Y.QLTY_SEQ , NULL , X.QLTY_DCS_RST , NULL ) QLTY_DCS_RST ,X.COIL_NO COILNO , Y.* , 'N' USE_TP FROM TBB02_DCS_QLTY X , ( SELECT IQL.QLTY_CD , to_number('') QLTY_SEQ , IQL.QLTY_CD QLTY_CDNM , IQL.QLTY_MIN , IQL.QLTY_MAX , IQL.QLTY_UNIT , IQL.SMP_NO SMPNO --更新需要 , IQL.SMP_CUT_LOC SMPCUTLOC --更新需要 ,WQL.QLTY_VAL_WK QLTY_VAL_WK1 ,WQL.QLTY_UNIT_WK QLTY_UNIT_WK1 --复样不会通过2级系统,所以不会有实绩表中缺少某检验项目的情况 FROM TBB02_INS_QLTY IQL , TBB02_WORK_QLTY WQL WHERE IQL.SMP_NO = WQL.SMP_NO AND IQL.QLTY_CD = WQL.QLTY_CD AND IQL.QLTY_CD != 'SAMP' AND IQL.SMP_NO = ? AND IQL.SMP_CUT_LOC = WQL.SMP_CUT_LOC UNION ALL SELECT IQY.QLTY_CD , RQY.QLTY_SEQ , IQY.QLTY_CD QLTY_CDNM , IQY.QLTY_MIN , IQY.QLTY_MAX , IQY.QLTY_UNIT , IQY.SMP_NO SMPNO --更新需要 , IQY.SMP_CUT_LOC SMPCUTLOC --更新需要 , RQY.QLTY_VAL_WK QLTY_VAL_WK1 , RQY.QLTY_UNIT_WK QLTY_UNIT_WK1 --复样不会通过2级系统,所以不会有实绩表中缺少某检验项目的情况 FROM TBB02_INS_QLTY IQY , TBB02_REWORK_QLTY RQY WHERE IQY.SMP_NO = RQY.SMP_NO AND IQY.QLTY_CD = RQY.QLTY_CD AND IQY.QLTY_CD != 'SAMP' AND IQY.SMP_NO = ? AND IQY.SMP_CUT_LOC = RQY.SMP_CUT_LOC ) Y WHERE X.QLTY_CD = Y.QLTY_CD AND X.COIL_NO = ? ORDER BY Y.QLTY_CD , Y.QLTY_SEQ UPDATE TBB02_REWORK_QLTY SET QLTY_VAL_WK = ? , QLTY_UNIT_WK = ? , QLTY_WK_TP = 'M' --若实绩是从2级传上来,则为L,若是在MES修改的,则值为M WHERE SMP_NO = ? AND SMP_CUT_LOC = ? AND QLTY_CD = ? AND QLTY_SEQ = ? SELECT CCM.OLD_SAMPL_NO ,DECODE(SUBSTR(LCM.SMP_NO , 14 ) , 'XX' , NULL , SUBSTR(LCM.SMP_NO , 14 )) SMP_COUNT ,LCM.SMP_NO ,LCM.SMP_NO , LCM.SMP_CUT_LOC , LCM.SLAB_NO , LCM.SMP_PROG_CD , LCM.SPEC_ABBSYM , LCM.SPEC_STL_GRD , LCM.ORD_USE_TP , LCM.EXAMORG_CD , LCM.SMP_WORK_DTIME , LCM.OVER_SMP_TP --复样原因 , CCM.COIL_NO , CCM.MATLQLTY_DEC_GRD --材质判定结果 FROM TBB02_LOT_COM LCM , TBH02_COIL_COMM CCM WHERE LCM.COIL_NO = CCM.COIL_NO UPDATE TBB02_WORK_QLTY SET QLTY_VAL_WK = ? , QLTY_UNIT_WK = ? , QLTY_WK_TP = 'M' --若实绩是从2级传上来,则为L,若是在MES修改的,则值为M WHERE SMP_NO = ? AND SMP_CUT_LOC = ? AND QLTY_CD = ? UPDATE TBB02_DCS_QLTY SET QLTY_DCS_RST = ? WHERE COIL_NO = ? AND QLTY_CD = ? {call ZL_HOST_DCS02.DCS_MANS_RESMP(?,?,?,?,?)}