0 OR ALLCOILCOUNT_T <> 0 OR RCOUNT <> 0 UNION SELECT SPEC_STL_GRD ,2 SEQ ,'小计' T_W_E ,COILCOUNT_E ,WGTSUM_E ,ALLCOILCOUNT_E ,ALLWGTSUM_E ,'' T_W_T ,COILCOUNT_T ,WGTSUM_T ,ALLCOILCOUNT_T ,ALLWGTSUM_T ,COILCOUNT_T1 ,WGTSUM_T1 ,ALLCOILCOUNT_T1 ,ALLWGTSUM_T1 ,RCOILCOUNT ,RCOUNT ,ORD_USE_TP FROM (SELECT T.SPEC_STL_GRD ,MIN(B.ORD_USE_TP) ORD_USE_TP ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) THEN 1 ELSE 0 END) COILCOUNT_E ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_E ,SUM(CASE WHEN SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ? THEN 1 ELSE 0 END) ALLCOILCOUNT_E ,SUM(CASE WHEN SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ? THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E --,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) COILCOUNT_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) COILCOUNT_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) ALLCOILCOUNT_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) COILCOUNT_T1 ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) ALLCOILCOUNT_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T1 --,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) RCOILCOUNT --,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) AND T.COIL_STAT = '3' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT --,SUM(CASE WHEN (SUBSTR(T.MILL_DTIME, 1, 8) between ? and ?) and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or (? is not null AND SUBSTR(T.TRNF_DTIME, 1, 8) > ?)) AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) RCOILCOUNT --,SUM(CASE WHEN (SUBSTR(T.MILL_DTIME, 1, 8) BETWEEN ? AND ?) AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or (? is not null AND SUBSTR(T.TRNF_DTIME, 1, 8) > ?)) AND T.COIL_STAT = '3' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT ,SUM(CASE WHEN t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null THEN 1 ELSE 0 END) RCOILCOUNT ,SUM(CASE WHEN T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT FROM C_TBL02_COIL_COMM T ,(SELECT T.SPEC_STL_GRD ,MAX(T.ORD_USE_TP) ORD_USE_TP FROM TBB01_KEY_PROD T WHERE T.PROD_LINE = 'C' GROUP BY T.SPEC_STL_GRD ) B WHERE T.SPEC_STL_GRD = B.SPEC_STL_GRD(+) AND T.SPEC_STL_GRD IS NOT NULL AND T.LINE_TP IS NULL GROUP BY T.SPEC_STL_GRD ) UNION SELECT '' SPEC_STL_GRD ,3 SEQ ,'合计' T_W_E ,COILCOUNT_E ,WGTSUM_E ,ALLCOILCOUNT_E ,ALLWGTSUM_E ,'' T_W_T ,COILCOUNT_T ,WGTSUM_T ,ALLCOILCOUNT_T ,ALLWGTSUM_T ,COILCOUNT_T1 ,WGTSUM_T1 ,ALLCOILCOUNT_T1 ,ALLWGTSUM_T1 ,RCOILCOUNT ,RCOUNT ,'1' ORD_USE_TP FROM( SELECT SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) THEN 1 ELSE 0 END) COILCOUNT_E ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_E ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ?) THEN 1 ELSE 0 END) ALLCOILCOUNT_E ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ?) THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) COILCOUNT_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.TRNF_DTIME,1,8) <= ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) ALLCOILCOUNT_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.TRNF_DTIME,1,8) <= ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) COILCOUNT_T1 ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T1 ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.TRNF_DTIME,1,8) <= ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) ALLCOILCOUNT_T1 ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.TRNF_DTIME,1,8) <= ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T1 -- ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) RCOILCOUNT --,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) AND T.COIL_STAT = '3' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT -- ,SUM(CASE WHEN (SUBSTR(T.MILL_DTIME, 1, 8) between ? and ? ) and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or (? is not null AND SUBSTR(T.TRNF_DTIME, 1, 8) > ?)) AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) RCOILCOUNT -- ,SUM(CASE WHEN (SUBSTR(T.MILL_DTIME, 1, 8) between ? and ? ) AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or (? is not null AND SUBSTR(T.TRNF_DTIME, 1, 8) > ?)) AND T.COIL_STAT = '3' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT ,SUM(CASE WHEN t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null THEN 1 ELSE 0 END) RCOILCOUNT ,SUM(CASE WHEN T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT FROM C_TBL02_COIL_COMM T ,(SELECT T.SPEC_STL_GRD ,MAX(T.ORD_USE_TP) ORD_USE_TP FROM TBB01_KEY_PROD T WHERE T.PROD_LINE = 'C' GROUP BY T.SPEC_STL_GRD ) B WHERE T.SPEC_STL_GRD = B.SPEC_STL_GRD(+) AND T.SPEC_STL_GRD IS NOT NULL AND T.LINE_TP IS NULL ) ) ORDER BY ORD_USE_TP,SPEC_STL_GRD,SEQ,T_W_E ]]> 0 OR ALLCOILCOUNT_T <> 0 OR RCOUNT <> 0 UNION SELECT SPEC_STL_GRD ,2 SEQ ,'小计' T_W_E ,COILCOUNT_E ,WGTSUM_E ,ALLCOILCOUNT_E ,ALLWGTSUM_E ,'' T_W_T ,COILCOUNT_T ,WGTSUM_T ,ALLCOILCOUNT_T ,ALLWGTSUM_T ,COILCOUNT_T1 ,WGTSUM_T1 ,ALLCOILCOUNT_T1 ,ALLWGTSUM_T1 ,RCOILCOUNT ,RCOUNT ,ORD_USE_TP FROM (SELECT T.SPEC_STL_GRD ,MIN(B.ORD_USE_TP) ORD_USE_TP ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) THEN 1 ELSE 0 END) COILCOUNT_E ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_E ,SUM(CASE WHEN SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ? THEN 1 ELSE 0 END) ALLCOILCOUNT_E ,SUM(CASE WHEN SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ? THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E --,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) COILCOUNT_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) COILCOUNT_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) ALLCOILCOUNT_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) COILCOUNT_T1 ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) ALLCOILCOUNT_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T1 --,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) RCOILCOUNT --,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) AND T.COIL_STAT = '3' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT --,SUM(CASE WHEN (SUBSTR(T.MILL_DTIME, 1, 8) between ? and ?) and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or (? is not null AND SUBSTR(T.TRNF_DTIME, 1, 8) > ?)) AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) RCOILCOUNT --,SUM(CASE WHEN (SUBSTR(T.MILL_DTIME, 1, 8) BETWEEN ? AND ?) AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or (? is not null AND SUBSTR(T.TRNF_DTIME, 1, 8) > ?)) AND T.COIL_STAT = '3' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT ,SUM(CASE WHEN t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null THEN 1 ELSE 0 END) RCOILCOUNT ,SUM(CASE WHEN T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT FROM C_TBL02_COIL_COMM T ,(SELECT T.SPEC_STL_GRD ,MAX(T.ORD_USE_TP) ORD_USE_TP FROM TBB01_KEY_PROD T WHERE T.PROD_LINE = 'C' GROUP BY T.SPEC_STL_GRD ) B WHERE T.SPEC_STL_GRD = B.SPEC_STL_GRD(+) AND T.SPEC_STL_GRD IS NOT NULL AND T.LINE_TP ='S' GROUP BY T.SPEC_STL_GRD ) UNION SELECT '' SPEC_STL_GRD ,3 SEQ ,'合计' T_W_E ,COILCOUNT_E ,WGTSUM_E ,ALLCOILCOUNT_E ,ALLWGTSUM_E ,'' T_W_T ,COILCOUNT_T ,WGTSUM_T ,ALLCOILCOUNT_T ,ALLWGTSUM_T ,COILCOUNT_T1 ,WGTSUM_T1 ,ALLCOILCOUNT_T1 ,ALLWGTSUM_T1 ,RCOILCOUNT ,RCOUNT ,'1' ORD_USE_TP FROM( SELECT SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) THEN 1 ELSE 0 END) COILCOUNT_E ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_E ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ?) THEN 1 ELSE 0 END) ALLCOILCOUNT_E ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ?) THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) COILCOUNT_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.TRNF_DTIME,1,8) <= ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) ALLCOILCOUNT_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.TRNF_DTIME,1,8) <= ?) AND T.OUT_YARD_KIND IN ('2') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) COILCOUNT_T1 ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T1 ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.TRNF_DTIME,1,8) <= ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) ALLCOILCOUNT_T1 ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.TRNF_DTIME,1,8) <= ?) AND T.OUT_YARD_KIND IN ('1') AND T.COIL_STAT = '3' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T1 -- ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) RCOILCOUNT --,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) AND T.COIL_STAT = '3' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT -- ,SUM(CASE WHEN (SUBSTR(T.MILL_DTIME, 1, 8) between ? and ? ) and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or (? is not null AND SUBSTR(T.TRNF_DTIME, 1, 8) > ?)) AND T.COIL_STAT = '3' THEN 1 ELSE 0 END) RCOILCOUNT -- ,SUM(CASE WHEN (SUBSTR(T.MILL_DTIME, 1, 8) between ? and ? ) AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or (? is not null AND SUBSTR(T.TRNF_DTIME, 1, 8) > ?)) AND T.COIL_STAT = '3' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT ,SUM(CASE WHEN t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null THEN 1 ELSE 0 END) RCOILCOUNT ,SUM(CASE WHEN T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT FROM C_TBL02_COIL_COMM T ,(SELECT T.SPEC_STL_GRD ,MAX(T.ORD_USE_TP) ORD_USE_TP FROM TBB01_KEY_PROD T WHERE T.PROD_LINE = 'C' GROUP BY T.SPEC_STL_GRD ) B WHERE T.SPEC_STL_GRD = B.SPEC_STL_GRD(+) AND T.SPEC_STL_GRD IS NOT NULL AND T.LINE_TP ='S' ) ) ORDER BY ORD_USE_TP,SPEC_STL_GRD,SEQ,T_W_E ]]> ?) THEN 1 ELSE 0 END) RCOILCOUNT ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT FROM C_TBK02_COIL_COMM T ,(SELECT T.C_SPEC_STL_GRD STL_GRD,MAX(T.C_ORD_USE_TP) ORD_USE_TP FROM TBB01_KEY_PROD T WHERE T.PROD_LINE = 'C' GROUP BY T.C_SPEC_STL_GRD) B WHERE T.STL_GRD = B.STL_GRD(+) AND T.STL_GRD IS NOT NULL GROUP BY C_PKG_UIM.GET_RSTEELCODE(T.STL_GRD),T.INSTR_COIL_THK,T.INSTR_COIL_WTH union all*/ SELECT C_PKG_UIM.GET_RSTEELCODE(T.STL_GRD) STL_GRD ,'合计' COIL_SIZE ,MIN(B.ORD_USE_TP) ORD_USE_TP ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND T.IN_YARD_KIND = '1' THEN 1 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND T.OUT_YARD_KIND IN ('2') THEN 1 ELSE 0 END) COILCOUNT_E ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND T.IN_YARD_KIND = '1' THEN T.ACT_WGT/1000 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND T.OUT_YARD_KIND IN ('2') THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_E ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND T.IN_YARD_KIND = '1' THEN 1 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('2') THEN 1 ELSE 0 END) + SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = C_PKG_UIM.GET_PRE_LAST_DATE(?) AND T.IN_YARD_KIND = '1' THEN 1 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = C_PKG_UIM.GET_PRE_LAST_DATE(?) AND T.OUT_YARD_KIND IN ('2') THEN 1 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = C_PKG_UIM.GET_LAST_DATE(?) AND T.IN_YARD_KIND = '1' THEN 1 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = C_PKG_UIM.GET_LAST_DATE(?) AND T.OUT_YARD_KIND IN ('2') THEN 1 ELSE 0 END) ALLCOILCOUNT_E ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND T.IN_YARD_KIND = '1' THEN T.ACT_WGT/1000 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('2') THEN T.ACT_WGT/1000 ELSE 0 END) +SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = C_PKG_UIM.GET_PRE_LAST_DATE(?) AND T.IN_YARD_KIND = '1' THEN T.ACT_WGT/1000 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = C_PKG_UIM.GET_PRE_LAST_DATE(?) AND T.OUT_YARD_KIND IN ('2') THEN T.ACT_WGT/1000 ELSE 0 END) -SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = C_PKG_UIM.GET_LAST_DATE(?) AND T.IN_YARD_KIND = '1' THEN T.ACT_WGT/1000 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = C_PKG_UIM.GET_LAST_DATE(?) AND T.OUT_YARD_KIND IN ('2') THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND T.OUT_YARD_KIND IN ('1') THEN 1 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND T.IN_YARD_KIND = '2' THEN 1 ELSE 0 END) COILCOUNT_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND T.OUT_YARD_KIND IN ('1') THEN T.ACT_WGT/1000 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND T.IN_YARD_KIND = '2' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('1') THEN 1 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND T.IN_YARD_KIND = '2' THEN 1 ELSE 0 END) + SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = C_PKG_UIM.GET_PRE_LAST_DATE(?) AND T.OUT_YARD_KIND IN ('1') THEN 1 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = C_PKG_UIM.GET_PRE_LAST_DATE(?) AND T.IN_YARD_KIND = '2' THEN 1 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = C_PKG_UIM.GET_LAST_DATE(?) AND T.OUT_YARD_KIND IN ('1') THEN 1 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = C_PKG_UIM.GET_LAST_DATE(?) AND T.IN_YARD_KIND = '2' THEN 1 ELSE 0 END) ALLCOILCOUNT_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('1') THEN T.ACT_WGT/1000 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND T.IN_YARD_KIND = '2' THEN T.ACT_WGT/1000 ELSE 0 END) + SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = C_PKG_UIM.GET_PRE_LAST_DATE(?) AND T.OUT_YARD_KIND IN ('1') THEN T.ACT_WGT/1000 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = C_PKG_UIM.GET_PRE_LAST_DATE(?) AND T.IN_YARD_KIND = '2' THEN T.ACT_WGT/1000 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = C_PKG_UIM.GET_LAST_DATE(?) AND T.OUT_YARD_KIND IN ('1') THEN T.ACT_WGT/1000 ELSE 0 END) - SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = C_PKG_UIM.GET_LAST_DATE(?) AND T.IN_YARD_KIND = '2' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) THEN 1 ELSE 0 END) RCOILCOUNT ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT FROM C_TBK02_COIL_COMM T ,(SELECT T.C_SPEC_STL_GRD STL_GRD,MAX(T.C_ORD_USE_TP) ORD_USE_TP FROM TBB01_KEY_PROD T WHERE T.PROD_LINE = 'C' GROUP BY T.C_SPEC_STL_GRD) B WHERE T.STL_GRD = B.STL_GRD(+) AND T.STL_GRD IS NOT NULL GROUP BY C_PKG_UIM.GET_RSTEELCODE(T.STL_GRD) ) WHERE nvl(ALLCOILCOUNT_E,0) <> 0 or nvl(ALLCOILCOUNT_T,0) <> 0 or nvl(RCOUNT,0) <> 0 ORDER BY ORD_USE_TP,STL_GRD,COIL_SIZE ]]> = ? AND ? IS NOT NULL))THEN NVL(T.ACT_WGT, 0) ELSE 0 END) / 1000 WGTSUM_B, --WGTSUM_I1 收(生产)数量 SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME, 1, 8) BETWEEN ? AND ?)AND T.IN_YARD_KIND = '1' THEN NVL(T.ACT_WGT, 0) ELSE 0 END) / 1000 - SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME, 1, 8) BETWEEN ? AND ?) AND T.OUT_YARD_KIND IN('2') THEN NVL(T.ACT_WGT, 0) ELSE 0 END) / 1000 WGTSUM_I1, --WGTSUM_I2 本月止累计(收)生产 SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME, 1,6) = SUBSTR(?,1,6)) AND (SUBSTR(T.YARD_ENTRY_DTIME, 1, 8) <= ?) AND T.IN_YARD_KIND = '1' THEN NVL(T.ACT_WGT, 0) ELSE 0 END) / 1000 - SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME, 1, 6) = SUBSTR(?,1,6)) AND (SUBSTR(T.TRNF_DTIME, 1,8) <= ?) AND T.OUT_YARD_KIND IN('2') THEN NVL(T.ACT_WGT, 0) ELSE 0 END) / 1000 WGTSUM_I2, --WGTSUM_O1 发(消耗)数量 SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME, 1, 8) BETWEEN ? AND ?) AND T.COIL_STAT = '3' AND T.OUT_YARD_KIND IN('1') THEN NVL(T.ACT_WGT, 0) ELSE 0 END) / 1000 - SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME, 1, 8) BETWEEN ? AND ?)AND T.IN_YARD_KIND = '2' THEN NVL(T.ACT_WGT, 0) ELSE 0 END) / 1000 WGTSUM_O1, --WGTSUM_O2 本月止累计发(消耗) SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME, 1, 6) = SUBSTR(?,1,6)) AND (SUBSTR(T.TRNF_DTIME, 1,8) <= ?) AND T.COIL_STAT = '3' AND T.OUT_YARD_KIND IN('1') THEN NVL(T.ACT_WGT, 0) ELSE 0 END) / 1000 - SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME, 1, 6) = SUBSTR(?,1,6) ) AND (SUBSTR(T.YARD_ENTRY_DTIME, 1,8) <= ?) AND T.IN_YARD_KIND = '2' THEN NVL(T.ACT_WGT, 0) ELSE 0 END) / 1000 WGTSUM_O2, --WGTSUM_E 期末库存量 REMARK 备注 SUM(CASE WHEN (T.COIL_STAT = '2' AND T.CUR_LOAD_LOC IS NOT NULL) THEN NVL(T.ACT_WGT, 0) ELSE 0 END) / 1000 WGTSUM_E FROM C_TBK02_COIL_COMM T,(SELECT T.C_SPEC_STL_GRD STL_GRD,MAX(T.C_ORD_USE_TP) ORD_USE_TP FROM TBB01_KEY_PROD T WHERE T.PROD_LINE = 'C' GROUP BY T.C_SPEC_STL_GRD) B WHERE T.STL_GRD = B.STL_GRD(+) AND T.STL_GRD IS NOT NULL GROUP BY C_PKG_UIM.GET_RSTEELCODE(T.STL_GRD)) ORDER BY ORD_USE_TP,STL_GRD ]]> 0 OR ALLLEIJI_T <> 0 --OR RCOUNT <> 0 UNION SELECT SPEC_STL_GRD,2 SEQ,'小计' T_W_E,COILCOUNT_E,WGTSUM_E,ALLCOILCOUNT_E,ALLWGTSUM_E ,'' T_W_T ,LEIJI_T,ALLLEIJI_T,RCOILCOUNT,ORD_USE_TP,INGR_DEC_GRD FROM( SELECT T.SPEC_STL_GRD ,MIN(B.ORD_USE_TP) ORD_USE_TP ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) AND T.LINE_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) COILCOUNT_E --重卷 ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) AND T.LINE_TP = 'L' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_E --连退 ,SUM(CASE WHEN SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ? AND T.LINE_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) ALLCOILCOUNT_E ,SUM(CASE WHEN SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ? AND T.LINE_TP = 'L' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2','3') THEN T.ACT_WGT/1000 ELSE 0 END) LEIJI_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('2','3') THEN T.ACT_WGT/1000 ELSE 0 END) ALLLEIJI_T -- ,SUM(CASE WHEN (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null) AND T.LINE_TP = 'C' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOILCOUNT -- ,SUM(CASE WHEN (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null) AND T.LINE_TP = 'L' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT ,SUM(CASE WHEN (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null) AND T.LINE_TP IN('C','L') THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOILCOUNT ,null INGR_DEC_GRD FROM C_TBC02_COIL_COMM T ,(SELECT T.SPEC_STL_GRD,MAX(T.ORD_USE_TP) ORD_USE_TP FROM TBB01_KEY_PROD T WHERE T.PROD_LINE = 'C' GROUP BY T.SPEC_STL_GRD) B WHERE T.SPEC_STL_GRD = B.SPEC_STL_GRD(+) AND T.SPEC_STL_GRD IS NOT NULL GROUP BY T.SPEC_STL_GRD ) UNION SELECT '' SPEC_STL_GRD,3 SEQ,'合计' T_W_E,COILCOUNT_E,WGTSUM_E,ALLCOILCOUNT_E,ALLWGTSUM_E ,'' T_W_T ,LEIJI_T,ALLLEIJI_T,RCOILCOUNT,'1' ORD_USE_TP,INGR_DEC_GRD FROM( SELECT SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) AND T.LINE_TP = 'L' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_E ,SUM(CASE WHEN (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?) AND T.LINE_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) COILCOUNT_E ,SUM(CASE WHEN SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ? AND T.LINE_TP = 'L' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E ,SUM(CASE WHEN SUBSTR(T.YARD_ENTRY_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.YARD_ENTRY_DTIME,1,8) <= ? AND T.LINE_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) ALLCOILCOUNT_E ,SUM(CASE WHEN (SUBSTR(T.TRNF_DTIME,1,8) between ? and ?) AND T.OUT_YARD_KIND IN ('2','3') THEN T.ACT_WGT/1000 ELSE 0 END) LEIJI_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND T.OUT_YARD_KIND IN ('2','3') THEN T.ACT_WGT/1000 ELSE 0 END) ALLLEIJI_T --,SUM(CASE WHEN (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null) AND T.LINE_TP = 'C' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOILCOUNT --,SUM(CASE WHEN (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null) AND T.LINE_TP = 'L' THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT ,SUM(CASE WHEN (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null) AND T.LINE_TP IN('L','C') THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOILCOUNT ,SUM(CASE WHEN (T.INGR_DEC_GRD IN ('1') AND (SUBSTR(T.YARD_ENTRY_DTIME,1,8) between ? and ?)) THEN T.ACT_WGT/1000 ELSE 0 END) INGR_DEC_GRD FROM C_TBC02_COIL_COMM T ,(SELECT T.SPEC_STL_GRD,MAX(T.ORD_USE_TP) ORD_USE_TP FROM TBB01_KEY_PROD T WHERE T.PROD_LINE = 'C' GROUP BY T.SPEC_STL_GRD) B WHERE T.SPEC_STL_GRD = B.SPEC_STL_GRD(+) AND T.SPEC_STL_GRD IS NOT NULL ) ) ORDER BY ORD_USE_TP,SPEC_STL_GRD,SEQ,T_W_E ]]> 0 OR ALLCOILCOUNT_T <> 0 OR RCOUNT <> 0 UNION SELECT SPEC_STL_GRD,2 SEQ,'小计' T_W_E,COILCOUNT_E,WGTSUM_E,ALLCOILCOUNT_E,ALLWGTSUM_E,ALLCOILCOUNT_EN,ALLWGTSUM_EN ,'' T_W_T,COILCOUNT_T,WGTSUM_T,ALLCOILCOUNT_T,ALLWGTSUM_T,ALLCOILCOUNT_TN,ALLWGTSUM_TN,RCOILCOUNT,RCOUNT ,COILCOUNT_E1,WGTSUM_E1,ALLCOILCOUNT_E1,ALLWGTSUM_E1,ALLCOILCOUNT_E1N,ALLWGTSUM_E1N ,COILCOUNT_T1,WGTSUM_T1,ALLCOILCOUNT_T1,ALLWGTSUM_T1,ALLCOILCOUNT_T1N,ALLWGTSUM_T1N ,COILCOUNT_T2,WGTSUM_T2,ALLCOILCOUNT_T2,ALLWGTSUM_T2,ALLCOILCOUNT_T2N,ALLWGTSUM_T2N,RCOILCOUNT1,RCOUNT1,ORD_USE_TP FROM( SELECT T.SPEC_STL_GRD ,MIN(B.ORD_USE_TP) ORD_USE_TP ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) = 12 THEN 1 ELSE 0 END) COILCOUNT_E ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) = 12 THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_E ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 THEN 1 ELSE 0 END) ALLCOILCOUNT_E ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 THEN 1 ELSE 0 END) ALLCOILCOUNT_EN ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_EN ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) COILCOUNT_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) ALLCOILCOUNT_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) ALLCOILCOUNT_TN ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_TN ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND LENGTH(T.COIL_NO) = 12 and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) THEN 1 ELSE 0 END) RCOILCOUNT ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND LENGTH(T.COIL_NO) = 12 AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) THEN 1 ELSE 0 END) COILCOUNT_E1 ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_E1 ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) THEN 1 ELSE 0 END) ALLCOILCOUNT_E1 ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E1 ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) THEN 1 ELSE 0 END) ALLCOILCOUNT_E1N ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E1N ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) COILCOUNT_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) ALLCOILCOUNT_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) ALLCOILCOUNT_T1N ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T1N ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN 1 ELSE 0 END) COILCOUNT_T2 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T2 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN 1 ELSE 0 END) ALLCOILCOUNT_T2 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T2 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN 1 ELSE 0 END) ALLCOILCOUNT_T2N ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T2N ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) THEN 1 ELSE 0 END) RCOILCOUNT1 ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT1 FROM COLDCOIL T ,(SELECT T.SPEC_STL_GRD,MAX(T.ORD_USE_TP) ORD_USE_TP FROM TBB01_KEY_PROD T WHERE T.PROD_LINE = 'C' GROUP BY T.SPEC_STL_GRD) B WHERE T.SPEC_STL_GRD = B.SPEC_STL_GRD(+) AND T.SPEC_STL_GRD IS NOT NULL GROUP BY T.SPEC_STL_GRD ) UNION SELECT '' SPEC_STL_GRD,3 SEQ,'合计' T_W_E,COILCOUNT_E,WGTSUM_E,ALLCOILCOUNT_E,ALLWGTSUM_E,ALLCOILCOUNT_EN,ALLWGTSUM_EN ,'' T_W_T,COILCOUNT_T,WGTSUM_T,ALLCOILCOUNT_T,ALLWGTSUM_T,ALLCOILCOUNT_TN,ALLWGTSUM_TN,RCOILCOUNT,RCOUNT ,COILCOUNT_E1,WGTSUM_E1,ALLCOILCOUNT_E1,ALLWGTSUM_E1,ALLCOILCOUNT_E1N,ALLWGTSUM_E1N ,COILCOUNT_T1,WGTSUM_T1,ALLCOILCOUNT_T1,ALLWGTSUM_T1,ALLCOILCOUNT_T1N,ALLWGTSUM_T1N ,COILCOUNT_T2,WGTSUM_T2,ALLCOILCOUNT_T2,ALLWGTSUM_T2,ALLCOILCOUNT_T2N,ALLWGTSUM_T2N,RCOILCOUNT1,RCOUNT1,'1' ORD_USE_TP FROM( SELECT SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) = 12 THEN 1 ELSE 0 END) COILCOUNT_E ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) = 12 THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_E ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 THEN 1 ELSE 0 END) ALLCOILCOUNT_E ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 THEN 1 ELSE 0 END) ALLCOILCOUNT_EN ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_EN ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) COILCOUNT_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) ALLCOILCOUNT_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) ALLCOILCOUNT_TN ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) = 12 AND T.OUT_YARD_KIND IN ('2') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_TN ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND LENGTH(T.COIL_NO) = 12 and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) THEN 1 ELSE 0 END) RCOILCOUNT ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND LENGTH(T.COIL_NO) = 12 AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) THEN 1 ELSE 0 END) COILCOUNT_E1 ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_E1 ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) THEN 1 ELSE 0 END) ALLCOILCOUNT_E1 ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E1 ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) THEN 1 ELSE 0 END) ALLCOILCOUNT_E1N ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.MILL_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_E1N ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) COILCOUNT_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) ALLCOILCOUNT_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T1 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN 1 ELSE 0 END) ALLCOILCOUNT_T1N ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'C' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T1N ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN 1 ELSE 0 END) COILCOUNT_T2 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,8) = ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN T.ACT_WGT/1000 ELSE 0 END) WGTSUM_T2 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN 1 ELSE 0 END) ALLCOILCOUNT_T2 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,6) = SUBSTR(?,1,6) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T2 ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN 1 ELSE 0 END) ALLCOILCOUNT_T2N ,SUM(CASE WHEN SUBSTR(T.TRNF_DTIME,1,4) = SUBSTR(?,1,4) AND SUBSTR(T.TRNF_DTIME,1,8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND T.OUT_YARD_KIND IN ('2','3') AND T.DLIV_TP = 'T' THEN T.ACT_WGT/1000 ELSE 0 END) ALLWGTSUM_T2N ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) and (t.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) THEN 1 ELSE 0 END) RCOILCOUNT1 ,SUM(CASE WHEN SUBSTR(T.MILL_DTIME, 1, 8) <= ? AND LENGTH(T.COIL_NO) IN(15,17) AND (T.COIL_STAT = '2' and t.CUR_LOAD_LOC is not null or SUBSTR(T.TRNF_DTIME, 1, 8) > ?) THEN NVL(T.ACT_WGT, 0) ELSE 0 END)/1000 RCOUNT1 FROM COLDCOIL T ,(SELECT T.SPEC_STL_GRD,MAX(T.ORD_USE_TP) ORD_USE_TP FROM TBB01_KEY_PROD T WHERE T.PROD_LINE = 'C' GROUP BY T.SPEC_STL_GRD) B WHERE T.SPEC_STL_GRD = B.SPEC_STL_GRD(+) AND T.SPEC_STL_GRD IS NOT NULL ) ) ORDER BY ORD_USE_TP,SPEC_STL_GRD,SEQ,T_W_E ]]> = 0.3 and l.thk < 0.5 and (l.mill_dtime between ? and ?) then l.act_wgt else 0 end) / 1000 || '' act_wgt2, sum(case when l.thk >= 0.3 and l.thk < 0.5 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt2, sum(case when l.thk >= 0.5 and l.thk < 0.6 and (l.mill_dtime between ? and ?) then l.act_wgt else 0 end) / 1000 || '' act_wgt2_3, sum(case when l.thk >= 0.5 and l.thk < 0.6 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt2_3, sum(case when l.thk >= 0.6 and l.thk < 1 and (l.mill_dtime between ? and ?) then l.act_wgt else 0 end) / 1000 || '' act_wgt3, sum(case when l.thk >= 0.6 and l.thk < 1 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt3, sum(case when l.thk >= 1 and l.thk < 3 and (l.mill_dtime between ? and ?) then l.act_wgt else 0 end) / 1000 || '' act_wgt4, sum(case when l.thk >= 1 and l.thk < 3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt4, sum(case when l.thk >= 3 and (l.mill_dtime between ? and ?) then l.act_wgt else 0 end) / 1000 || '' act_wgt5, sum(case when l.thk >= 3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt5, sum(case when (l.mill_dtime between ? and ?) then l.act_wgt else 0 end) / 1000 || '' act_wgt, sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) AND NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union all select 1 num, '合计' spec_stl_grd, '2' seq, '产量' product_name, 't' unit, sum(case when l.thk < 0.3 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / 1000 || '' act_wgt1, sum(case when l.thk < 0.3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt1, sum(case when l.thk >= 0.3 and l.thk < 0.5 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / 1000 || '' act_wgt2, sum(case when l.thk >= 0.3 and l.thk < 0.5 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt2, sum(case when l.thk >= 0.5 and l.thk < 0.6 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / 1000 || '' act_wgt2_3, sum(case when l.thk >= 0.5 and l.thk < 0.6 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt2_3, sum(case when l.thk >= 0.6 and l.thk < 1 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / 1000 || '' act_wgt3, sum(case when l.thk >= 0.6 and l.thk < 1 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt3, sum(case when l.thk >= 1 and l.thk < 3 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / 1000 || '' act_wgt4, sum(case when l.thk >= 1 and l.thk < 3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt4, sum(case when l.thk >= 3 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / 1000 || '' act_wgt5, sum(case when l.thk >= 3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt5, sum(case when (l.mill_dtime between ? and ?) then l.WGT else 0 end) / 1000 || '' act_wgt, sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) AND NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union all --3 ? select 1 num, '合计' spec_stl_grd, '3' seq, '成材率' product_name, 't' unit, decode(nvl(sum(case when l.thk < 0.3 and (l.mill_dtime between ? and ?) then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk < 0.3 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / sum(case when l.thk < 0.3 and (l.mill_dtime between ? and ?) then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt1, decode(nvl(sum(case when l.thk < 0.3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk < 0.3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when l.thk < 0.3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt1, decode(nvl(sum(case when l.thk >= 0.3 and l.thk < 0.5 and (l.mill_dtime between ? and ?) then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk >= 0.3 and l.thk < 0.5 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / sum(case when l.thk >= 0.3 and l.thk < 0.5 and (l.mill_dtime between ? and ?) then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt2, decode(nvl(sum(case when l.thk >= 0.3 and l.thk < 0.5 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk >= 0.3 and l.thk < 0.5 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when l.thk >= 0.3 and l.thk < 0.5 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt2, decode(nvl(sum(case when l.thk >= 0.5 and l.thk < 0.6 and (l.mill_dtime between ? and ?) then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk >= 0.5 and l.thk < 0.6 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / sum(case when l.thk >= 0.5 and l.thk < 0.6 and (l.mill_dtime between ? and ?) then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt2_3, decode(nvl(sum(case when l.thk >= 0.5 and l.thk < 0.6 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk >= 0.5 and l.thk < 0.6 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when l.thk >= 0.5 and l.thk < 0.6 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt2_3, decode(nvl(sum(case when l.thk >= 0.6 and l.thk < 1 and (l.mill_dtime between ? and ?) then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk >= 0.6 and l.thk < 1 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / sum(case when l.thk >= 0.6 and l.thk < 1 and (l.mill_dtime between ? and ?) then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt3, decode(nvl(sum(case when l.thk >= 0.6 and l.thk < 1 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk >= 0.6 and l.thk < 1 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when l.thk >= 0.6 and l.thk < 1 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt3, decode(nvl(sum(case when l.thk >= 1 and l.thk < 3 and (l.mill_dtime between ? and ?) then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk >= 1 and l.thk < 3 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / sum(case when l.thk >= 1 and l.thk < 3 and (l.mill_dtime between ? and ?) then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt4, decode(nvl(sum(case when l.thk >= 1 and l.thk < 3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk >= 1 and l.thk < 3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when l.thk >= 1 and l.thk < 3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt4, decode(nvl(sum(case when l.thk >= 3 and (l.mill_dtime between ? and ?) then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk >= 3 and (l.mill_dtime between ? and ?) then l.WGT else 0 end) / sum(case when l.thk >= 3 and (l.mill_dtime between ? and ?) then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt5, decode(nvl(sum(case when l.thk >= 3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.thk >= 3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when l.thk >= 3 and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt5, decode(nvl(sum(case when (l.mill_dtime between ? and ?) then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when (l.mill_dtime between ? and ?) then l.WGT else 0 end) / sum(case when (l.mill_dtime between ? and ?) then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt, decode(nvl(sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) AND NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union select 2 num,spec_stl_grd,seq,product_name,unit ,(case when seq = '3' then decode(nvl(k_wgt1,0),0,'0%',nvl(trunc(l_wgt1/k_wgt1*100,2),0)||'%') else act_wgt1 end) act_wgt1 ,(case when seq = '3' then decode(nvl(sum_k_wgt1,0),0,'0%',nvl(trunc(sum_l_wgt1/sum_k_wgt1*100,2),0)||'%') else sumact_wgt1 end) sumact_wgt1 ,(case when seq = '3' then decode(nvl(k_wgt2,0),0,'0%',nvl(trunc(l_wgt2/k_wgt2*100,2),0)||'%') else act_wgt2 end) act_wgt2 ,(case when seq = '3' then decode(nvl(sum_k_wgt2,0),0,'0%',nvl(trunc(sum_l_wgt2/sum_k_wgt2*100,2),0)||'%') else sumact_wgt2 end) sumact_wgt2 ,(case when seq = '3' then decode(nvl(k_wgt2_3,0),0,'0%',nvl(trunc(l_wgt2_3/k_wgt2_3*100,2),0)||'%') else act_wgt2_3 end) act_wgt2_3 ,(case when seq = '3' then decode(nvl(sum_k_wgt2_3,0),0,'0%',nvl(trunc(sum_l_wgt2_3/sum_k_wgt2_3*100,2),0)||'%') else sumact_wgt2_3 end) sumact_wgt2_3 ,(case when seq = '3' then decode(nvl(k_wgt3,0),0,'0%',nvl(trunc(l_wgt3/k_wgt3*100,2),0)||'%') else act_wgt3 end) act_wgt3 ,(case when seq = '3' then decode(nvl(sum_k_wgt3,0),0,'0%',nvl(trunc(sum_l_wgt3/sum_k_wgt3*100,2),0)||'%') else sumact_wgt3 end) sumact_wgt3 ,(case when seq = '3' then decode(nvl(k_wgt4,0),0,'0%',nvl(trunc(l_wgt4/k_wgt4*100,2),0)||'%') else act_wgt4 end) act_wgt4 ,(case when seq = '3' then decode(nvl(sum_k_wgt4,0),0,'0%',nvl(trunc(sum_l_wgt4/sum_k_wgt4*100,2),0)||'%') else sumact_wgt4 end) sumact_wgt4 ,(case when seq = '3' then decode(nvl(k_wgt5,0),0,'0%',nvl(trunc(l_wgt5/k_wgt5*100,2),0)||'%') else act_wgt5 end) act_wgt5 ,(case when seq = '3' then decode(nvl(sum_k_wgt5,0),0,'0%',nvl(trunc(sum_l_wgt5/sum_k_wgt5*100,2),0)||'%') else sumact_wgt5 end) sumact_wgt5 ,(case when seq = '3' then decode(nvl(k_wgt,0),0,'0%',nvl(trunc(l_wgt/k_wgt*100,2),0)||'%') else act_wgt end) act_wgt ,(case when seq = '3' then decode(nvl(sum_k_wgt,0),0,'0%',nvl(trunc(sum_l_wgt/sum_k_wgt*100,2),0)||'%') else sumact_wgt end) sumact_wgt from ( select a.spec_stl_grd,a.product_name,seq,'t' unit ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk < 0.3 and (a.mill_dtime between ? and ?) then a.l_wgt/a.k_wgt else null end))*100,2),0)||'%' else to_char(sum(case when a.thk < 0.3 and (a.mill_dtime between ? and ?) then a.act_wgt else 0 end)) end) act_wgt1 ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk < 0.3 and a.mill_dtime <= ? then a.l_wgt/a.k_wgt else null end))*100,2),0)||'%' else to_char(sum(case when a.thk < 0.3 and a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt1 ,(case when a.seq = 3 then sum(case when a.thk < 0.3 and (a.mill_dtime between ? and ?) then a.k_wgt else 0 end) else null end) k_wgt1 ,(case when a.seq = 3 then sum(case when a.thk < 0.3 and (a.mill_dtime between ? and ?) then a.l_wgt else 0 end) else null end) l_wgt1 ,(case when a.seq = 3 then sum(case when a.thk < 0.3 and a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt1 ,(case when a.seq = 3 then sum(case when a.thk < 0.3 and a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt1 ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk >= 0.3 and a.thk < 0.5 and (a.mill_dtime between ? and ?) then a.l_wgt/a.k_wgt else null end))*100,2),0)||'%' else to_char(sum(case when a.thk >= 0.3 and a.thk < 0.5 and (a.mill_dtime between ? and ?) then a.act_wgt else 0 end)) end) act_wgt2 ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk >= 0.3 and a.thk < 0.5 and a.mill_dtime <= ? then a.l_wgt/a.k_wgt else null end))*100,2),0)||'%' else to_char(sum(case when a.thk >= 0.3 and a.thk < 0.5 and a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt2 ,(case when a.seq = 3 then sum(case when a.thk >= 0.3 and a.thk < 0.5 and (a.mill_dtime between ? and ?) then a.k_wgt else 0 end) else null end) k_wgt2 ,(case when a.seq = 3 then sum(case when a.thk >= 0.3 and a.thk < 0.5 and (a.mill_dtime between ? and ?) then a.l_wgt else 0 end) else null end) l_wgt2 ,(case when a.seq = 3 then sum(case when a.thk >= 0.3 and a.thk < 0.5 and a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt2 ,(case when a.seq = 3 then sum(case when a.thk >= 0.3 and a.thk < 0.5 and a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt2 ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk >= 0.5 and a.thk < 0.6 and (a.mill_dtime between ? and ?) then a.l_wgt/a.k_wgt else null end))*100,2),0)||'%' else to_char(sum(case when a.thk >= 0.5 and a.thk < 0.6 and (a.mill_dtime between ? and ?) then a.act_wgt else 0 end)) end) act_wgt2_3 ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk >= 0.5 and a.thk < 0.6 and a.mill_dtime <= ? then a.l_wgt/a.k_wgt else null end))*100,2),0)||'%' else to_char(sum(case when a.thk >= 0.5 and a.thk < 0.6 and a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt2_3 ,(case when a.seq = 3 then sum(case when a.thk >= 0.5 and a.thk < 0.6 and (a.mill_dtime between ? and ?) then a.k_wgt else 0 end) else null end) k_wgt2_3 ,(case when a.seq = 3 then sum(case when a.thk >= 0.5 and a.thk < 0.6 and (a.mill_dtime between ? and ?) then a.l_wgt else 0 end) else null end) l_wgt2_3 ,(case when a.seq = 3 then sum(case when a.thk >= 0.5 and a.thk < 0.6 and a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt2_3 ,(case when a.seq = 3 then sum(case when a.thk >= 0.5 and a.thk < 0.6 and a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt2_3 ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk >= 0.6 and a.thk < 1 and (a.mill_dtime between ? and ?) then a.l_wgt/a.k_wgt else null end))*100,2),0)||'%' else to_char(sum(case when a.thk >= 0.6 and a.thk < 1 and (a.mill_dtime between ? and ?) then a.act_wgt else 0 end)) end) act_wgt3 ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk >= 0.6 and a.thk < 1 and a.mill_dtime <= ? then a.l_wgt/a.k_wgt else null end))*100,2),0)||'%' else to_char(sum(case when a.thk >= 0.6 and a.thk < 1 and a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt3 ,(case when a.seq = 3 then sum(case when a.thk >= 0.6 and a.thk < 1 and (a.mill_dtime between ? and ?) then a.k_wgt else 0 end) else null end) k_wgt3 ,(case when a.seq = 3 then sum(case when a.thk >= 0.6 and a.thk < 1 and (a.mill_dtime between ? and ?) then a.l_wgt else 0 end) else null end) l_wgt3 ,(case when a.seq = 3 then sum(case when a.thk >= 0.6 and a.thk < 1 and a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt3 ,(case when a.seq = 3 then sum(case when a.thk >= 0.6 and a.thk < 1 and a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt3 ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk >= 1 and a.thk < 3 and (a.mill_dtime between ? and ?) then a.l_wgt/a.k_wgt else null end))*100,2),0)||'%' else to_char(sum(case when a.thk >= 1 and a.thk < 3 and (a.mill_dtime between ? and ?) then a.act_wgt else 0 end)) end) act_wgt4 ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk >= 1 and a.thk < 3 and a.mill_dtime <= ? then a.l_wgt/a.k_wgt else null end))*100,2),0)||'%' else to_char(sum(case when a.thk >= 1 and a.thk < 3 and a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt4 ,(case when a.seq = 3 then sum(case when a.thk >= 1 and a.thk < 3 and (a.mill_dtime between ? and ?) then a.k_wgt else 0 end) else null end) k_wgt4 ,(case when a.seq = 3 then sum(case when a.thk >= 1 and a.thk < 3 and (a.mill_dtime between ? and ?) then a.l_wgt else 0 end) else null end) l_wgt4 ,(case when a.seq = 3 then sum(case when a.thk >= 1 and a.thk < 3 and a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt4 ,(case when a.seq = 3 then sum(case when a.thk >= 1 and a.thk < 3 and a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt4 ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk >= 3 and (a.mill_dtime between ? and ?) then a.l_wgt/a.k_wgt else null end))*100,2),0)||'%' else to_char(sum(case when a.thk >= 3 and (a.mill_dtime between ? and ?) then a.act_wgt else 0 end)) end) act_wgt5 ,(case when a.seq = 3 then nvl(trunc((avg(case when a.thk >= 3 and a.mill_dtime <= ? then a.l_wgt/a.k_wgt else null end)*100),2),0)||'%' else to_char(sum(case when a.thk >= 3 and a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt5 ,(case when a.seq = 3 then sum(case when a.thk >= 3 and (a.mill_dtime between ? and ?) then a.k_wgt else 0 end) else null end) k_wgt5 ,(case when a.seq = 3 then sum(case when a.thk >= 3 and (a.mill_dtime between ? and ?) then a.l_wgt else 0 end) else null end) l_wgt5 ,(case when a.seq = 3 then sum(case when a.thk >= 3 and a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt5 ,(case when a.seq = 3 then sum(case when a.thk >= 3 and a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt5 ,(case when a.seq = 3 then null else to_char(sum(case when (a.mill_dtime between ? and ?) then a.act_wgt else 0 end)) end) act_wgt ,(case when a.seq = 3 then null else to_char(sum(case when a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt ,(case when a.seq = 3 then sum(case when (a.mill_dtime between ? and ?) then a.k_wgt else 0 end) else null end) k_wgt ,(case when a.seq = 3 then sum(case when (a.mill_dtime between ? and ?) then a.l_wgt else 0 end) else null end) l_wgt ,(case when a.seq = 3 then sum(case when a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt ,(case when a.seq = 3 then sum(case when a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt from( select '1' seq, l.SPEC_STL_GRD, '原料' product_name, l.act_wgt/ 1000 ACT_WGT, substr(l.MILL_DTIME, 1, 8) mill_dtime, l.thk, l.wth, l.act_wgt / 1000 k_wgt, l.wgt / 1000 l_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) AND NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union ALL select '2' seq, l.SPEC_STL_GRD, '产量' product_name, l.WGT / 1000 ACT_WGT, l.MILL_DTIME, l.thk, l.wth, l.act_wgt / 1000 k_wgt, l.WGT / 1000 l_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) AND NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union ALL select '3' seq,l.SPEC_STL_GRD,'成材率' product_name,0,l.MILL_DTIME ,l.thk,l.wth,l.ACT_WGT/1000 k_wgt,l.WGT/1000 l_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) AND NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l ) a group by a.spec_stl_grd,a.seq,a.product_name order by a.spec_stl_grd,a.seq ) ) ]]> = nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.act_wgt else 0 end) / 1000 || '' act_wgt1, sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt1, sum(case when l.mill_dtime = ? then l.act_wgt else 0 end) / 1000 || '' act_wgt, sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt from ( SELECT B.COIL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM (SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, SUBSTR(T3.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'L' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) ) A, C_TBL02_COIL_COMM B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 12)) D WHERE B.COIL_NO = SUBSTR(A.OLD_SAMPL_NO, 1, 12) AND A.OLD_SAMPL_NO = D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union all --2 select 1 num, '合计' spec_stl_grd, '2' seq, '产量' product_name, 't' unit, sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.WGT else 0 end) / 1000 || '' act_wgt1, sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt1, sum(case when l.mill_dtime = ? then l.WGT else 0 end) / 1000 || '' act_wgt, sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt from ( SELECT B.COIL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM (SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, SUBSTR(T3.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'L' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) ) A, C_TBL02_COIL_COMM B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 12)) D WHERE B.COIL_NO = SUBSTR(A.OLD_SAMPL_NO, 1, 12) AND A.OLD_SAMPL_NO = D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union all --3 select 1 num, '合计' spec_stl_grd, '3' seq, '成材率' product_name, 't' unit, decode(nvl(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.WGT else 0 end) / sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt1, decode(nvl(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt1, decode(nvl(sum(case when l.mill_dtime = ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.mill_dtime = ? then l.WGT else 0 end) / sum(case when l.mill_dtime = ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt, decode(nvl(sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt from ( SELECT B.COIL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM (SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, SUBSTR(T3.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'L' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) ) A, C_TBL02_COIL_COMM B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 12)) D WHERE B.COIL_NO = SUBSTR(A.OLD_SAMPL_NO, 1, 12) AND A.OLD_SAMPL_NO = D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union --4 select 2 num, spec_stl_grd, seq, product_name, unit, (case when seq = '3' then decode(nvl(k_wgt1, 0), 0, '0%', nvl(trunc(l_wgt1 / k_wgt1 * 100, 2), 0) || '%') else act_wgt1 end) act_wgt1, (case when seq = '3' then decode(nvl(sum_k_wgt1, 0), 0, '0%', nvl(trunc(sum_l_wgt1 / sum_k_wgt1 * 100, 2), 0) || '%') else sumact_wgt1 end) sumact_wgt1, (case when seq = '3' then decode(nvl(k_wgt, 0), 0, '0%', nvl(trunc(l_wgt / k_wgt * 100, 2), 0) || '%') else act_wgt end) act_wgt, (case when seq = '3' then decode(nvl(sum_k_wgt, 0), 0, '0%', nvl(trunc(sum_l_wgt / sum_k_wgt * 100, 2), 0) || '%') else sumact_wgt end) sumact_wgt from (select a.spec_stl_grd, a.product_name, seq, 't' unit, (case when a.seq = 3 then nvl(trunc((avg(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.l_wgt / a.k_wgt else null end)) * 100, 2), 0) || '%' else to_char(sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.act_wgt else 0 end)) end) act_wgt1, (case when a.seq = 3 then nvl(trunc((avg(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.l_wgt / a.k_wgt else null end)) * 100, 2), 0) || '%' else to_char(sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.k_wgt else 0 end) else null end) k_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.l_wgt else 0 end) else null end) l_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt1, (case when a.seq = 3 then null else to_char(sum(case when a.mill_dtime = ? then a.act_wgt else 0 end)) end) act_wgt, (case when a.seq = 3 then null else to_char(sum(case when a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime = ? then a.k_wgt else 0 end) else null end) k_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime = ? then a.l_wgt else 0 end) else null end) l_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt from (select '1' seq, l.SPEC_STL_GRD, '原料' product_name, l.act_wgt / 1000 ACT_WGT, substr(l.MILL_DTIME, 1, 8) mill_dtime, l.thk, l.wth, l.act_wgt / 1000 k_wgt, l.wgt / 1000 l_wgt from ( SELECT B.COIL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM (SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, SUBSTR(T3.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'L' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) ) A, C_TBL02_COIL_COMM B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 12)) D WHERE B.COIL_NO = SUBSTR(A.OLD_SAMPL_NO, 1, 12) AND A.OLD_SAMPL_NO = D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union ALL select '2' seq, l.SPEC_STL_GRD, '产量' product_name, l.WGT / 1000 ACT_WGT, l.MILL_DTIME, l.thk, l.wth, l.act_wgt / 1000 k_wgt, l.WGT / 1000 l_wgt from ( SELECT B.COIL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM (SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, SUBSTR(T3.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'L' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) ) A, C_TBL02_COIL_COMM B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 12)) D WHERE B.COIL_NO = SUBSTR(A.OLD_SAMPL_NO, 1, 12) AND A.OLD_SAMPL_NO = D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union ALL select '3' seq, l.SPEC_STL_GRD, '成材率' product_name, 0, l.MILL_DTIME, l.thk, l.wth, l.ACT_WGT / 1000 k_wgt, l.WGT / 1000 l_wgt from ( SELECT B.COIL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM (SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, SUBSTR(T3.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'L' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) ) A, C_TBL02_COIL_COMM B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 12) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 12)) D WHERE B.COIL_NO = SUBSTR(A.OLD_SAMPL_NO, 1, 12) AND A.OLD_SAMPL_NO = D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l ) a group by a.spec_stl_grd, a.seq, a.product_name order by a.spec_stl_grd, a.seq)) ]]> = nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.act_wgt else 0 end) / 1000 || '' act_wgt1, sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt1, sum(case when l.mill_dtime = ? then l.act_wgt else 0 end) / 1000 || '' act_wgt, sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6)) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union all --2 select 1 num, '合计' spec_stl_grd, '2' seq, '产量' product_name, 't' unit, sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.WGT else 0 end) / 1000 || '' act_wgt1, sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt1, sum(case when l.mill_dtime = ? then l.WGT else 0 end) / 1000 || '' act_wgt, sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6)) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union all --3 select 1 num, '合计' spec_stl_grd, '3' seq, '成材率' product_name, 't' unit, decode(nvl(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.WGT else 0 end) / sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt1, decode(nvl(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt1, decode(nvl(sum(case when l.mill_dtime = ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.mill_dtime = ? then l.WGT else 0 end) / sum(case when l.mill_dtime = ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt, decode(nvl(sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6)) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union --4 select 2 num, spec_stl_grd, seq, product_name, unit, (case when seq = '3' then decode(nvl(k_wgt1, 0), 0, '0%', nvl(trunc(l_wgt1 / k_wgt1 * 100, 2), 0) || '%') else act_wgt1 end) act_wgt1, (case when seq = '3' then decode(nvl(sum_k_wgt1, 0), 0, '0%', nvl(trunc(sum_l_wgt1 / sum_k_wgt1 * 100, 2), 0) || '%') else sumact_wgt1 end) sumact_wgt1, (case when seq = '3' then decode(nvl(k_wgt, 0), 0, '0%', nvl(trunc(l_wgt / k_wgt * 100, 2), 0) || '%') else act_wgt end) act_wgt, (case when seq = '3' then decode(nvl(sum_k_wgt, 0), 0, '0%', nvl(trunc(sum_l_wgt / sum_k_wgt * 100, 2), 0) || '%') else sumact_wgt end) sumact_wgt from (select a.spec_stl_grd, a.product_name, seq, 't' unit, (case when a.seq = 3 then nvl(trunc((avg(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.l_wgt / a.k_wgt else null end)) * 100, 2), 0) || '%' else to_char(sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.act_wgt else 0 end)) end) act_wgt1, (case when a.seq = 3 then nvl(trunc((avg(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.l_wgt / a.k_wgt else null end)) * 100, 2), 0) || '%' else to_char(sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.k_wgt else 0 end) else null end) k_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.l_wgt else 0 end) else null end) l_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt1, (case when a.seq = 3 then null else to_char(sum(case when a.mill_dtime = ? then a.act_wgt else 0 end)) end) act_wgt, (case when a.seq = 3 then null else to_char(sum(case when a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime = ? then a.k_wgt else 0 end) else null end) k_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime = ? then a.l_wgt else 0 end) else null end) l_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt from (select '1' seq, l.SPEC_STL_GRD, '原料' product_name, l.act_wgt / 1000 ACT_WGT, substr(l.MILL_DTIME, 1, 8) mill_dtime, l.thk, l.wth, l.act_wgt / 1000 k_wgt, l.wgt / 1000 l_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6)) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union ALL select '2' seq, l.SPEC_STL_GRD, '产量' product_name, l.WGT / 1000 ACT_WGT, l.MILL_DTIME, l.thk, l.wth, l.act_wgt / 1000 k_wgt, l.WGT / 1000 l_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6)) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l union ALL select '3' seq, l.SPEC_STL_GRD, '成材率' product_name, 0, l.MILL_DTIME, l.thk, l.wth, l.ACT_WGT / 1000 k_wgt, l.WGT / 1000 l_wgt from ( SELECT B.OLD_SAMPL_NO, DECODE(ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT)),0,1,ROUND(B.ACT_WGT * (A.ACT_WGT / D.ACT))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT T3.COIL_STAT, DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME, 1, 8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.LINE_TP, T3.DIVIDE_YN FROM C_TBC02_COIL_COMM t3 WHERE T3.DIVIDE_YN = 'N' AND T3.COIL_STAT != '1' AND T3.LINE_TP = 'C' AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(t3.MILL_DTIME, 1, 6) = SUBSTR(?, 1, 6)) A, ( SELECT M.* FROM C_TBC02_COIL_COMM M WHERE M.DIVIDE_YN='N' AND M.LINE_TP='L') B, (SELECT DECODE(SUM(J.ACT_WGT),0,1,SUM(J.ACT_WGT)) ACT, SUBSTR(J.OLD_SAMPL_NO, 1, 15) OLD_SAMPL_NO, J.DIVIDE_YN, J.LINE_TP FROM C_TBC02_COIL_COMM J WHERE NVL(J.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') AND SUBSTR(J.MILL_DTIME, 1, 6) = SUBSTR( ? , 1, 6) GROUP BY J.DIVIDE_YN, J.LINE_TP, SUBSTR(J.OLD_SAMPL_NO, 1, 15)) D WHERE SUBSTR(B.OLD_SAMPL_NO,1,14) =SUBSTR(A.OLD_SAMPL_NO,1,14) AND SUBSTR(B.OLD_SAMPL_NO,1,15)= D.OLD_SAMPL_NO AND D.DIVIDE_YN = A.DIVIDE_YN AND D.LINE_TP = A.LINE_TP GROUP BY B.OLD_SAMPL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.LINE_TP, A.DIVIDE_YN, D.ACT ) l ) a group by a.spec_stl_grd, a.seq, a.product_name order by a.spec_stl_grd, a.seq)) ]]> = nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.act_wgt else 0 end) / 1000 || '' act_wgt1, sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt1, sum(case when l.mill_dtime = ? then l.act_wgt else 0 end) / 1000 || '' act_wgt, sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.act_wgt else 0 end) / 1000 || '' sumact_wgt from ( SELECT B.COIL_NO, DECODE( ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT))),0,1,ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT)))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.H_COIL_NO1 OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME,1,8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.COIL_CUT_YN FROM C_TBL02_COIL_COMM t3 WHERE T3.COIL_CUT_YN IS NULL AND T3.COIL_STAT!='1' AND SUBSTR(t3.MILL_DTIME, 1,6) = SUBSTR( ? , 1,6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, C_TBk02_COIL_COMM B, (SELECT F.H_COIL_NO1 OLD_SAMPL_NO,DECODE(F.ACT_WGT,0,1,F.ACT_WGT) WGT FROM C_TBL02_COIL_COMM F WHERE SUBSTR(F.MILL_DTIME, 1, 6) = SUBSTR( ?, 1,6) --AND F.COIL_THK!='0.000' AND NVL(F.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) C WHERE B.COIL_NO =A.OLD_SAMPL_NO AND A.OLD_SAMPL_NO=C.OLD_SAMPL_NO GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.COIL_CUT_YN ) l union all --2 select 1 num, '合计' spec_stl_grd, '2' seq, '产量' product_name, 't' unit, sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.WGT else 0 end) / 1000 || '' act_wgt1, sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt1, sum(case when l.mill_dtime = ? then l.WGT else 0 end) / 1000 || '' act_wgt, sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / 1000 || '' sumact_wgt from ( SELECT B.COIL_NO, DECODE( ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT))),0,1,ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT)))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.H_COIL_NO1 OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME,1,8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.COIL_CUT_YN FROM C_TBL02_COIL_COMM t3 WHERE T3.COIL_CUT_YN IS NULL AND T3.COIL_STAT!='1' AND SUBSTR(t3.MILL_DTIME, 1,6) = SUBSTR( ? , 1,6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, C_TBk02_COIL_COMM B, (SELECT F.H_COIL_NO1 OLD_SAMPL_NO,DECODE(F.ACT_WGT,0,1,F.ACT_WGT) WGT FROM C_TBL02_COIL_COMM F WHERE SUBSTR(F.MILL_DTIME, 1, 6) = SUBSTR( ?, 1,6) --AND F.COIL_THK!='0.000' AND NVL(F.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) C WHERE B.COIL_NO =A.OLD_SAMPL_NO AND A.OLD_SAMPL_NO=C.OLD_SAMPL_NO GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.COIL_CUT_YN ) l union all --3 select 1 num, '合计' spec_stl_grd, '3' seq, '成材率' product_name, 't' unit, decode(nvl(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.WGT else 0 end) / sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and l.mill_dtime = ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt1, decode(nvl(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when (l.thk >= nvl(?, 0) and l.thk <= nvl(?, 99)) and substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt1, decode(nvl(sum(case when l.mill_dtime = ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when l.mill_dtime = ? then l.WGT else 0 end) / sum(case when l.mill_dtime = ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' act_wgt, decode(nvl(sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end), 0), 0, '0', trunc(sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.WGT else 0 end) / sum(case when substr(l.mill_dtime, 1, 6) = substr(?, 1, 6) and l.mill_dtime <= ? then l.ACT_WGT else 0 end) * 100, 2)) || '%' sumact_wgt from ( SELECT B.COIL_NO, DECODE( ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT))),0,1,ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT)))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.H_COIL_NO1 OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME,1,8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.COIL_CUT_YN FROM C_TBL02_COIL_COMM t3 WHERE T3.COIL_CUT_YN IS NULL AND T3.COIL_STAT!='1' AND SUBSTR(t3.MILL_DTIME, 1,6) = SUBSTR( ? , 1,6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, C_TBk02_COIL_COMM B, (SELECT F.H_COIL_NO1 OLD_SAMPL_NO,DECODE(F.ACT_WGT,0,1,F.ACT_WGT) WGT FROM C_TBL02_COIL_COMM F WHERE SUBSTR(F.MILL_DTIME, 1, 6) = SUBSTR( ?, 1,6) --AND F.COIL_THK!='0.000' AND NVL(F.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) C WHERE B.COIL_NO =A.OLD_SAMPL_NO AND A.OLD_SAMPL_NO=C.OLD_SAMPL_NO GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.COIL_CUT_YN ) l union --4 select 2 num, spec_stl_grd, seq, product_name, unit, (case when seq = '3' then decode(nvl(k_wgt1, 0), 0, '0%', nvl(trunc(l_wgt1 / k_wgt1 * 100, 2), 0) || '%') else act_wgt1 end) act_wgt1, (case when seq = '3' then decode(nvl(sum_k_wgt1, 0), 0, '0%', nvl(trunc(sum_l_wgt1 / sum_k_wgt1 * 100, 2), 0) || '%') else sumact_wgt1 end) sumact_wgt1, (case when seq = '3' then decode(nvl(k_wgt, 0), 0, '0%', nvl(trunc(l_wgt / k_wgt * 100, 2), 0) || '%') else act_wgt end) act_wgt, (case when seq = '3' then decode(nvl(sum_k_wgt, 0), 0, '0%', nvl(trunc(sum_l_wgt / sum_k_wgt * 100, 2), 0) || '%') else sumact_wgt end) sumact_wgt from (select a.spec_stl_grd, a.product_name, seq, 't' unit, (case when a.seq = 3 then nvl(trunc((avg(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.l_wgt / a.k_wgt else null end)) * 100, 2), 0) || '%' else to_char(sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.act_wgt else 0 end)) end) act_wgt1, (case when a.seq = 3 then nvl(trunc((avg(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.l_wgt / a.k_wgt else null end)) * 100, 2), 0) || '%' else to_char(sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.k_wgt else 0 end) else null end) k_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime = ? then a.l_wgt else 0 end) else null end) l_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt1, (case when a.seq = 3 then sum(case when (a.thk >= nvl(?, 0) and a.thk <= nvl(?, 99)) and a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt1, (case when a.seq = 3 then null else to_char(sum(case when a.mill_dtime = ? then a.act_wgt else 0 end)) end) act_wgt, (case when a.seq = 3 then null else to_char(sum(case when a.mill_dtime <= ? then a.act_wgt else 0 end)) end) sumact_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime = ? then a.k_wgt else 0 end) else null end) k_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime = ? then a.l_wgt else 0 end) else null end) l_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime <= ? then a.k_wgt else 0 end) else null end) sum_k_wgt, (case when a.seq = 3 then sum(case when a.mill_dtime <= ? then a.l_wgt else 0 end) else null end) sum_l_wgt from (select '1' seq, l.SPEC_STL_GRD, '原料' product_name, l.act_wgt / 1000 ACT_WGT, substr(l.MILL_DTIME, 1, 8) mill_dtime, l.thk, l.wth, l.act_wgt / 1000 k_wgt, l.wgt / 1000 l_wgt from ( SELECT B.COIL_NO, DECODE( ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT))),0,1,ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT)))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.H_COIL_NO1 OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME,1,8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.COIL_CUT_YN FROM C_TBL02_COIL_COMM t3 WHERE T3.COIL_CUT_YN IS NULL AND T3.COIL_STAT!='1' AND SUBSTR(t3.MILL_DTIME, 1,6) = SUBSTR( ? , 1,6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, C_TBk02_COIL_COMM B, (SELECT F.H_COIL_NO1 OLD_SAMPL_NO,DECODE(F.ACT_WGT,0,1,F.ACT_WGT) WGT FROM C_TBL02_COIL_COMM F WHERE SUBSTR(F.MILL_DTIME, 1, 6) = SUBSTR( ?, 1,6) --AND F.COIL_THK!='0.000' AND NVL(F.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) C WHERE B.COIL_NO =A.OLD_SAMPL_NO AND A.OLD_SAMPL_NO=C.OLD_SAMPL_NO GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.COIL_CUT_YN ) l union ALL select '2' seq, l.SPEC_STL_GRD, '产量' product_name, l.WGT / 1000 ACT_WGT, l.MILL_DTIME, l.thk, l.wth, l.act_wgt / 1000 k_wgt, l.WGT / 1000 l_wgt from ( SELECT B.COIL_NO, DECODE( ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT))),0,1,ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT)))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.H_COIL_NO1 OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME,1,8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.COIL_CUT_YN FROM C_TBL02_COIL_COMM t3 WHERE T3.COIL_CUT_YN IS NULL AND T3.COIL_STAT!='1' AND SUBSTR(t3.MILL_DTIME, 1,6) = SUBSTR( ? , 1,6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, C_TBk02_COIL_COMM B, (SELECT F.H_COIL_NO1 OLD_SAMPL_NO,DECODE(F.ACT_WGT,0,1,F.ACT_WGT) WGT FROM C_TBL02_COIL_COMM F WHERE SUBSTR(F.MILL_DTIME, 1, 6) = SUBSTR( ?, 1,6) --AND F.COIL_THK!='0.000' AND NVL(F.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) C WHERE B.COIL_NO =A.OLD_SAMPL_NO AND A.OLD_SAMPL_NO=C.OLD_SAMPL_NO GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.COIL_CUT_YN ) l union ALL select '3' seq, l.SPEC_STL_GRD, '成材率' product_name, 0, l.MILL_DTIME, l.thk, l.wth, l.ACT_WGT / 1000 k_wgt, l.WGT / 1000 l_wgt from ( SELECT B.COIL_NO, DECODE( ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT))),0,1,ROUND(B.ACT_WGT *(A.ACT_WGT/SUM(C.WGT)))) ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT WGT, A.COIL_THK THK, A.COIL_WTH WTH, A.SPEC_STL_GRD, A.MILL_DTIME FROM ( SELECT DECODE(T3.ACT_WGT,0,1,T3.ACT_WGT) ACT_WGT, T3.H_COIL_NO1 OLD_SAMPL_NO, SUBSTR(T3.MILL_DTIME,1,8) MILL_DTIME, T3.SPEC_STL_GRD, T3.COIL_THK, T3.COIL_WTH, T3.COIL_CUT_YN FROM C_TBL02_COIL_COMM t3 WHERE T3.COIL_CUT_YN IS NULL AND T3.COIL_STAT!='1' AND SUBSTR(t3.MILL_DTIME, 1,6) = SUBSTR( ? , 1,6) AND NVL(T3.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) A, C_TBk02_COIL_COMM B, (SELECT F.H_COIL_NO1 OLD_SAMPL_NO,DECODE(F.ACT_WGT,0,1,F.ACT_WGT) WGT FROM C_TBL02_COIL_COMM F WHERE SUBSTR(F.MILL_DTIME, 1, 6) = SUBSTR( ?, 1,6) --AND F.COIL_THK!='0.000' AND NVL(F.EXTSHAPE_QUALITY, 'NULLP') NOT IN ('FP', 'CP') ) C WHERE B.COIL_NO =A.OLD_SAMPL_NO AND A.OLD_SAMPL_NO=C.OLD_SAMPL_NO GROUP BY B.COIL_NO, B.ACT_WGT, A.OLD_SAMPL_NO, A.ACT_WGT, A.MILL_DTIME, A.COIL_THK, A.COIL_WTH, A.SPEC_STL_GRD, A.COIL_CUT_YN ) l ) a group by a.spec_stl_grd, a.seq, a.product_name order by a.spec_stl_grd, a.seq)) ]]>