|
|
@@ -30,21 +30,42 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
{
|
|
|
if (procedure == "本烧")
|
|
|
{
|
|
|
- sqlStr = @" WITH 数据源 AS ( SELECT GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) GID,
|
|
|
- CASE WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =5 THEN '小计'
|
|
|
- WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001002' THEN '小件合计'
|
|
|
- WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001001' THEN '大件合计'
|
|
|
- WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =7 THEN '总计'
|
|
|
- ELSE to_char(pd.GOODSCODE) END AS 产品编码,
|
|
|
- TO_CHAR(PD.LUSTERWAREWEIGHT) AS LUSTERWAREWEIGHT,
|
|
|
-
|
|
|
- PD.GOODSNAME 产品名称,
|
|
|
- PD.LOGONAME 商标,
|
|
|
- PD.DICTIONARYVALUE 釉色,
|
|
|
- PD.GOODSSPECIFICATION 产品规格,
|
|
|
- CASE WHEN GROUPING_ID(PD.GOODSCODE,PD.GOODSTYPENAME,SUBSTR(PD.GOODSTYPECODE, 0, 6))=6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001001' THEN '大件'
|
|
|
- WHEN GROUPING_ID(PD.GOODSCODE,PD.GOODSTYPENAME,SUBSTR(PD.GOODSTYPECODE, 0, 6))=6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001002' THEN '小件'
|
|
|
- ELSE TO_CHAR(PD.GOODSTYPENAME )END 产品类别,
|
|
|
+ sqlStr = @" WITH 数据源 AS (
|
|
|
+ SELECT
|
|
|
+ GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) GID,
|
|
|
+ CASE WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =5 THEN '小计'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =6 AND GOODSTYPENAMESIX='001002' THEN '小件合计'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =6 AND GOODSTYPENAMESIX='001001' THEN '大件合计'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =7 THEN '总计'
|
|
|
+ ELSE to_char(GOODSCODE) END AS 产品编码,
|
|
|
+ LUSTERWAREWEIGHT 单重,
|
|
|
+ GOODSNAME 产品名称,
|
|
|
+ LOGONAME 商标,DICTIONARYVALUE 釉色,
|
|
|
+ GOODSSPECIFICATION 产品规格,
|
|
|
+ CASE WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX)=6 AND GOODSTYPENAMESIX='001001' THEN '大件'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX)=6 AND GOODSTYPENAMESIX='001002' THEN '小件'
|
|
|
+ ELSE TO_CHAR(GOODSTYPENAME )END 产品类别,
|
|
|
+ SUM(出窑量_出窑量) 出窑量_出窑量,
|
|
|
+ SUM(出窑量_出窑量 * LUSTERWAREWEIGHT) 出窑量_出窑重量,
|
|
|
+ SUM(出窑量_产量) 出窑量_产量,
|
|
|
+ SUM(出窑量_产量* LUSTERWAREWEIGHT) 出窑量_合格品重量,
|
|
|
+ SUM(出窑量_残品) 出窑量_残品,
|
|
|
+ SUM(出窑量_残品* LUSTERWAREWEIGHT) 出窑量_残品重量,
|
|
|
+ SUM(原料缺陷) 原料缺陷,
|
|
|
+ SUM(成型缺陷_成A) 成型缺陷_成A,SUM(成型缺陷_成B) 成型缺陷_成B,
|
|
|
+ SUM(成型缺陷_成C) 成型缺陷_成C,SUM(成型缺陷_高压) 成型缺陷_高压,
|
|
|
+ SUM(成型缺陷_打磨) 成型缺陷_打磨,SUM(成型缺陷_擦洗) 成型缺陷_擦洗,
|
|
|
+ SUM(成型缺陷_半检) 成型缺陷_半检,SUM(烧成窑缺陷_施釉)烧成窑缺陷_施釉,
|
|
|
+ SUM(烧成窑缺陷_擦坯) 烧成窑缺陷_擦坯,SUM(烧成窑缺陷_装窑) 烧成窑缺陷_装窑,
|
|
|
+ SUM(烧成窑缺陷_烧窑) 烧成窑缺陷_烧窑,SUM(烧成窑缺陷_出窑) 烧成窑缺陷_出窑, SUM(其他缺陷) 其他缺陷
|
|
|
+ FROM(
|
|
|
+ SELECT pd.GOODSCODE,LUSTERWAREWEIGHT,
|
|
|
+ PD.GOODSNAME ,
|
|
|
+ PD.LOGONAME ,
|
|
|
+ PD.DICTIONARYVALUE ,
|
|
|
+ PD.GOODSSPECIFICATION ,
|
|
|
+ SUBSTR(PD.GOODSTYPECODE, 0, 6) AS GOODSTYPENAMESIX,
|
|
|
+ PD.GOODSTYPENAME,
|
|
|
COUNT(DISTINCT PD.BARCODE ) as 出窑量_出窑量,
|
|
|
COUNT(DISTINCT CASE WHEN PD.GOODSLEVELTYPEID IN (4,5) THEN PD.BARCODE ELSE NULL END) AS 出窑量_产量,
|
|
|
COUNT(DISTINCT CASE WHEN PD.GOODSLEVELTYPEID NOT IN (4,5) AND PD.GOODSLEVELTYPEID IS NOT NULL THEN PD.BARCODE ELSE NULL END) AS 出窑量_残品,
|
|
|
@@ -52,8 +73,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'A') > 0 AND PD.HIGHPRESSUREFLAG=0 AND (DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成A,
|
|
|
COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'B') > 0 AND PD.HIGHPRESSUREFLAG=0 AND (DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成B,
|
|
|
COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'C') > 0 AND PD.HIGHPRESSUREFLAG=0 AND (DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成C,
|
|
|
- COUNT(DISTINCT CASE WHEN PD.HIGHPRESSUREFLAG=1 AND ( DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_高压,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) AND PDS.VALUEFLAG=1 AND df.DEFECTCODE IN ( '10', '12', '13', '14', '15', '16', '17', '18', '19', '20' ) THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END )) AS 成型缺陷_打磨,
|
|
|
+ COUNT(DISTINCT CASE WHEN PD.HIGHPRESSUREFLAG=1 AND ( DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_高压, TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) AND PDS.VALUEFLAG=1 AND df.DEFECTCODE IN ( '10', '12', '13', '14', '15', '16', '17', '18', '19', '20' ) THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END )) AS 成型缺陷_打磨,
|
|
|
TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (5,36,52) AND PDS.VALUEFLAG=1 AND df.DEFECTCODE IN ( '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '25', '34') THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END )) AS 成型缺陷_擦洗,
|
|
|
COUNT(DISTINCT CASE WHEN DEFECT.VALUEFLAG=1 AND DEFECT.DEFECTTYPEID=1 AND DEFECT.DEFECTCODE NOT IN ('001','002','1','2','3') THEN PD.BARCODE ELSE NULL END) 成型缺陷_半检,
|
|
|
TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '36','37','38','39','40','41','42','43','44') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END )) AS 烧成窑缺陷_施釉,
|
|
|
@@ -100,9 +120,11 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
LEFT JOIN TP_PM_DEFECT df ON DF.BARCODE=PD.BARCODE AND DF.VALUEFLAG=1 AND DF.PROCEDUREID NOT IN(61,28)
|
|
|
LEFT JOIN TP_MST_DEFECT DEFECT ON DEFECT.DEFECTID=DF.DEFECTID AND DEFECT.VALUEFLAG=1
|
|
|
INNER JOIN TP_PM_PRODUCTIONDATA PDS ON PDS.BARCODE = PD.BARCODE AND PDS.VALUEFLAG=1
|
|
|
- GROUP BY Grouping sets(
|
|
|
- (PD.GOODSCODE ,PD.GOODSNAME ,PD.LOGONAME ,PD.DICTIONARYVALUE,PD.GOODSSPECIFICATION,PD.GOODSTYPENAME,PD.LUSTERWAREWEIGHT),
|
|
|
- (PD.GOODSTYPENAME),(SUBSTR(pd.GOODSTYPECODE, 0, 6)),())
|
|
|
+ GROUP BY pd.GOODSCODE,LUSTERWAREWEIGHT,PD.GOODSNAME,PD.LOGONAME,PD.DICTIONARYVALUE,
|
|
|
+ PD.GOODSSPECIFICATION,SUBSTR(PD.GOODSTYPECODE, 0, 6),PD.GOODSTYPENAME
|
|
|
+ )
|
|
|
+ GROUP BY Grouping sets((GOODSCODE,GOODSNAME,LOGONAME,DICTIONARYVALUE,GOODSSPECIFICATION,LUSTERWAREWEIGHT,GOODSTYPENAME,GOODSTYPENAMESIX),
|
|
|
+ (GOODSTYPENAME),(GOODSTYPENAMESIX),())
|
|
|
),
|
|
|
工序对应出窑量 AS (
|
|
|
SELECT
|
|
|
@@ -123,7 +145,8 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
LEFT JOIN TP_PM_GROUTINGDAILYDETAIL gd ON gd.barcode=pd.barcode
|
|
|
LEFT JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID=gd.GROUTINGLINEID
|
|
|
WHERE PD.VALUEFLAG=1 AND PD.PROCEDUREID=16
|
|
|
- AND pd.CREATETIME>=@DATEBEGIN@ AND pd.CREATETIME<= @DATEEND@
|
|
|
+ AND pd.CREATETIME>=@DATEBEGIN@
|
|
|
+ AND pd.CREATETIME<= @DATEEND@
|
|
|
)
|
|
|
SELECT
|
|
|
*
|
|
|
@@ -133,12 +156,15 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
TO_CHAR(产品名称) AS 产品名称,
|
|
|
TO_CHAR(产品规格) AS 产品规格,
|
|
|
TO_CHAR(产品类别) AS 产品类别,
|
|
|
- TO_CHAR(LUSTERWAREWEIGHT) 重量,
|
|
|
+ TO_CHAR(单重) 单重,
|
|
|
TO_CHAR(釉色) AS 釉色,
|
|
|
TO_CHAR(商标) AS 商标,
|
|
|
TO_CHAR(出窑量_出窑量) AS 出窑量,
|
|
|
+ TO_CHAR(出窑量_出窑重量) AS 出窑重量,
|
|
|
TO_CHAR(出窑量_产量) AS 产量,
|
|
|
+ TO_CHAR(出窑量_合格品重量) AS 合格品重量,
|
|
|
TO_CHAR(出窑量_残品) AS 残品,
|
|
|
+ TO_CHAR(出窑量_残品重量) AS 残品重量,
|
|
|
DECODE( NVL( 出窑量_产量, 0 ), 0, '0%', TO_CHAR( ( NVL( 出窑量_产量, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) 合格率,
|
|
|
TO_CHAR(原料缺陷) AS 原料缺陷,
|
|
|
TO_CHAR(成型缺陷_成A) AS 成型缺陷_成A,
|
|
|
@@ -157,7 +183,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
FROM 数据源
|
|
|
UNION ALL
|
|
|
SELECT
|
|
|
- DISTINCT
|
|
|
+ DISTINCT
|
|
|
'出窑数',
|
|
|
'',
|
|
|
'',
|
|
|
@@ -168,21 +194,21 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
'',
|
|
|
'',
|
|
|
'',
|
|
|
- '',
|
|
|
+ '','','','',
|
|
|
to_Char(出窑量_出窑量),
|
|
|
- to_Char(成A出窑量),
|
|
|
- to_Char(成B出窑量),
|
|
|
- to_Char(成C出窑量),
|
|
|
- to_Char(高压出窑量),
|
|
|
- to_Char(打磨出窑量),
|
|
|
- to_Char(擦洗出窑量),
|
|
|
- to_Char(半检出窑量),
|
|
|
- to_Char(施釉出窑量),
|
|
|
- to_Char(擦坯出窑量),
|
|
|
- to_Char(装窑出窑量),
|
|
|
- to_Char(烧窑出窑量),
|
|
|
- to_Char(卸窑出窑量),
|
|
|
- to_Char(出窑量_出窑量 )
|
|
|
+ to_Char(成A出窑量),
|
|
|
+ to_Char(成B出窑量),
|
|
|
+ to_Char(成C出窑量),
|
|
|
+ to_Char(高压出窑量),
|
|
|
+ to_Char(打磨出窑量),
|
|
|
+ to_Char(擦洗出窑量),
|
|
|
+ to_Char(半检出窑量),
|
|
|
+ to_Char(施釉出窑量),
|
|
|
+ to_Char(擦坯出窑量),
|
|
|
+ to_Char(装窑出窑量),
|
|
|
+ to_Char(烧窑出窑量),
|
|
|
+ to_Char(卸窑出窑量),
|
|
|
+ to_Char(出窑量_出窑量 )
|
|
|
FROM
|
|
|
工序对应出窑量
|
|
|
LEFT JOIN 数据源 ON 1=1
|
|
|
@@ -196,7 +222,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
'',
|
|
|
'',
|
|
|
'',
|
|
|
- '',
|
|
|
+ '','','','',
|
|
|
'','','','',
|
|
|
DECODE( NVL( 数据源.原料缺陷, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.原料缺陷, 0 ) / DECODE( NVL( 数据源.出窑量_出窑量, 1 ), 0, 1, NVL( 数据源.出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 原料缺陷,
|
|
|
|
|
|
@@ -230,48 +256,68 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
}
|
|
|
else if (procedure == "回烧")
|
|
|
{
|
|
|
- sqlStr = @" WITH 数据源 AS (SELECT
|
|
|
- GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6))GID,
|
|
|
- CASE WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =5 THEN '小计'
|
|
|
- WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001002' THEN '小件合计'
|
|
|
- WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001001' THEN '大件合计'
|
|
|
- WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =7 THEN '总计'
|
|
|
- ELSE to_char(pd.GOODSCODE) END AS 产品编码,
|
|
|
- TO_CHAR(PD.LUSTERWAREWEIGHT) AS LUSTERWAREWEIGHT,
|
|
|
-
|
|
|
- PD.GOODSNAME 产品名称,
|
|
|
- PD.LOGONAME 商标,
|
|
|
- PD.DICTIONARYVALUE 釉色,
|
|
|
- PD.GOODSSPECIFICATION 产品规格,
|
|
|
-
|
|
|
- CASE WHEN GROUPING_ID(PD.GOODSCODE,PD.GOODSTYPENAME,SUBSTR(PD.GOODSTYPECODE, 0, 6))=6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001001' THEN '大件'
|
|
|
- WHEN GROUPING_ID(PD.GOODSCODE,PD.GOODSTYPENAME,SUBSTR(PD.GOODSTYPECODE, 0, 6))=6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001002' THEN '小件'
|
|
|
- ELSE TO_CHAR(PD.GOODSTYPENAME )END 产品类别,
|
|
|
+ sqlStr = @" WITH 数据源 AS (
|
|
|
+ SELECT
|
|
|
+ GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) GID,
|
|
|
+ CASE WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =5 THEN '小计'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =6 AND GOODSTYPENAMESIX='001002' THEN '小件合计'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =6 AND GOODSTYPENAMESIX='001001' THEN '大件合计'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =7 THEN '总计'
|
|
|
+ ELSE to_char(GOODSCODE) END AS 产品编码,
|
|
|
+ LUSTERWAREWEIGHT 单重,
|
|
|
+ GOODSNAME 产品名称,
|
|
|
+ LOGONAME 商标,DICTIONARYVALUE 釉色,
|
|
|
+ GOODSSPECIFICATION 产品规格,
|
|
|
+ CASE WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX)=6 AND GOODSTYPENAMESIX='001001' THEN '大件'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX)=6 AND GOODSTYPENAMESIX='001002' THEN '小件'
|
|
|
+ ELSE TO_CHAR(GOODSTYPENAME )END 产品类别,
|
|
|
+ SUM(出窑量_出窑量) 出窑量_出窑量,
|
|
|
+ SUM(出窑量_出窑量 * LUSTERWAREWEIGHT) 出窑量_出窑重量,
|
|
|
+ SUM(出窑量_产量) 出窑量_产量,
|
|
|
+ SUM(出窑量_产量* LUSTERWAREWEIGHT) 出窑量_合格品重量,
|
|
|
+ SUM(出窑量_残品) 出窑量_残品,
|
|
|
+ SUM(出窑量_残品* LUSTERWAREWEIGHT) 出窑量_残品重量,
|
|
|
+ SUM(原料缺陷) 原料缺陷,
|
|
|
+ SUM(成型缺陷_成A) 成型缺陷_成A,SUM(成型缺陷_成B) 成型缺陷_成B,
|
|
|
+ SUM(成型缺陷_成C) 成型缺陷_成C,SUM(成型缺陷_高压) 成型缺陷_高压,
|
|
|
+ SUM(成型缺陷_打磨) 成型缺陷_打磨,SUM(成型缺陷_擦洗) 成型缺陷_擦洗,
|
|
|
+ SUM(成型缺陷_半检) 成型缺陷_半检,SUM(烧成窑缺陷_施釉)烧成窑缺陷_施釉,
|
|
|
+ SUM(烧成窑缺陷_擦坯) 烧成窑缺陷_擦坯,SUM(烧成窑缺陷_装窑) 烧成窑缺陷_装窑,
|
|
|
+ SUM(烧成窑缺陷_烧窑) 烧成窑缺陷_烧窑,SUM(烧成窑缺陷_出窑) 烧成窑缺陷_出窑, SUM(其他缺陷) 其他缺陷
|
|
|
+ FROM(
|
|
|
+ SELECT pd.GOODSCODE,LUSTERWAREWEIGHT,
|
|
|
+ PD.GOODSNAME ,
|
|
|
+ PD.LOGONAME ,
|
|
|
+ PD.DICTIONARYVALUE ,
|
|
|
+ PD.GOODSSPECIFICATION ,
|
|
|
+ SUBSTR(PD.GOODSTYPECODE, 0, 6) AS GOODSTYPENAMESIX,
|
|
|
+ PD.GOODSTYPENAME,
|
|
|
COUNT(DISTINCT PD.BARCODE ) as 出窑量_出窑量,
|
|
|
COUNT(DISTINCT CASE WHEN PD.GOODSLEVELTYPEID IN (4,5) THEN PD.BARCODE ELSE NULL END) AS 出窑量_产量,
|
|
|
COUNT(DISTINCT CASE WHEN PD.GOODSLEVELTYPEID NOT IN (4,5) AND PD.GOODSLEVELTYPEID IS NOT NULL THEN PD.BARCODE ELSE NULL END) AS 出窑量_残品,
|
|
|
COUNT(DISTINCT CASE WHEN DEFECTTYPEID IN (9,10) THEN PD.BARCODE ELSE NULL END) 原料缺陷,
|
|
|
- COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'A') > 0 AND PD.HIGHPRESSUREFLAG=0 AND DEFECT.DEFECTTYPEID=1 THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成A,
|
|
|
- COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'B') > 0 AND PD.HIGHPRESSUREFLAG=0 AND DEFECT.DEFECTTYPEID=1 THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成B,
|
|
|
- COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'C') > 0 AND PD.HIGHPRESSUREFLAG=0 AND DEFECT.DEFECTTYPEID=1 THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成C,
|
|
|
- COUNT(DISTINCT CASE WHEN PD.HIGHPRESSUREFLAG=1 AND DEFECT.DEFECTTYPEID=1 THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_高压,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) AND df.DEFECTCODE IN ( '10', '12', '13', '14', '15', '16', '17', '18', '19', '20' ) THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END )) AS 成型缺陷_打磨,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (5,36,52) AND df.DEFECTCODE IN ( '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '25', '34') THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END )) AS 成型缺陷_擦洗,
|
|
|
- COUNT(DISTINCT CASE WHEN DEFECT.DEFECTTYPEID=1 THEN PD.BARCODE ELSE NULL END) 成型缺陷_半检,
|
|
|
+ COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'A') > 0 AND PD.HIGHPRESSUREFLAG=0 AND (DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成A,
|
|
|
+ COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'B') > 0 AND PD.HIGHPRESSUREFLAG=0 AND (DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成B,
|
|
|
+ COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'C') > 0 AND PD.HIGHPRESSUREFLAG=0 AND (DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成C,
|
|
|
+ COUNT(DISTINCT CASE WHEN PD.HIGHPRESSUREFLAG=1 AND ( DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_高压, TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) AND PDS.VALUEFLAG=1 AND df.DEFECTCODE IN ( '10', '12', '13', '14', '15', '16', '17', '18', '19', '20' ) THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END )) AS 成型缺陷_打磨,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (5,36,52) AND PDS.VALUEFLAG=1 AND df.DEFECTCODE IN ( '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '25', '34') THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END )) AS 成型缺陷_擦洗,
|
|
|
+ COUNT(DISTINCT CASE WHEN DEFECT.VALUEFLAG=1 AND DEFECT.DEFECTTYPEID=1 AND DEFECT.DEFECTCODE NOT IN ('001','002','1','2','3') THEN PD.BARCODE ELSE NULL END) 成型缺陷_半检,
|
|
|
TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '36','37','38','39','40','41','42','43','44') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END )) AS 烧成窑缺陷_施釉,
|
|
|
TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '47','48','49','50','51','52','53','54','55','56','20','57')AND DF.DEFECTCODE IS NOT NULL AND PD.BARCODE IS NOT NULL THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END ))AS 烧成窑缺陷_擦坯,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '070','071','43','073','074','075','076','077','078','079','069','080') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END )) AS 烧成窑缺陷_装窑,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '61','62','63','64','65','66','67') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END )) AS 烧成窑缺陷_装窑,
|
|
|
TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '69','70','71','43','73','74','75','76','77','78','79','80') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END ))AS 烧成窑缺陷_烧窑,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '0083','0084') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END )) AS 烧成窑缺陷_出窑,
|
|
|
- COUNT(DISTINCT CASE WHEN DF.DEFECTCODE IN ('099','0100') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 其他缺陷
|
|
|
- FROM(SELECT * FROM(
|
|
|
- SELECT
|
|
|
- BARCODE,REWORKPROCEDUREID,GROUTINGLINECODE,GOODSCODE,GOODSNAME,LOGONAME,GOODSLEVELTYPEID,GOODSSPECIFICATION,DICTIONARYVALUE,GOODSTYPECODE,
|
|
|
- LUSTERWAREWEIGHT,HIGHPRESSUREFLAG,PROCEDUREID,GOODSTYPENAME,row_number() over (partition by BARCODE order by GOODSLEVELTYPEID DESC ) as rownums
|
|
|
- FROM(
|
|
|
- SELECT
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '83','84') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END )) AS 烧成窑缺陷_出窑,
|
|
|
+ COUNT(DISTINCT CASE WHEN DF.DEFECTCODE IN ('99','100') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 其他缺陷
|
|
|
+ FROM(
|
|
|
+ SELECT * FROM(
|
|
|
+ SELECT
|
|
|
+ BARCODE,REWORKPROCEDUREID,GROUTINGLINECODE,GOODSCODE,GOODSNAME,LOGONAME,GOODSLEVELTYPEID,GOODSSPECIFICATION,DICTIONARYVALUE,
|
|
|
+ HIGHPRESSUREFLAG,PROCEDUREID,GOODSTYPENAME,GOODSTYPECODE,LUSTERWAREWEIGHT,
|
|
|
+ row_number() over (partition by BARCODE order by GOODSLEVELTYPEID DESC ) as rownums
|
|
|
+ FROM(
|
|
|
+ SELECT
|
|
|
DISTINCT pd.BARCODE,
|
|
|
- PD.REWORKPROCEDUREID,
|
|
|
+ PD.REWORKPROCEDUREID,
|
|
|
pd.GROUTINGLINECODE,
|
|
|
pd.GOODSCODE,
|
|
|
pd.GOODSNAME,
|
|
|
@@ -281,14 +327,14 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
GL.HIGHPRESSUREFLAG,
|
|
|
pd.PROCEDUREID AS PROCEDUREID,
|
|
|
gtp.GOODSTYPENAME,gtp.GOODSTYPECODE,
|
|
|
- CASE WHEN PDLS.GOODSLEVELTYPEID < PD.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
|
|
|
- WHEN PD.GOODSLEVELTYPEID < PDLS.GOODSLEVELTYPEID THEN PDLS.GOODSLEVELTYPEID
|
|
|
+ CASE WHEN PDL.GOODSLEVELTYPEID < PD.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
|
|
|
+ WHEN PD.GOODSLEVELTYPEID < PDL.GOODSLEVELTYPEID THEN PDL.GOODSLEVELTYPEID
|
|
|
WHEN PDL.GOODSLEVELTYPEID IS NULL THEN PD.GOODSLEVELTYPEID
|
|
|
- WHEN PD.GOODSLEVELTYPEID = PDLS.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
|
|
|
+ WHEN PD.GOODSLEVELTYPEID = PDL.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
|
|
|
ELSE NULL END GOODSLEVELTYPEID
|
|
|
- FROM
|
|
|
- TP_PM_PRODUCTIONDATA pd
|
|
|
- INNER JOIN TP_PM_PRODUCTIONDATA PDL ON PDL.BARCODE=PD.BARCODE AND PDL.PROCEDUREID=24
|
|
|
+ FROM
|
|
|
+ TP_PM_PRODUCTIONDATA pd
|
|
|
+ INNER JOIN TP_PM_PRODUCTIONDATA PDL ON PDL.BARCODE=PD.BARCODE AND PDL.PROCEDUREID=24
|
|
|
LEFT JOIN TP_PM_PRODUCTIONDATA PDLS ON PDLS.BARCODE=PD.BARCODE AND PDLS.PROCEDUREID=61 AND PDLS.VALUEFLAG=1
|
|
|
LEFT JOIN TP_MST_GOODS good on good.GOODSID=PD.GOODSID
|
|
|
LEFT JOIN TP_MST_GOODSTYPE gtp ON good.GOODSTYPEID=gtp.GOODSTYPEID
|
|
|
@@ -296,41 +342,43 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
LEFT JOIN TP_PM_GROUTINGDAILYDETAIL gd ON gd.barcode=pd.barcode
|
|
|
LEFT JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID=gd.GROUTINGLINEID
|
|
|
LEFT JOIN TP_MST_DataDictionary ON TP_MST_DataDictionary.DICTIONARYID=gd.GLAZETYPEID AND TP_MST_DataDictionary.DictionaryType = 'TPC002'
|
|
|
- WHERE PD.PROCEDUREID IN (28) AND PD.VALUEFLAG=1 AND PDL.BARCODE IS NOT NULL
|
|
|
- AND PD.CREATETIME >= @DATEBEGIN@ AND PD.CREATETIME <= @DATEEND@
|
|
|
- AND PDLS.CREATETIME >= PD.CREATETIME
|
|
|
- ) )WHERE rownums=1
|
|
|
+ WHERE PD.PROCEDUREID IN (28) AND PD.VALUEFLAG=1 AND PDL.BARCODE IS NOT NULL AND pd.CREATETIME>=@DATEBEGIN@ AND pd.CREATETIME<= @DATEEND@
|
|
|
+
|
|
|
+ ) )WHERE rownums=1
|
|
|
) PD
|
|
|
- LEFT JOIN TP_PM_DEFECT df ON DF.BARCODE=PD.BARCODE AND DF.VALUEFLAG=1
|
|
|
- LEFT JOIN TP_MST_DEFECT DEFECT ON DEFECT.DEFECTID=DF.DEFECTID AND DEFECT.VALUEFLAG=1
|
|
|
- INNER JOIN TP_PM_PRODUCTIONDATA PDS ON PDS.BARCODE = PD.BARCODE
|
|
|
- GROUP BY Grouping sets(
|
|
|
- (PD.GOODSCODE ,PD.GOODSNAME ,PD.LOGONAME ,PD.DICTIONARYVALUE,PD.GOODSSPECIFICATION,PD.GOODSTYPENAME,PD.LUSTERWAREWEIGHT),
|
|
|
- (PD.GOODSTYPENAME),(SUBSTR(pd.GOODSTYPECODE, 0, 6)),())
|
|
|
+ LEFT JOIN TP_PM_DEFECT df ON DF.BARCODE=PD.BARCODE AND DF.VALUEFLAG=1
|
|
|
+ LEFT JOIN TP_MST_DEFECT DEFECT ON DEFECT.DEFECTID=DF.DEFECTID AND DEFECT.VALUEFLAG=1
|
|
|
+ INNER JOIN TP_PM_PRODUCTIONDATA PDS ON PDS.BARCODE = PD.BARCODE AND PDS.VALUEFLAG=1
|
|
|
+ GROUP BY pd.GOODSCODE,LUSTERWAREWEIGHT,PD.GOODSNAME,PD.LOGONAME,PD.DICTIONARYVALUE,
|
|
|
+ PD.GOODSSPECIFICATION,SUBSTR(PD.GOODSTYPECODE, 0, 6),PD.GOODSTYPENAME
|
|
|
+ )
|
|
|
+ GROUP BY Grouping sets((GOODSCODE,GOODSNAME,LOGONAME,DICTIONARYVALUE,GOODSSPECIFICATION,LUSTERWAREWEIGHT,GOODSTYPENAME,GOODSTYPENAMESIX),
|
|
|
+ (GOODSTYPENAME),(GOODSTYPENAMESIX),())
|
|
|
),
|
|
|
- 工序对应出窑量 AS (
|
|
|
- SELECT
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%A%' THEN PD.BARCODE ELSE NULL END )) 成A出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%B%' THEN PD.BARCODE ELSE NULL END )) 成B出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%C%' THEN PD.BARCODE ELSE NULL END )) 成C出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN GL.HIGHPRESSUREFLAG =1 THEN PD.BARCODE ELSE NULL END )) 高压出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) THEN PD.BARCODE ELSE NULL END )) 打磨出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (5,36,52) THEN PD.BARCODE ELSE NULL END )) 擦洗出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID =6 THEN PD.BARCODE ELSE NULL END )) 半检出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (10,37,41) THEN PD.BARCODE ELSE NULL END )) 施釉出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (10,37,41) THEN PD.BARCODE ELSE NULL END )) 擦坯出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (55,13) THEN PD.BARCODE ELSE NULL END )) 装窑出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (57,39) THEN PD.BARCODE ELSE NULL END )) 烧窑出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (56,14) THEN PD.BARCODE ELSE NULL END )) 卸窑出窑量
|
|
|
- FROM TP_PM_PRODUCTIONDATA PD
|
|
|
- INNER JOIN TP_PM_PRODUCTIONDATA pds on pds.BARCODE=pd.BARCODE
|
|
|
- INNER JOIN TP_PM_PRODUCTIONDATA PDL ON PDL.BARCODE=PD.BARCODE AND PDL.PROCEDUREID=24
|
|
|
- LEFT JOIN TP_PM_GROUTINGDAILYDETAIL gd ON gd.barcode=pd.barcode
|
|
|
- LEFT JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID=gd.GROUTINGLINEID
|
|
|
- WHERE PD.VALUEFLAG=1 AND PD.PROCEDUREID=28
|
|
|
- AND pd.CREATETIME>=@DATEBEGIN@ AND pd.CREATETIME< @DATEEND@
|
|
|
- )
|
|
|
- SELECT
|
|
|
+ 工序对应出窑量 AS (
|
|
|
+ SELECT
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%A%' THEN PD.BARCODE ELSE NULL END )) 成A出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%B%' THEN PD.BARCODE ELSE NULL END )) 成B出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%C%' THEN PD.BARCODE ELSE NULL END )) 成C出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN GL.HIGHPRESSUREFLAG =1 THEN PD.BARCODE ELSE NULL END )) 高压出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) AND PDS.VALUEFLAG=1 THEN PD.BARCODE ELSE NULL END )) 打磨出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (5,36,52) AND PDS.VALUEFLAG=1 THEN PD.BARCODE ELSE NULL END )) 擦洗出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID =6 THEN PD.BARCODE ELSE NULL END )) 半检出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (10,37,41) THEN PD.BARCODE ELSE NULL END )) 施釉出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (10,37,41) THEN PD.BARCODE ELSE NULL END )) 擦坯出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (55,13) THEN PD.BARCODE ELSE NULL END )) 装窑出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (57,39) THEN PD.BARCODE ELSE NULL END )) 烧窑出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (56,14) THEN PD.BARCODE ELSE NULL END )) 卸窑出窑量
|
|
|
+ FROM TP_PM_PRODUCTIONDATA PD
|
|
|
+ INNER JOIN TP_PM_PRODUCTIONDATA pds on pds.BARCODE=pd.BARCODE
|
|
|
+ LEFT JOIN TP_PM_GROUTINGDAILYDETAIL gd ON gd.barcode=pd.barcode
|
|
|
+ LEFT JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID=gd.GROUTINGLINEID
|
|
|
+ WHERE PD.VALUEFLAG=1 AND PD.PROCEDUREID=16
|
|
|
+ AND pd.CREATETIME>=@DATEBEGIN@ AND pd.CREATETIME<= @DATEEND@
|
|
|
+
|
|
|
+
|
|
|
+ )
|
|
|
+ SELECT
|
|
|
*
|
|
|
FROM(
|
|
|
SELECT
|
|
|
@@ -338,13 +386,16 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
TO_CHAR(产品名称) AS 产品名称,
|
|
|
TO_CHAR(产品规格) AS 产品规格,
|
|
|
TO_CHAR(产品类别) AS 产品类别,
|
|
|
- TO_CHAR(LUSTERWAREWEIGHT) 重量,
|
|
|
+ TO_CHAR(单重) 单重,
|
|
|
TO_CHAR(釉色) AS 釉色,
|
|
|
TO_CHAR(商标) AS 商标,
|
|
|
TO_CHAR(出窑量_出窑量) AS 出窑量,
|
|
|
+ TO_CHAR(出窑量_出窑重量) AS 出窑重量,
|
|
|
TO_CHAR(出窑量_产量) AS 产量,
|
|
|
+ TO_CHAR(出窑量_合格品重量) AS 合格品重量,
|
|
|
TO_CHAR(出窑量_残品) AS 残品,
|
|
|
- DECODE( NVL( 出窑量_产量, 0 ), 0, '0%', TO_CHAR( ( NVL( 出窑量_产量, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) 合格率,
|
|
|
+ TO_CHAR(出窑量_残品重量) AS 残品重量,
|
|
|
+ DECODE( NVL( 出窑量_产量, 0 ), 0, '0%', TO_CHAR( ( NVL( 出窑量_产量, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) 合格率,
|
|
|
TO_CHAR(原料缺陷) AS 原料缺陷,
|
|
|
TO_CHAR(成型缺陷_成A) AS 成型缺陷_成A,
|
|
|
TO_CHAR(成型缺陷_成B) AS 成型缺陷_成B,
|
|
|
@@ -360,8 +411,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
TO_CHAR(烧成窑缺陷_出窑) AS 烧成窑缺陷_出窑,
|
|
|
TO_CHAR(其他缺陷) AS 其他缺陷
|
|
|
FROM 数据源
|
|
|
- UNION ALL
|
|
|
+ UNION ALL
|
|
|
SELECT
|
|
|
+ DISTINCT
|
|
|
'出窑数',
|
|
|
'',
|
|
|
'',
|
|
|
@@ -369,29 +421,31 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
'',
|
|
|
'',
|
|
|
'',
|
|
|
- '','','','',
|
|
|
+ '',
|
|
|
+ '',
|
|
|
+ '',
|
|
|
+ '','','','',
|
|
|
to_Char(出窑量_出窑量),
|
|
|
- to_Char(成A出窑量),
|
|
|
- to_Char(成B出窑量),
|
|
|
- to_Char(成C出窑量),
|
|
|
- to_Char(高压出窑量),
|
|
|
- to_Char(打磨出窑量),
|
|
|
- to_Char(擦洗出窑量),
|
|
|
- to_Char(半检出窑量),
|
|
|
- to_Char(施釉出窑量),
|
|
|
- to_Char(擦坯出窑量),
|
|
|
- to_Char(装窑出窑量),
|
|
|
- to_Char(烧窑出窑量),
|
|
|
- to_Char(卸窑出窑量),
|
|
|
- to_Char(出窑量_出窑量 )
|
|
|
+ to_Char(成A出窑量),
|
|
|
+ to_Char(成B出窑量),
|
|
|
+ to_Char(成C出窑量),
|
|
|
+ to_Char(高压出窑量),
|
|
|
+ to_Char(打磨出窑量),
|
|
|
+ to_Char(擦洗出窑量),
|
|
|
+ to_Char(半检出窑量),
|
|
|
+ to_Char(施釉出窑量),
|
|
|
+ to_Char(擦坯出窑量),
|
|
|
+ to_Char(装窑出窑量),
|
|
|
+ to_Char(烧窑出窑量),
|
|
|
+ to_Char(卸窑出窑量),
|
|
|
+ to_Char(出窑量_出窑量 )
|
|
|
FROM
|
|
|
工序对应出窑量
|
|
|
LEFT JOIN 数据源 ON 1=1
|
|
|
- WHERE GID = 7
|
|
|
+ WHERE 数据源.GID=7
|
|
|
+
|
|
|
UNION ALL
|
|
|
-
|
|
|
- SELECT
|
|
|
- '',
|
|
|
+ SELECT
|
|
|
'',
|
|
|
'',
|
|
|
'',
|
|
|
@@ -399,63 +453,98 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
'',
|
|
|
'',
|
|
|
'','','','',
|
|
|
- DECODE( NVL( 原料缺陷, 0 ), 0, '0%', TO_CHAR( ( ( NVL(原料缺陷, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_成A, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_成A, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_成B, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_成B, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_成C, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_成C, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_高压, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_高压, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_打磨, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_打磨, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_擦洗, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_擦洗, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_半检, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_半检, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 烧成窑缺陷_施釉, 0 ), 0, '0%', TO_CHAR( ( ( NVL(烧成窑缺陷_施釉, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 烧成窑缺陷_擦坯, 0 ), 0, '0%', TO_CHAR( ( ( NVL(烧成窑缺陷_擦坯, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 烧成窑缺陷_装窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(烧成窑缺陷_装窑, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 烧成窑缺陷_烧窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(烧成窑缺陷_烧窑, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 烧成窑缺陷_出窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(烧成窑缺陷_出窑, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 其他缺陷, 0 ), 0, '0%', TO_CHAR( ( ( NVL(其他缺陷, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' )
|
|
|
+ '','','','',
|
|
|
+ DECODE( NVL( 数据源.原料缺陷, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.原料缺陷, 0 ) / DECODE( NVL( 数据源.出窑量_出窑量, 1 ), 0, 1, NVL( 数据源.出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 原料缺陷,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_成A, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_成A, 0 ) / DECODE( NVL( 工序对应出窑量.成A出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.成A出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_成A,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_成B, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_成B, 0 ) / DECODE( NVL( 工序对应出窑量.成B出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.成B出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_成B,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_成C, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_成C, 0 ) / DECODE( NVL( 工序对应出窑量.成C出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.成C出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_成C,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_高压, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_高压, 0 ) / DECODE( NVL( 工序对应出窑量.高压出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.高压出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_高压,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_打磨, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_打磨, 0 ) / DECODE( NVL( 工序对应出窑量.打磨出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.打磨出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_打磨,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_擦洗, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_擦洗, 0 ) / DECODE( NVL( 工序对应出窑量.擦洗出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.擦洗出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_擦洗,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_半检, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_半检, 0 ) / DECODE( NVL( 工序对应出窑量.半检出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.半检出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_半检,
|
|
|
+ DECODE( NVL( 数据源.烧成窑缺陷_施釉, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.烧成窑缺陷_施釉, 0 ) / DECODE( NVL( 工序对应出窑量.施釉出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.施釉出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 烧成窑缺陷_施釉,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.烧成窑缺陷_擦坯, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.烧成窑缺陷_擦坯, 0 ) / DECODE( NVL( 工序对应出窑量.擦坯出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.擦坯出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 烧成窑缺陷_擦坯,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.烧成窑缺陷_装窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.烧成窑缺陷_装窑, 0 ) / DECODE( NVL( 工序对应出窑量.装窑出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.装窑出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 烧成窑缺陷_装窑,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.烧成窑缺陷_烧窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.烧成窑缺陷_烧窑, 0 ) / DECODE( NVL( 工序对应出窑量.烧窑出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.烧窑出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 烧成窑缺陷_烧窑,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.烧成窑缺陷_出窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.烧成窑缺陷_出窑, 0 ) / DECODE( NVL( 工序对应出窑量.卸窑出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.卸窑出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 烧成窑缺陷_出窑,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.其他缺陷, 0 ), 0, '0%',TO_CHAR( ( ( NVL(数据源.其他缺陷, 0 ) / DECODE( NVL( 数据源.出窑量_出窑量, 1 ), 0, 1, NVL( 数据源.出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 其他缺陷
|
|
|
FROM 数据源
|
|
|
- WHERE GID=7 ) ORDER BY 产品类别,产品编码 ";
|
|
|
+ LEFT JOIN 工序对应出窑量 ON 1=1
|
|
|
+ WHERE 数据源.GID=7 ) ORDER BY 产品类别,产品编码 ";
|
|
|
}
|
|
|
else if (procedure == "冷修") {
|
|
|
- sqlStr = @"WITH 数据源 AS (SELECT
|
|
|
- GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6))GID,
|
|
|
- CASE WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =5 THEN '小计'
|
|
|
- WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001002' THEN '小件合计'
|
|
|
- WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001001' THEN '大件合计'
|
|
|
- WHEN GROUPING_ID(pd.GOODSCODE,pd.GOODSTYPENAME,SUBSTR(pd.GOODSTYPECODE, 0, 6)) =7 THEN '总计'
|
|
|
- ELSE to_char(pd.GOODSCODE) END AS 产品编码,
|
|
|
-
|
|
|
- PD.GOODSNAME 产品名称,
|
|
|
- PD.LOGONAME 商标,
|
|
|
- PD.DICTIONARYVALUE 釉色,
|
|
|
- PD.GOODSSPECIFICATION 产品规格,
|
|
|
- TO_CHAR(PD.LUSTERWAREWEIGHT) AS LUSTERWAREWEIGHT,
|
|
|
- CASE WHEN GROUPING_ID(PD.GOODSCODE,PD.GOODSTYPENAME,SUBSTR(PD.GOODSTYPECODE, 0, 6))=6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001001' THEN '大件'
|
|
|
- WHEN GROUPING_ID(PD.GOODSCODE,PD.GOODSTYPENAME,SUBSTR(PD.GOODSTYPECODE, 0, 6))=6 AND SUBSTR(PD.GOODSTYPECODE, 0, 6)='001002' THEN '小件'
|
|
|
- ELSE TO_CHAR(PD.GOODSTYPENAME )END 产品类别,
|
|
|
+ sqlStr = @" WITH 数据源 AS (
|
|
|
+ SELECT
|
|
|
+ GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) GID,
|
|
|
+ CASE WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =5 THEN '小计'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =6 AND GOODSTYPENAMESIX='001002' THEN '小件合计'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =6 AND GOODSTYPENAMESIX='001001' THEN '大件合计'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX) =7 THEN '总计'
|
|
|
+ ELSE to_char(GOODSCODE) END AS 产品编码,
|
|
|
+ LUSTERWAREWEIGHT 单重,
|
|
|
+ GOODSNAME 产品名称,
|
|
|
+ LOGONAME 商标,DICTIONARYVALUE 釉色,
|
|
|
+ GOODSSPECIFICATION 产品规格,
|
|
|
+ CASE WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX)=6 AND GOODSTYPENAMESIX='001001' THEN '大件'
|
|
|
+ WHEN GROUPING_ID(GOODSCODE,GOODSTYPENAME,GOODSTYPENAMESIX)=6 AND GOODSTYPENAMESIX='001002' THEN '小件'
|
|
|
+ ELSE TO_CHAR(GOODSTYPENAME )END 产品类别,
|
|
|
+ SUM(出窑量_出窑量) 出窑量_出窑量,
|
|
|
+ SUM(出窑量_出窑量 * LUSTERWAREWEIGHT) 出窑量_出窑重量,
|
|
|
+ SUM(出窑量_产量) 出窑量_产量,
|
|
|
+ SUM(出窑量_产量* LUSTERWAREWEIGHT) 出窑量_合格品重量,
|
|
|
+ SUM(出窑量_残品) 出窑量_残品,
|
|
|
+ SUM(出窑量_残品* LUSTERWAREWEIGHT) 出窑量_残品重量,
|
|
|
+ SUM(原料缺陷) 原料缺陷,
|
|
|
+ SUM(成型缺陷_成A) 成型缺陷_成A,SUM(成型缺陷_成B) 成型缺陷_成B,
|
|
|
+ SUM(成型缺陷_成C) 成型缺陷_成C,SUM(成型缺陷_高压) 成型缺陷_高压,
|
|
|
+ SUM(成型缺陷_打磨) 成型缺陷_打磨,SUM(成型缺陷_擦洗) 成型缺陷_擦洗,
|
|
|
+ SUM(成型缺陷_半检) 成型缺陷_半检,SUM(烧成窑缺陷_施釉)烧成窑缺陷_施釉,
|
|
|
+ SUM(烧成窑缺陷_擦坯) 烧成窑缺陷_擦坯,SUM(烧成窑缺陷_装窑) 烧成窑缺陷_装窑,
|
|
|
+ SUM(烧成窑缺陷_烧窑) 烧成窑缺陷_烧窑,SUM(烧成窑缺陷_出窑) 烧成窑缺陷_出窑, SUM(其他缺陷) 其他缺陷
|
|
|
+ FROM(
|
|
|
+ SELECT pd.GOODSCODE,LUSTERWAREWEIGHT,
|
|
|
+ PD.GOODSNAME ,
|
|
|
+ PD.LOGONAME ,
|
|
|
+ PD.DICTIONARYVALUE ,
|
|
|
+ PD.GOODSSPECIFICATION ,
|
|
|
+ SUBSTR(PD.GOODSTYPECODE, 0, 6) AS GOODSTYPENAMESIX,
|
|
|
+ PD.GOODSTYPENAME,
|
|
|
COUNT(DISTINCT PD.BARCODE ) as 出窑量_出窑量,
|
|
|
COUNT(DISTINCT CASE WHEN PD.GOODSLEVELTYPEID IN (4,5) THEN PD.BARCODE ELSE NULL END) AS 出窑量_产量,
|
|
|
COUNT(DISTINCT CASE WHEN PD.GOODSLEVELTYPEID NOT IN (4,5) AND PD.GOODSLEVELTYPEID IS NOT NULL THEN PD.BARCODE ELSE NULL END) AS 出窑量_残品,
|
|
|
COUNT(DISTINCT CASE WHEN DEFECTTYPEID IN (9,10) THEN PD.BARCODE ELSE NULL END) 原料缺陷,
|
|
|
- COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'A') > 0 AND PD.HIGHPRESSUREFLAG=0 AND DEFECT.DEFECTTYPEID=1 THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成A,
|
|
|
- COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'B') > 0 AND PD.HIGHPRESSUREFLAG=0 AND DEFECT.DEFECTTYPEID=1 THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成B,
|
|
|
- COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'C') > 0 AND PD.HIGHPRESSUREFLAG=0 AND DEFECT.DEFECTTYPEID=1 THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成C,
|
|
|
- COUNT(DISTINCT CASE WHEN PD.HIGHPRESSUREFLAG=1 AND DEFECT.DEFECTTYPEID=1 THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_高压,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) AND df.DEFECTCODE IN ( '10', '12', '13', '14', '15', '16', '17', '18', '19', '20' ) THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END )) AS 成型缺陷_打磨,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (5,36,52) AND df.DEFECTCODE IN ( '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '25', '34') THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END )) AS 成型缺陷_擦洗,
|
|
|
- COUNT(DISTINCT CASE WHEN DEFECT.DEFECTTYPEID=1 THEN PD.BARCODE ELSE NULL END) 成型缺陷_半检,
|
|
|
+ COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'A') > 0 AND PD.HIGHPRESSUREFLAG=0 AND (DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成A,
|
|
|
+ COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'B') > 0 AND PD.HIGHPRESSUREFLAG=0 AND (DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成B,
|
|
|
+ COUNT(DISTINCT CASE WHEN instr(PD.GROUTINGLINECODE, 'C') > 0 AND PD.HIGHPRESSUREFLAG=0 AND (DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_成C,
|
|
|
+ COUNT(DISTINCT CASE WHEN PD.HIGHPRESSUREFLAG=1 AND ( DEFECT.DEFECTTYPEID=1 OR df.DEFECTCODE ='99' ) THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 成型缺陷_高压, TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) AND PDS.VALUEFLAG=1 AND df.DEFECTCODE IN ( '10', '12', '13', '14', '15', '16', '17', '18', '19', '20' ) THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END )) AS 成型缺陷_打磨,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (5,36,52) AND PDS.VALUEFLAG=1 AND df.DEFECTCODE IN ( '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '25', '34') THEN to_char(DF.BARCODE||df.DEFECTCODE ) ELSE NULL END )) AS 成型缺陷_擦洗,
|
|
|
+ COUNT(DISTINCT CASE WHEN DEFECT.VALUEFLAG=1 AND DEFECT.DEFECTTYPEID=1 AND DEFECT.DEFECTCODE NOT IN ('001','002','1','2','3') THEN PD.BARCODE ELSE NULL END) 成型缺陷_半检,
|
|
|
TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '36','37','38','39','40','41','42','43','44') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END )) AS 烧成窑缺陷_施釉,
|
|
|
TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '47','48','49','50','51','52','53','54','55','56','20','57')AND DF.DEFECTCODE IS NOT NULL AND PD.BARCODE IS NOT NULL THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END ))AS 烧成窑缺陷_擦坯,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '070','071','43','073','074','075','076','077','078','079','069','080') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END )) AS 烧成窑缺陷_装窑,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '61','62','63','64','65','66','67') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END )) AS 烧成窑缺陷_装窑,
|
|
|
TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '69','70','71','43','73','74','75','76','77','78','79','80') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END ))AS 烧成窑缺陷_烧窑,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '0083','0084') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END )) AS 烧成窑缺陷_出窑,
|
|
|
- COUNT(DISTINCT CASE WHEN DF.DEFECTCODE IN ('099','0100') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 其他缺陷
|
|
|
- FROM(SELECT * FROM(
|
|
|
- SELECT
|
|
|
- BARCODE,REWORKPROCEDUREID,GROUTINGLINECODE,GOODSCODE,GOODSNAME,LOGONAME,GOODSLEVELTYPEID,GOODSSPECIFICATION,DICTIONARYVALUE,GOODSTYPECODE,
|
|
|
- LUSTERWAREWEIGHT, HIGHPRESSUREFLAG,PROCEDUREID,GOODSTYPENAME,row_number() over (partition by BARCODE order by GOODSLEVELTYPEID DESC ) as rownums
|
|
|
- FROM(
|
|
|
- SELECT
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN DF.DEFECTCODE IN ( '83','84') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END )) AS 烧成窑缺陷_出窑,
|
|
|
+ COUNT(DISTINCT CASE WHEN DF.DEFECTCODE IN ('99','100') THEN to_char(PD.BARCODE||DF.DEFECTCODE ) ELSE NULL END) 其他缺陷
|
|
|
+ FROM(
|
|
|
+ SELECT * FROM(
|
|
|
+ SELECT
|
|
|
+ BARCODE,REWORKPROCEDUREID,GROUTINGLINECODE,GOODSCODE,GOODSNAME,LOGONAME,GOODSLEVELTYPEID,GOODSSPECIFICATION,DICTIONARYVALUE,
|
|
|
+ HIGHPRESSUREFLAG,PROCEDUREID,GOODSTYPENAME,GOODSTYPECODE,LUSTERWAREWEIGHT,
|
|
|
+ row_number() over (partition by BARCODE order by GOODSLEVELTYPEID DESC ) as rownums
|
|
|
+ FROM(
|
|
|
+ SELECT
|
|
|
DISTINCT pd.BARCODE,
|
|
|
PD.REWORKPROCEDUREID,
|
|
|
pd.GROUTINGLINECODE,
|
|
|
@@ -467,56 +556,58 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
GL.HIGHPRESSUREFLAG,
|
|
|
pd.PROCEDUREID AS PROCEDUREID,
|
|
|
gtp.GOODSTYPENAME,gtp.GOODSTYPECODE,
|
|
|
- CASE WHEN PDLS.GOODSLEVELTYPEID < PD.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
|
|
|
- WHEN PD.GOODSLEVELTYPEID < PDLS.GOODSLEVELTYPEID THEN PDLS.GOODSLEVELTYPEID
|
|
|
+ CASE WHEN PDL.GOODSLEVELTYPEID < PD.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
|
|
|
+ WHEN PD.GOODSLEVELTYPEID < PDL.GOODSLEVELTYPEID THEN PDL.GOODSLEVELTYPEID
|
|
|
WHEN PDL.GOODSLEVELTYPEID IS NULL THEN PD.GOODSLEVELTYPEID
|
|
|
- WHEN PD.GOODSLEVELTYPEID = PDLS.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
|
|
|
+ WHEN PD.GOODSLEVELTYPEID = PDL.GOODSLEVELTYPEID THEN PD.GOODSLEVELTYPEID
|
|
|
ELSE NULL END GOODSLEVELTYPEID
|
|
|
- FROM
|
|
|
- TP_PM_PRODUCTIONDATA pd
|
|
|
- INNER JOIN TP_PM_PRODUCTIONDATA PDL ON PDL.BARCODE=PD.BARCODE AND PDL.PROCEDUREID=42
|
|
|
- LEFT JOIN TP_PM_PRODUCTIONDATA PDLS ON PDLS.BARCODE=PD.BARCODE AND PDLS.PROCEDUREID=61 AND PDLS.VALUEFLAG=1
|
|
|
+ FROM
|
|
|
+ TP_PM_PRODUCTIONDATA pd
|
|
|
+ INNER JOIN TP_PM_PRODUCTIONDATA PDL ON PDL.BARCODE=PD.BARCODE AND PDL.PROCEDUREID=42
|
|
|
+ LEFT JOIN TP_PM_PRODUCTIONDATA PDLS ON PDLS.BARCODE=PD.BARCODE AND PDLS.PROCEDUREID=61 AND PDLS.VALUEFLAG=1
|
|
|
LEFT JOIN TP_MST_GOODS good on good.GOODSID=PD.GOODSID
|
|
|
LEFT JOIN TP_MST_GOODSTYPE gtp ON good.GOODSTYPEID=gtp.GOODSTYPEID
|
|
|
LEFT JOIN TP_MST_LOGO logo ON logo.LOGOID=pd.LOGOID
|
|
|
LEFT JOIN TP_PM_GROUTINGDAILYDETAIL gd ON gd.barcode=pd.barcode
|
|
|
LEFT JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID=gd.GROUTINGLINEID
|
|
|
LEFT JOIN TP_MST_DataDictionary ON TP_MST_DataDictionary.DICTIONARYID=gd.GLAZETYPEID AND TP_MST_DataDictionary.DictionaryType = 'TPC002'
|
|
|
- WHERE PD.PROCEDUREID IN (28) AND PD.VALUEFLAG=1 AND PDL.BARCODE IS NOT NULL
|
|
|
- AND PD.CREATETIME >= @DATEBEGIN@ AND PD.CREATETIME <= @DATEEND@
|
|
|
- AND PDLS.CREATETIME >= PD.CREATETIME
|
|
|
- ) )WHERE rownums=1
|
|
|
+ WHERE PD.PROCEDUREID IN (28) AND PD.VALUEFLAG=1 AND PDL.BARCODE IS NOT NULL AND pd.CREATETIME>=@DATEBEGIN@ AND pd.CREATETIME<= @DATEEND@
|
|
|
+
|
|
|
+ ) )WHERE rownums=1
|
|
|
) PD
|
|
|
- LEFT JOIN TP_PM_DEFECT df ON DF.BARCODE=PD.BARCODE AND DF.VALUEFLAG=1
|
|
|
- LEFT JOIN TP_MST_DEFECT DEFECT ON DEFECT.DEFECTID=DF.DEFECTID AND DEFECT.VALUEFLAG=1
|
|
|
- INNER JOIN TP_PM_PRODUCTIONDATA PDS ON PDS.BARCODE = PD.BARCODE
|
|
|
- GROUP BY Grouping sets(
|
|
|
- (PD.GOODSCODE ,PD.GOODSNAME ,PD.LOGONAME ,PD.DICTIONARYVALUE,PD.GOODSSPECIFICATION,PD.GOODSTYPENAME,PD.LUSTERWAREWEIGHT),(PD.GOODSTYPENAME),
|
|
|
- (SUBSTR(pd.GOODSTYPECODE, 0, 6)),())
|
|
|
+ LEFT JOIN TP_PM_DEFECT df ON DF.BARCODE=PD.BARCODE AND DF.VALUEFLAG=1
|
|
|
+ LEFT JOIN TP_MST_DEFECT DEFECT ON DEFECT.DEFECTID=DF.DEFECTID AND DEFECT.VALUEFLAG=1
|
|
|
+ INNER JOIN TP_PM_PRODUCTIONDATA PDS ON PDS.BARCODE = PD.BARCODE AND PDS.VALUEFLAG=1
|
|
|
+ GROUP BY pd.GOODSCODE,LUSTERWAREWEIGHT,PD.GOODSNAME,PD.LOGONAME,PD.DICTIONARYVALUE,
|
|
|
+ PD.GOODSSPECIFICATION,SUBSTR(PD.GOODSTYPECODE, 0, 6),PD.GOODSTYPENAME
|
|
|
+ )
|
|
|
+ GROUP BY Grouping sets((GOODSCODE,GOODSNAME,LOGONAME,DICTIONARYVALUE,GOODSSPECIFICATION,LUSTERWAREWEIGHT,GOODSTYPENAME,GOODSTYPENAMESIX),
|
|
|
+ (GOODSTYPENAME),(GOODSTYPENAMESIX),())
|
|
|
),
|
|
|
- 工序对应出窑量 AS (
|
|
|
- SELECT
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%A%' THEN PD.BARCODE ELSE NULL END )) 成A出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%B%' THEN PD.BARCODE ELSE NULL END )) 成B出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%C%' THEN PD.BARCODE ELSE NULL END )) 成C出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN GL.HIGHPRESSUREFLAG =1 THEN PD.BARCODE ELSE NULL END )) 高压出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) THEN PD.BARCODE ELSE NULL END )) 打磨出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (5,36,52) THEN PD.BARCODE ELSE NULL END )) 擦洗出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID =6 THEN PD.BARCODE ELSE NULL END )) 半检出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (10,37,41) THEN PD.BARCODE ELSE NULL END )) 施釉出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (10,37,41) THEN PD.BARCODE ELSE NULL END )) 擦坯出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (55,13) THEN PD.BARCODE ELSE NULL END )) 装窑出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (57,39) THEN PD.BARCODE ELSE NULL END )) 烧窑出窑量,
|
|
|
- TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (56,14) THEN PD.BARCODE ELSE NULL END )) 卸窑出窑量
|
|
|
- FROM TP_PM_PRODUCTIONDATA PD
|
|
|
- INNER JOIN TP_PM_PRODUCTIONDATA pds on pds.BARCODE=pd.BARCODE
|
|
|
- INNER JOIN TP_PM_PRODUCTIONDATA PDL ON PDL.BARCODE=PD.BARCODE AND PDL.PROCEDUREID=42
|
|
|
- LEFT JOIN TP_PM_GROUTINGDAILYDETAIL gd ON gd.barcode=pd.barcode
|
|
|
- LEFT JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID=gd.GROUTINGLINEID
|
|
|
- WHERE PD.VALUEFLAG=1 AND PD.PROCEDUREID=28
|
|
|
- AND pd.CREATETIME>=@DATEBEGIN@ AND pd.CREATETIME< @DATEEND@
|
|
|
- )
|
|
|
- SELECT
|
|
|
+ 工序对应出窑量 AS (
|
|
|
+ SELECT
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%A%' THEN PD.BARCODE ELSE NULL END )) 成A出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%B%' THEN PD.BARCODE ELSE NULL END )) 成B出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.GROUTINGLINECODE LIKE '%C%' THEN PD.BARCODE ELSE NULL END )) 成C出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN GL.HIGHPRESSUREFLAG =1 THEN PD.BARCODE ELSE NULL END )) 高压出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (4,36,53) AND PDS.VALUEFLAG=1 THEN PD.BARCODE ELSE NULL END )) 打磨出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (5,36,52) AND PDS.VALUEFLAG=1 THEN PD.BARCODE ELSE NULL END )) 擦洗出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID =6 THEN PD.BARCODE ELSE NULL END )) 半检出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (10,37,41) THEN PD.BARCODE ELSE NULL END )) 施釉出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (10,37,41) THEN PD.BARCODE ELSE NULL END )) 擦坯出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (55,13) THEN PD.BARCODE ELSE NULL END )) 装窑出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (57,39) THEN PD.BARCODE ELSE NULL END )) 烧窑出窑量,
|
|
|
+ TO_CHAR(COUNT( DISTINCT CASE WHEN PDS.PROCEDUREID IN (56,14) THEN PD.BARCODE ELSE NULL END )) 卸窑出窑量
|
|
|
+ FROM TP_PM_PRODUCTIONDATA PD
|
|
|
+ INNER JOIN TP_PM_PRODUCTIONDATA pds on pds.BARCODE=pd.BARCODE
|
|
|
+ LEFT JOIN TP_PM_GROUTINGDAILYDETAIL gd ON gd.barcode=pd.barcode
|
|
|
+ LEFT JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID=gd.GROUTINGLINEID
|
|
|
+ WHERE PD.VALUEFLAG=1 AND PD.PROCEDUREID=16
|
|
|
+ AND pd.CREATETIME>=@DATEBEGIN@ AND pd.CREATETIME<= @DATEEND@
|
|
|
+
|
|
|
+
|
|
|
+ )
|
|
|
+ SELECT
|
|
|
*
|
|
|
FROM(
|
|
|
SELECT
|
|
|
@@ -524,13 +615,16 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
TO_CHAR(产品名称) AS 产品名称,
|
|
|
TO_CHAR(产品规格) AS 产品规格,
|
|
|
TO_CHAR(产品类别) AS 产品类别,
|
|
|
- TO_CHAR(LUSTERWAREWEIGHT) 重量,
|
|
|
+ TO_CHAR(单重) 单重,
|
|
|
TO_CHAR(釉色) AS 釉色,
|
|
|
TO_CHAR(商标) AS 商标,
|
|
|
TO_CHAR(出窑量_出窑量) AS 出窑量,
|
|
|
+ TO_CHAR(出窑量_出窑重量) AS 出窑重量,
|
|
|
TO_CHAR(出窑量_产量) AS 产量,
|
|
|
+ TO_CHAR(出窑量_合格品重量) AS 合格品重量,
|
|
|
TO_CHAR(出窑量_残品) AS 残品,
|
|
|
- DECODE( NVL( 出窑量_产量, 0 ), 0, '0%', TO_CHAR( ( NVL( 出窑量_产量, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) 合格率,
|
|
|
+ TO_CHAR(出窑量_残品重量) AS 残品重量,
|
|
|
+ DECODE( NVL( 出窑量_产量, 0 ), 0, '0%', TO_CHAR( ( NVL( 出窑量_产量, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) 合格率,
|
|
|
TO_CHAR(原料缺陷) AS 原料缺陷,
|
|
|
TO_CHAR(成型缺陷_成A) AS 成型缺陷_成A,
|
|
|
TO_CHAR(成型缺陷_成B) AS 成型缺陷_成B,
|
|
|
@@ -546,8 +640,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
TO_CHAR(烧成窑缺陷_出窑) AS 烧成窑缺陷_出窑,
|
|
|
TO_CHAR(其他缺陷) AS 其他缺陷
|
|
|
FROM 数据源
|
|
|
- UNION ALL
|
|
|
+ UNION ALL
|
|
|
SELECT
|
|
|
+ DISTINCT
|
|
|
'出窑数',
|
|
|
'',
|
|
|
'',
|
|
|
@@ -555,29 +650,31 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
'',
|
|
|
'',
|
|
|
'',
|
|
|
- '','','','',
|
|
|
+ '',
|
|
|
+ '',
|
|
|
+ '',
|
|
|
+ '','','','',
|
|
|
to_Char(出窑量_出窑量),
|
|
|
- to_Char(成A出窑量),
|
|
|
- to_Char(成B出窑量),
|
|
|
- to_Char(成C出窑量),
|
|
|
- to_Char(高压出窑量),
|
|
|
- to_Char(打磨出窑量),
|
|
|
- to_Char(擦洗出窑量),
|
|
|
- to_Char(半检出窑量),
|
|
|
- to_Char(施釉出窑量),
|
|
|
- to_Char(擦坯出窑量),
|
|
|
- to_Char(装窑出窑量),
|
|
|
- to_Char(烧窑出窑量),
|
|
|
- to_Char(卸窑出窑量),
|
|
|
- to_Char(出窑量_出窑量 )
|
|
|
+ to_Char(成A出窑量),
|
|
|
+ to_Char(成B出窑量),
|
|
|
+ to_Char(成C出窑量),
|
|
|
+ to_Char(高压出窑量),
|
|
|
+ to_Char(打磨出窑量),
|
|
|
+ to_Char(擦洗出窑量),
|
|
|
+ to_Char(半检出窑量),
|
|
|
+ to_Char(施釉出窑量),
|
|
|
+ to_Char(擦坯出窑量),
|
|
|
+ to_Char(装窑出窑量),
|
|
|
+ to_Char(烧窑出窑量),
|
|
|
+ to_Char(卸窑出窑量),
|
|
|
+ to_Char(出窑量_出窑量 )
|
|
|
FROM
|
|
|
工序对应出窑量
|
|
|
LEFT JOIN 数据源 ON 1=1
|
|
|
- WHERE GID = 7
|
|
|
+ WHERE 数据源.GID=7
|
|
|
+
|
|
|
UNION ALL
|
|
|
-
|
|
|
- SELECT
|
|
|
- '',
|
|
|
+ SELECT
|
|
|
'',
|
|
|
'',
|
|
|
'',
|
|
|
@@ -585,22 +682,36 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
'',
|
|
|
'',
|
|
|
'','','','',
|
|
|
- DECODE( NVL( 原料缺陷, 0 ), 0, '0%', TO_CHAR( ( ( NVL(原料缺陷, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_成A, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_成A, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_成B, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_成B, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_成C, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_成C, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_高压, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_高压, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_打磨, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_打磨, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_擦洗, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_擦洗, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 成型缺陷_半检, 0 ), 0, '0%', TO_CHAR( ( ( NVL(成型缺陷_半检, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 烧成窑缺陷_施釉, 0 ), 0, '0%', TO_CHAR( ( ( NVL(烧成窑缺陷_施釉, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 烧成窑缺陷_擦坯, 0 ), 0, '0%', TO_CHAR( ( ( NVL(烧成窑缺陷_擦坯, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 烧成窑缺陷_装窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(烧成窑缺陷_装窑, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 烧成窑缺陷_烧窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(烧成窑缺陷_烧窑, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 烧成窑缺陷_出窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(烧成窑缺陷_出窑, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) ,
|
|
|
- DECODE( NVL( 其他缺陷, 0 ), 0, '0%', TO_CHAR( ( ( NVL(其他缺陷, 0 ) / DECODE( NVL( 出窑量_出窑量, 1 ), 0, 1, NVL( 出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' )
|
|
|
+ '','','','',
|
|
|
+ DECODE( NVL( 数据源.原料缺陷, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.原料缺陷, 0 ) / DECODE( NVL( 数据源.出窑量_出窑量, 1 ), 0, 1, NVL( 数据源.出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 原料缺陷,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_成A, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_成A, 0 ) / DECODE( NVL( 工序对应出窑量.成A出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.成A出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_成A,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_成B, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_成B, 0 ) / DECODE( NVL( 工序对应出窑量.成B出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.成B出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_成B,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_成C, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_成C, 0 ) / DECODE( NVL( 工序对应出窑量.成C出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.成C出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_成C,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_高压, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_高压, 0 ) / DECODE( NVL( 工序对应出窑量.高压出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.高压出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_高压,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_打磨, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_打磨, 0 ) / DECODE( NVL( 工序对应出窑量.打磨出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.打磨出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_打磨,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_擦洗, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_擦洗, 0 ) / DECODE( NVL( 工序对应出窑量.擦洗出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.擦洗出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_擦洗,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.成型缺陷_半检, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.成型缺陷_半检, 0 ) / DECODE( NVL( 工序对应出窑量.半检出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.半检出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 成型缺陷_半检,
|
|
|
+ DECODE( NVL( 数据源.烧成窑缺陷_施釉, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.烧成窑缺陷_施釉, 0 ) / DECODE( NVL( 工序对应出窑量.施釉出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.施釉出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 烧成窑缺陷_施釉,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.烧成窑缺陷_擦坯, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.烧成窑缺陷_擦坯, 0 ) / DECODE( NVL( 工序对应出窑量.擦坯出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.擦坯出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 烧成窑缺陷_擦坯,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.烧成窑缺陷_装窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.烧成窑缺陷_装窑, 0 ) / DECODE( NVL( 工序对应出窑量.装窑出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.装窑出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 烧成窑缺陷_装窑,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.烧成窑缺陷_烧窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.烧成窑缺陷_烧窑, 0 ) / DECODE( NVL( 工序对应出窑量.烧窑出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.烧窑出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 烧成窑缺陷_烧窑,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.烧成窑缺陷_出窑, 0 ), 0, '0%', TO_CHAR( ( ( NVL(数据源.烧成窑缺陷_出窑, 0 ) / DECODE( NVL( 工序对应出窑量.卸窑出窑量, 1 ), 0, 1, NVL( 工序对应出窑量.卸窑出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 烧成窑缺陷_出窑,
|
|
|
+
|
|
|
+ DECODE( NVL( 数据源.其他缺陷, 0 ), 0, '0%',TO_CHAR( ( ( NVL(数据源.其他缺陷, 0 ) / DECODE( NVL( 数据源.出窑量_出窑量, 1 ), 0, 1, NVL( 数据源.出窑量_出窑量, 1 ) ) ) ) * 100, 'fm99990.00' ) || '%' ) 其他缺陷
|
|
|
FROM 数据源
|
|
|
- WHERE GID=7 ) ORDER BY 产品类别,产品编码 ";
|
|
|
+ LEFT JOIN 工序对应出窑量 ON 1=1
|
|
|
+ WHERE 数据源.GID=7 ) ORDER BY 产品类别,产品编码";
|
|
|
}
|
|
|
//读取报表数据
|
|
|
|