SELECT T.STOVE_NO,
T.JUDGE_STOVE_NO,
T.PRINT_STOVE_NO,
T.PRO_PLAN_ID,
T.GX_PLAN_NO,
T.GPREQ_ID,
T.MATERIAL_NAME,
T.PRODUCNAME,
T.GRADENAME,
T.DIAMETER,
MAX(T.FIX_NUM)FIX_NUM,
T.FIX_LEN,
DECODE(F.NODE_FUR_FLAG,'0','未结炉','1','结炉')NODE_FUR_FLAG,
T.GPTYPE
FROM STL_LG_PROGRRSS T LEFT JION
(SELECT T1.STOVE_NO, T1.PRO_PLAN_ID, T1.GX_PLAN_NO, T1.GPREQ_ID,T1.NODE_FUR_FLAG
FROM STL_LG_SURFACE_M T1
GROUP BY T1.STOVE_NO, T1.PRO_PLAN_ID, T1.GX_PLAN_NO, T1.GPREQ_ID,T1.NODE_FUR_FLAG) S
ON T.PRO_PLAN_ID = S.PRO_PLAN_ID
AND T.GX_PLAN_NO = S.GX_PLAN_NO
AND T.STOVE_NO = S.STOVE_NO
LEFT JION (SELECT T2.STOVE_NO, T2.PRO_PLAN_ID, T2.GX_PLAN_NO, T2.GPREQ_ID,T2.NODE_FUR_FLAG
FROM STL_LG_INSTORE_RESULT T2
GROUP BY T2.STOVE_NO, T2.PRO_PLAN_ID, T2.GX_PLAN_NO, T2.GPREQ_ID,T2.NODE_FUR_FLAG) F
ON T.PRO_PLAN_ID = F.PRO_PLAN_ID
AND T.GX_PLAN_NO = F.GX_PLAN_NO
AND T.STOVE_NO = F.STOVE_NO
WHERE 1 = 1
SELECT T.PRO_PLAN_ID,
T.GX_PLAN_NO,
T.GPREQ_ID,
T.PRINT_STOVE_NO,
T.STOVE_NO,
T.CCMSTOVENO,
T.JUDGE_STOVE_NO,
T.CAST_NO,
T.HEATCNT,
T.CCMID,
T.FLOWNO,
T.CUTSEQNO,
T.MATERIAL_NO,
T.MATERIAL_NAME,
T.GRADECODE,
T.GRADENAME,
T.BATCH_GROUD_NO,
T.FLAG_STOVE_NO,
T.STANDARDSCODE,
T.STANDARDREMAK,
T.DIAMETER,
T.FIX_NUM,
T.FIX_LEN,
T.LENGTH,
SUM(T.ACT_COUNT) ACT_COUNT,
SUM(T.WEIGHT) WEIGHT,
T.RECIVE_FLAG,
T.AFFIRM_FLAG,
T.FURNACENO,
T.SEQUENCENO,
T.JUDGE_STOVE_NO_SEQ,
T.GPTYPE,
T.PLINE_CODE,
T.PLINE_NAME
FROM STL_LG_PROGRRSS T
WHERE T.FURNACENO = ?
AND T.SEQUENCENO = ?
AND T.STOVE_NO = ?
AND T.JUDGE_STOVE_NO_SEQ = ?
AND T.IS_VALID = '0'
AND T.STATUS = '0'
AND T.RECIVE_FLAG = '0'
GROUP BY T.PRO_PLAN_ID,
T.GX_PLAN_NO,
T.GPREQ_ID,
T.PRINT_STOVE_NO,
T.STOVE_NO,
T.CCMSTOVENO,
T.JUDGE_STOVE_NO,
T.CAST_NO,
T.HEATCNT,
T.CCMID,
T.FLOWNO,
T.CUTSEQNO,
T.MATERIAL_NO,
T.MATERIAL_NAME,
T.GRADECODE,
T.GRADENAME,
T.BATCH_GROUD_NO,
T.FLAG_STOVE_NO,
T.STANDARDSCODE,
T.STANDARDREMAK,
T.DIAMETER,
T.FIX_NUM,
T.FIX_LEN,
T.LENGTH,
T.RECIVE_FLAG,
T.AFFIRM_FLAG,
T.FURNACENO,
T.SEQUENCENO,
T.JUDGE_STOVE_NO_SEQ,
T.GPTYPE,
T.PLINE_CODE,
T.PLINE_NAME
SELECT S.STATUS,S.RECIVE_FLAG
FROM STL_LG_PROGRRSS S
WHERE S.FURNACENO = '#FURNACENO#'
AND S.SEQUENCENO = '#SEQUENCENO#'
AND S.STOVE_NO = '#STOVE_NO#'
AND S.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#'
AND S.MAT_NO = '#MAT_NO#'
UPDATE STL_LG_PROGRRSS T
SET T.STATUS = '#STATUS#', T.OP_PROCESS = '#OP_PROCESS#'
WHERE T.FURNACENO = '#FURNACENO#'
AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#'
AND T.MAT_NO = '#MAT_NO#'
SELECT 'IA' || TO_CHAR(SYSDATE, 'YYMMDD') ||
LPAD(NVL(MAX(SUBSTR(T.INSTOCK_DOC, 9)), 0) + 1, 5, 0) INSTOCK_DOC
FROM YDM_GP_INLIST T
WHERE T.INSTOCK_TYPE_CODE = ?
AND TRUNC(T.CREATE_TIME) =
TRUNC(SYSDATE)
SELECT T.ISENDGX,T.SURPLUSFLAG,T.GPTYPE
FROM PLN_STEELFOR_ORD T
WHERE SUBSTR(T.FURNACENO, 0, 12) = '#FURNACENO#'
AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#'
SELECT T.STORAGE_ATTR,
T.STORAGE_ATTR_NAME,
T.STORAGE_TYPE_NO,
T.STORAGE_TYPE_NAME
FROM YDM_BS_STORAGE T
WHERE T.STORAGE_NO = ?
SELECT COUNT(1) ACOUNT
FROM STL_LG_PROGRRSS T
WHERE T.FURNACENO = ?
AND T.SEQUENCENO = ?
AND T.STOVE_NO = ?
AND T.JUDGE_STOVE_NO_SEQ = ?
AND T.STATUS = '0'
AND T.RECIVE_FLAG = '0'
UPDATE PLN_STEELFOR_ORD T SET T.CCM_STATE = '#CCM_STATE#'
WHERE SUBSTR(T.FURNACENO,0,12) = '#FURNACENO#' AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#' AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#'
UPDATE STL_LG_INSTORE_RESULT T SET T.NODE_FUR_FLAG = '1'
WHERE T.FURNACENO = '#FURNACENO#' AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#' AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#'
UPDATE STL_LG_INSTORE_RESULT T SET T.NODE_FUR_FLAG = '0'
WHERE T.FURNACENO = '#FURNACENO#' AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#' AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#'
DECLARE
ACOUNT STL_LG_INSTORE_RESULT.ACT_COUNT%TYPE := NULL;
BEGIN
SELECT COUNT(1)
INTO ACOUNT
FROM STL_LG_INSTORE_RESULT T
WHERE T.FURNACENO = '#FURNACENO#'
AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.FIX_NUM = '#FIX_NUM#'
AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#';
IF (ACOUNT > 0) THEN
UPDATE STL_LG_INSTORE_RESULT T
SET T.ACT_COUNT = TO_NUMBER(NVL(T.ACT_COUNT, 0)) +
TO_NUMBER('#ACT_COUNT#'),
T.WEIGHT = TO_NUMBER(NVL(T.WEIGHT, 0)) + TO_NUMBER('#WEIGHT#')
WHERE T.FURNACENO = '#FURNACENO#'
AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.FIX_NUM = '#FIX_NUM#'
AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#';
ELSE
INSERT INTO STL_LG_INSTORE_RESULT(
PRO_PLAN_ID,
GX_PLAN_NO,
FURNACENO,
STOVE_NO,
FLAG_STOVE_NO,
JUDGE_STOVE_NO,
PRINT_STOVE_NO,
BATCH_GROUD_NO,
MATERIAL_NO,
MATERIAL_NAME,
GRADECODE,
GRADENAME,
DIAMETER,
FIX_NUM,
FIX_LEN,
LENGTH,
ACT_COUNT,
WEIGHT,
NODE_FUR_FLAG,
JUDGE_STOVE_NO_SEQ,
SEQUENCENO)
VALUES(
'#PRO_PLAN_ID#',
'#GX_PLAN_NO#',
'#FURNACENO#',
'#STOVE_NO#',
'#FLAG_STOVE_NO#',
'#JUDGE_STOVE_NO#',
'#PRINT_STOVE_NO#',
'#BATCH_GROUD_NO#',
'#MATERIAL_NO#',
'#MATERIAL_NAME#',
'#GRADECODE#',
'#GRADENAME#',
'#DIAMETER#',
'#FIX_NUM#',
'#FIX_LEN#',
'#LENGTH#',
'#ACT_COUNT#',
'#WEIGHT#',
'0',
'#JUDGE_STOVE_NO_SEQ#',
'#SEQUENCENO#');
END IF;
END;
DECLARE
ACOUNT STL_LG_INSTORE_RESULT.ACT_COUNT%TYPE := NULL;
BEGIN
UPDATE STL_LG_INSTORE_RESULT T
SET T.ACT_COUNT = TO_NUMBER(NVL(T.ACT_COUNT, 0)) -
TO_NUMBER('#ACT_COUNT#'),
T.WEIGHT = TO_NUMBER(NVL(T.WEIGHT, 0)) -
TO_NUMBER('#ACT_WEIGHT#')
WHERE T.FURNACENO = '#FURNACENO#'
AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#';
UPDATE PLN_STEELFOR_ORD T
SET T.CCM_STATE = '20'
WHERE SUBSTR(T.FURNACENO,0,12) = '#FURNACENO#'
AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#';
SELECT SUM(T.ACT_COUNT)
INTO ACOUNT
FROM STL_LG_INSTORE_RESULT T
WHERE T.FURNACENO = '#FURNACENO#'
AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#';
IF(ACOUNT >0)THEN
UPDATE STL_LG_INSTORE_RESULT T SET T.NODE_FUR_FLAG = '0'
WHERE T.FURNACENO = '#FURNACENO#'
AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#';
ELSE
DELETE FROM STL_LG_INSTORE_RESULT T
WHERE T.FURNACENO = '#FURNACENO#'
AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO_SEQ = '#JUDGE_STOVE_NO_SEQ#';
END IF;
END;
SELECT COUNT(1) ACOUNT
FROM MAT_GP_M T, YDM_GP_INLIST S
WHERE T.MAT_NO = S.MAT_NO
AND S.INSTOCK_TYPE_CODE = '800701'
AND S.INSTOCK_DOC = ?
AND S.JUDGE_STOVE_NO = ?
AND T.JUGDE_APPLY_CODE IS NOT NULL
SELECT COUNT(1)
FROM MAT_GP_M T
WHERE T.FURNACENO = ?
AND T.SEQUENCENO = ?
AND T.STOVE_NO = ?
AND T.JUDGE_STOVE_NO = ?
AND T.JUGDE_APPLY_CODE IS NOT NULL
SELECT T.CRAFT_NO FROM PLN_STEELFORFURNACE T WHERE T.FURNACENO = ?
SELECT T.PLAN_ROUTE
FROM PLN_STEELFORFURNACE T, PLN_STEELFOR_ORD S
WHERE T.FURNACENO = S.FURNACENO
AND NVL(S.PRO_PLAN_ID,'/') = NVL('#PRO_PLAN_ID#','/')
AND NVL(S.GX_PLAN_NO,'/') = NVL('#GX_PLAN_NO#','/')
AND S.STOVE_NO = '#STOVE_NO#'
SELECT S.*
FROM PLN_ZY_ZG_M S
WHERE S.CCM_PRO_PLAN_ID = '#PRO_PLAN_ID#'
AND S.CCM_GX_PLAN_NO = '#GX_PLAN_NO#'
AND S.UPPER_HEATPLAN_ID ='#FURNACENO#'||'/'||'#SEQUENCENO#'
AND S.PLANSTATUS IN('00','10')
ORDER BY TO_NUMBER(S.GX_PRO_SEQ) ASC
SELECT S1.*
FROM (SELECT S.PRO_PLAN_ID,S.GX_PLAN_NO,T.FURNACENO,T.SEQUENCENO
FROM PLN_STEELFOR_ORD T, PLN_STEELFOR_MERGE S
WHERE T.MERGE_NO = S.MERGE_NO
AND T.FURNACENO = ?
AND T.SEQUENCENO = ?
GROUP BY S.PRO_PLAN_ID,S.GX_PLAN_NO,T.FURNACENO,T.SEQUENCENO) T1,
PLN_ZY_ZG_M S1
WHERE T1.PRO_PLAN_ID = S1.CCM_PRO_PLAN_ID
AND T1.GX_PLAN_NO = S1.CCM_GX_PLAN_NO
AND T1.FURNACENO ||'/'||T1.SEQUENCENO = S1.UPPER_HEATPLAN_ID
AND S1.PLANSTATUS IN('00','10')
ORDER BY TO_NUMBER(S1.GX_PRO_SEQ) ASC
SELECT T.*
FROM PLN_ZY_DZ_M T
WHERE T.CCM_PRO_PLAN_ID = '#PRO_PLAN_ID#'
AND T.CCM_GX_PLAN_NO = '#GX_PLAN_NO#'
AND T.UPPER_HEATPLAN_ID = '#FURNACENO#'||'/'||'#SEQUENCENO#'
AND T.PLANSTATUS IN('00','10')
ORDER BY TO_NUMBER(T.GX_PRO_SEQ) ASC
SELECT S1.*
FROM (SELECT S.PRO_PLAN_ID,S.GX_PLAN_NO,T.FURNACENO,T.SEQUENCENO
FROM PLN_STEELFOR_ORD T, PLN_STEELFOR_MERGE S
WHERE T.MERGE_NO = S.MERGE_NO
AND T.FURNACENO = ?
AND T.SEQUENCENO = ?
GROUP BY S.PRO_PLAN_ID,S.GX_PLAN_NO,T.FURNACENO,T.SEQUENCENO) T1,
PLN_ZY_DZ_M S1
WHERE T1.PRO_PLAN_ID = S1.CCM_PRO_PLAN_ID
AND T1.GX_PLAN_NO = S1.CCM_GX_PLAN_NO
AND T1.FURNACENO ||'/'||T1.SEQUENCENO = S1.UPPER_HEATPLAN_ID
AND S1.PLANSTATUS IN('00','10')
ORDER BY TO_NUMBER(S1.GX_PRO_SEQ) ASC
SELECT NVL(SUM(T.ACT_COUNT),0)ACT_COUNT, T.FIX_NUM,T.STOVE_NO,T.JUDGE_STOVE_NO,T.PRO_PLAN_ID,T.GX_PLAN_NO
FROM MAT_GP_M T
WHERE T.PRO_PLAN_ID = '#PRO_PLAN_ID#'
AND T.GX_PLAN_NO = '#GX_PLAN_NO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
AND T.FURNACENO = '#FURNACENO#'
AND T.SEQUENCENO = '#SEQUENCENO#'
AND T.PRO_PLAN_ID_ZG IS NULL
AND T.QCM_STAUS = '00'
GROUP BY T.PRO_PLAN_ID,
T.GX_PLAN_NO,
T.STOVE_NO,
T.JUDGE_STOVE_NO,
T.FIX_NUM
ORDER BY T.FIX_NUM DESC
SELECT NVL(SUM(T.ACT_COUNT),0)ACT_COUNT, T.FIX_NUM,T.STOVE_NO,T.JUDGE_STOVE_NO,T.PRO_PLAN_ID,T.GX_PLAN_NO
FROM MAT_GP_M T
WHERE T.PRO_PLAN_ID = ?
AND T.GX_PLAN_NO = ?
AND T.STOVE_NO = ?
AND T.JUDGE_STOVE_NO = ?
AND T.PRO_PLAN_ID_ZG IS NULL
AND T.QCM_STAUS = '00'
GROUP BY T.PRO_PLAN_ID,
T.GX_PLAN_NO,
T.STOVE_NO,
T.JUDGE_STOVE_NO,
T.FIX_NUM
ORDER BY T.FIX_NUM DESC
SELECT NVL(SUM(T.DB_ACT_COUNT),0) DB_ACT_COUNT FROM MAT_GP_M T WHERE T.PRO_PLAN_ID_ZG = '#PRO_PLAN_ID#' AND T.GX_PLAN_NO_ZG = '#GX_PLAN_NO#' AND T.FURNACENO||'/'|| T.SEQUENCENO = '#UPPER_HEATPLAN_ID#'
SELECT T1.*,T.FURNACENO,T.SEQUENCENO
FROM PLN_STEELFOR_ORD T,
(SELECT S.MERGE_NO,
S.PRO_PLAN_ID,
S.GX_PLAN_NO,
S.CUT_NUM_GP,
CEIL(S1.PLN_INSINGLE_NUM / S.CUT_NUM_GP) TOT_MUM_M,
S1.UPPER_HEATPLAN_ID
FROM PLN_ZY_ZG_M S1,
(SELECT M.MERGE_NO,
M.PRO_PLAN_ID,
M.GX_PLAN_NO,
M.CUT_NUM_GP,
NVL(SUM(M.TOT_MUM_M),0) TOT_MUM_M
FROM PLN_STEELFOR_MERGE M
GROUP BY M.MERGE_NO,
M.PRO_PLAN_ID,
M.GX_PLAN_NO,
M.CUT_NUM_GP) S
WHERE S.PRO_PLAN_ID = S1.CCM_PRO_PLAN_ID(+)
AND S.GX_PLAN_NO = S1.CCM_GX_PLAN_NO(+)
ORDER BY TO_NUMBER(S1.GX_PRO_SEQ) ASC) T1
WHERE T.MERGE_NO = T1.MERGE_NO
--AND T.FURNACENO || '/' || T.SEQUENCENO = T1.UPPER_HEATPLAN_ID
AND T.PRO_PLAN_ID = '#PRO_PLAN_ID#'
AND T.GX_PLAN_NO = '#GX_PLAN_NO#'
SELECT T1.*,T.FURNACENO,T.SEQUENCENO
FROM PLN_STEELFOR_ORD T,
(SELECT S.MERGE_NO,
S.PRO_PLAN_ID,
S.GX_PLAN_NO,
S.CUT_NUM_GP,
CEIL(S1.PLN_INSINGLE_NUM / S.CUT_NUM_GP) TOT_MUM_M,
S1.UPPER_HEATPLAN_ID
FROM PLN_ZY_DZ_M S1,
(SELECT M.MERGE_NO,
M.PRO_PLAN_ID,
M.GX_PLAN_NO,
M.CUT_NUM_GP,
SUM(M.TOT_MUM_M) TOT_MUM_M
FROM PLN_STEELFOR_MERGE M
GROUP BY M.MERGE_NO,
M.PRO_PLAN_ID,
M.GX_PLAN_NO,
M.CUT_NUM_GP) S
WHERE S.PRO_PLAN_ID = S1.CCM_PRO_PLAN_ID
AND S.GX_PLAN_NO = S1.CCM_GX_PLAN_NO
ORDER BY TO_NUMBER(S1.GX_PRO_SEQ) ASC) T1
WHERE T.MERGE_NO = T1.MERGE_NO
AND T.FURNACENO || '/' || T.SEQUENCENO = T1.UPPER_HEATPLAN_ID
AND T.PRO_PLAN_ID = '#PRO_PLAN_ID#'
AND T.GX_PLAN_NO = '#GX_PLAN_NO#'
SELECT NVL(SUM(T.ACT_COUNT), 0) ACT_COUNT,
NVL(SUM(T.DB_ACT_COUNT), 0) DB_ACT_COUNT
FROM MAT_GP_M T
WHERE T.PRO_PLAN_ID = ?
AND T.GX_PLAN_NO = ?
AND T.STOVE_NO = ?
AND T.JUDGE_STOVE_NO = ?
AND T.QCM_STAUS = '00'
SELECT NVL(SUM(T.ACT_COUNT), 0) ACT_COUNT,
T.FIX_NUM,
T.STOVE_NO,
T.JUDGE_STOVE_NO,
T.PRO_PLAN_ID,
T.GX_PLAN_NO
FROM MAT_GP_M T
WHERE T.PRO_PLAN_ID = '#PRO_PLAN_ID#'
AND T.GX_PLAN_NO = '#GX_PLAN_NO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
AND T.QCM_STAUS = '00'
GROUP BY T.PRO_PLAN_ID,
T.GX_PLAN_NO,
T.STOVE_NO,
T.JUDGE_STOVE_NO,
T.FIX_NUM
ORDER BY T.FIX_NUM DESC
SELECT COUNT(1)MAT_NUM
FROM (SELECT T.*
FROM MAT_GP_M T, YDM_GP_BUTTRESS S
WHERE T.MAT_NO = S.MAT_NO
AND T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
AND T.FIX_NUM = '#FIX_NUM#'
AND S.STORAGE_NO = '#STORAGE_NO#') T1,
YDM_GP_INLIST S1
WHERE T1.MAT_NO = S1.MAT_NO
AND S1.INSTOCK_TYPE_CODE = '800701'
AND S1.INSTOCK_DOC = '#INSTOCK_DOC#'
SELECT COUNT(1)ACOUNT
FROM YDM_GP_INLIST T
WHERE T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
AND T.INSTOCK_TYPE_CODE = '800701'
SELECT T.EF_PLINE_CODE,T.EF_PLINE_NAME
FROM PLN_STEELFOR_ORD T
WHERE T.FURNACENO = '#FURNACENO#'
AND T.STOVE_NO = '#STOVE_NO#'
AND T.JUDGE_STOVE_NO = '#JUDGE_STOVE_NO#'
0) THEN
IF (MYROW.DEMAND_QTY_VAL >= V_ACT_COUNT) THEN
UPDATE TMS_DEMAND_M T
SET T.OUTPUT_QTY_VAL = V_ACT_COUNT,
T.OUTPUT_WT_VAL = V_ACT_WEIGHT
WHERE T.DEMAND_NO = MYROW.DEMAND_NO;
V_ACT_COUNT := 0;
V_ACT_WEIGHT := 0;
ELSE
UPDATE TMS_DEMAND_M T
SET T.OUTPUT_QTY_VAL = T.DEMAND_QTY_VAL,
T.OUTPUT_WT_VAL = T.DEMAND_WT_VAL
WHERE T.DEMAND_NO = MYROW.DEMAND_NO;
V_ACT_COUNT := V_ACT_COUNT - MYROW.DEMAND_QTY_VAL;
V_ACT_WEIGHT := V_ACT_WEIGHT - MYROW.DEMAND_WT_VAL;
END IF;
END IF;
END LOOP;
--结炉的数据处理
FOR MYROW1 IN (SELECT T.*
FROM TMS_DEMAND_M T
WHERE T.HEAT_NO = V_JUDGE_STOVE_NO
AND T.CURRENT_JOB_NO = V_CURRENT_JOB_NO
AND T.TRAN_CLASS_CODE = 'XX'
ORDER BY T.CREATE_TIME DESC) LOOP
IF (V_FLAG = 'JL') THEN
IF (V_SCRAP_QTY_VAL > 0) THEN
IF (MYROW1.DEMAND_QTY_VAL - MYROW1.OUTPUT_QTY_VAL >=
V_SCRAP_QTY_VAL) THEN
UPDATE TMS_DEMAND_M T
SET T.SCRAP_QTY_VAL = V_SCRAP_QTY_VAL,
T.SCRAP_WT_VAL = V_SCRAP_WT_VAL
WHERE T.DEMAND_NO = MYROW1.DEMAND_NO;
V_SCRAP_QTY_VAL := 0;
V_SCRAP_WT_VAL := 0;
ELSE
UPDATE TMS_DEMAND_M T
SET T.SCRAP_QTY_VAL = T.DEMAND_QTY_VAL - T.OUTPUT_QTY_VAL,
T.SCRAP_WT_VAL =
(T.DEMAND_QTY_VAL - T.OUTPUT_QTY_VAL) / V_SCRAP_QTY_VAL *
V_SCRAP_WT_VAL
WHERE T.DEMAND_NO = MYROW1.DEMAND_NO;
V_SCRAP_QTY_VAL := V_SCRAP_QTY_VAL - MYROW1.DEMAND_QTY_VAL +
MYROW1.OUTPUT_QTY_VAL;
V_SCRAP_WT_VAL := (V_SCRAP_QTY_VAL - MYROW1.DEMAND_QTY_VAL +
MYROW1.OUTPUT_QTY_VAL) / V_SCRAP_QTY_VAL *
V_SCRAP_WT_VAL;
END IF;
END IF;
END IF;
END LOOP;
END;
]]>