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(?,?,?,?,?)}