0 THEN
UPDATE QCM_INSPECTION_REPORT T
SET T.UPDATE_NAME = V_CREATE_NAME, T.UPDATE_TIME = SYSDATE
WHERE T.JUDGE_STOVE_NO = V_JUDGE_STOVE_NO
AND T.PRO_BC = V_PRO_BC
AND T.PRO_BZ = V_PRO_BZ
AND NVL(T.PRO_PLAN_ID, '/') = NVL(V_PRO_PLAN_ID, '/')
AND NVL(T.GX_PLAN_NO, '/') = NVL(V_GX_PLAN_NO, '/')
AND T.PLINE_CODE = V_PLINE_CODE;
ELSE
--生成主键 REPORT_NO
SELECT 'DIC' || V_PLINE_CODE || TO_CHAR(SYSDATE, 'YYYYMMDD') ||
(SELECT LPAD(NVL(MAX(SUBSTR(T.REPORT_NO, 16)), 0) + 1, 8, 0) REPORT_NO
FROM QCM_INSPECTION_REPORT T
WHERE T.PLINE_CODE = V_PLINE_CODE
AND TO_CHAR(T.UPDATE_TIME, 'YYYY-MM-DD') =
TO_CHAR(SYSDATE, 'YYYY-MM-DD'))
INTO V_REPORT_NO
FROM DUAL;
--插入新报告记录
FOR MYROW IN (SELECT A.*,
(SELECT B.PLINE_NAME
FROM COM_BASE_PLINE B
WHERE B.PLINE_CODE = A.PLINE_CODE) PLINE_NAME,
SUBSTR(A.CONTRACT_NO,
0,
INSTR(A.CONTRACT_NO, '/', 1, 1) - 1) ORDER_NO,
SUBSTR(A.CONTRACT_NO,
INSTR(A.CONTRACT_NO, '/', 1, 1) + 1) ORDER_SEQ
FROM MIL_PLAN A
WHERE A.JUDGE_STOVE_NO = V_JUDGE_STOVE_NO || '-01'
AND NVL(A.PRO_PLAN_ID, '/') = NVL(V_PRO_PLAN_ID, '/')
AND NVL(A.GX_PLAN_NO, '/') = NVL(V_GX_PLAN_NO, '/')
AND A.PLINE_CODE = V_PLINE_CODE) LOOP
INSERT INTO QCM_INSPECTION_REPORT
(REPORT_NO,
LOT_NO,
JUDGE_STOVE_NO,
--BATCH_NO,
PROCESS_CODE,
PLINE_CODE,
PLINE_NAME,
CRAF_NO,
ORDER_NO,
ORDER_SEQ,
ORD_LN_DLY_PK,
PRO_ORDER_NO,
--PRO_ORDER_ID,
--GX_PLAN_NO,
--DETECT_TYPE_CODE,
--DETECT_TYPE_NAME,
DETECT_RESULT_PATH,
PRO_BC,
PRO_BZ,
VALIDFLAG,
CREATE_NAME,
CREATE_TIME,
UPDATE_NAME,
UPDATE_TIME,
PRO_PLAN_ID,
GX_PLAN_NO)
VALUES
(V_REPORT_NO,
MYROW.LOT_NO,
V_JUDGE_STOVE_NO,
--?,
'D',
V_PLINE_CODE,
MYROW.PLINE_NAME,
MYROW.IMP_PROCESS,
MYROW.ORDER_NO,
MYROW.ORDER_SEQ,
MYROW.ORD_LN_DLY_PK,
MYROW.CONTRACT_NO,
--?,
--?,
--?,
--?,
V_DETECT_RESULT_PATH,
V_PRO_BC,
V_PRO_BZ,
'10',
V_CREATE_NAME,
SYSDATE,
V_CREATE_NAME,
SYSDATE,
V_PRO_PLAN_ID,
V_GX_PLAN_NO);
END LOOP;
END IF;
END;
]]>
0 THEN
UPDATE QCM_SURFACE_REPORT T
SET T.UPDATE_NAME = V_CREATE_NAME, T.UPDATE_TIME = SYSDATE
WHERE T.JUDGE_STOVE_NO = V_JUDGE_STOVE_NO
AND NVL(T.PRO_PLAN_ID, '/') = NVL(V_PRO_PLAN_ID, '/')
AND NVL(T.GX_PLAN_NO, '/') = NVL(V_GX_PLAN_NO, '/')
AND T.PRO_BC = V_PRO_BC
AND T.PRO_BZ = V_PRO_BZ
AND T.PLINE_CODE = V_PLINE_CODE
AND T.FOLLOW = V_FOLLOW;
ELSE
--生成主键 REPORT_NO
SELECT 'DIC' || V_PLINE_CODE || TO_CHAR(SYSDATE, 'YYYYMMDD') ||
(SELECT LPAD(NVL(MAX(SUBSTR(T.REPORT_NO, 16)), 0) + 1, 8, 0) REPORT_NO
FROM QCM_SURFACE_REPORT T
WHERE T.PLINE_CODE = V_PLINE_CODE
AND TO_CHAR(T.UPDATE_TIME, 'YYYY-MM-DD') =
TO_CHAR(SYSDATE, 'YYYY-MM-DD'))
INTO V_REPORT_NO
FROM DUAL;
--插入新报告记录
FOR MYROW IN (SELECT A.*,
(SELECT B.PLINE_NAME
FROM COM_BASE_PLINE B
WHERE B.PLINE_CODE = A.PLINE_CODE) PLINE_NAME,
SUBSTR(A.CONTRACT_NO,
0,
INSTR(A.CONTRACT_NO, '/', 1, 1) - 1) ORDER_NO,
SUBSTR(A.CONTRACT_NO,
INSTR(A.CONTRACT_NO, '/', 1, 1) + 1) ORDER_SEQ
FROM MIL_PLAN A
WHERE A.JUDGE_STOVE_NO = V_JUDGE_STOVE_NO || '-01'
AND NVL(A.PRO_PLAN_ID, '/') = NVL(V_PRO_PLAN_ID, '/')
AND NVL(A.GX_PLAN_NO, '/') = NVL(V_GX_PLAN_NO, '/')
AND A.PLINE_CODE = V_PLINE_CODE) LOOP
INSERT INTO QCM_SURFACE_REPORT
(REPORT_NO,
LOT_NO,
JUDGE_STOVE_NO,
--BATCH_NO,
PROCESS_CODE,
PLINE_CODE,
PLINE_NAME,
CRAF_NO,
ORDER_NO,
ORDER_SEQ,
ORD_LN_DLY_PK,
PRO_ORDER_NO,
--PRO_ORDER_ID,
--GX_PLAN_NO,
--DETECT_TYPE_CODE,
--DETECT_TYPE_NAME,
FACE_RESULT_PATH,
PRO_BC,
PRO_BZ,
VALIDFLAG,
CREATE_NAME,
CREATE_TIME,
UPDATE_NAME,
UPDATE_TIME,
FOLLOW,
PRO_PLAN_ID,
GX_PLAN_NO)
VALUES
(V_REPORT_NO,
MYROW.LOT_NO,
V_JUDGE_STOVE_NO,
--?,
'D',
V_PLINE_CODE,
MYROW.PLINE_NAME,
MYROW.IMP_PROCESS,
MYROW.ORDER_NO,
MYROW.ORDER_SEQ,
MYROW.ORD_LN_DLY_PK,
MYROW.CONTRACT_NO,
--?,
--?,
--?,
--?,
V_FACE_RESULT_PATH,
V_PRO_BC,
V_PRO_BZ,
'10',
V_CREATE_NAME,
SYSDATE,
V_CREATE_NAME,
SYSDATE,
V_FOLLOW,
V_PRO_PLAN_ID,
V_GX_PLAN_NO);
END LOOP;
END IF;
END;
]]>