Przeglądaj źródła

分页默认显示1w条

张忠帅 1 rok temu
rodzic
commit
8d54213dca
63 zmienionych plików z 660 dodań i 354 usunięć
  1. 247 16
      wwwroot/mes/rpt/rpt102/rpt.ashx
  2. 2 1
      wwwroot/mes/rpt/rpt102/rpt_index.html
  3. 1 1
      wwwroot/mes/rpt/rpt201/rpt.ashx
  4. 3 1
      wwwroot/mes/rpt/rpt201/rpt_index.html
  5. 1 1
      wwwroot/mes/rpt/rpt202/rpt.ashx
  6. 3 1
      wwwroot/mes/rpt/rpt202/rpt_index.html
  7. 1 1
      wwwroot/mes/rpt/rpt203/rpt.ashx
  8. 3 1
      wwwroot/mes/rpt/rpt203/rpt_index.html
  9. 1 1
      wwwroot/mes/rpt/rpt204/rpt.ashx
  10. 3 1
      wwwroot/mes/rpt/rpt204/rpt_index.html
  11. 1 1
      wwwroot/mes/rpt/rpt205/rpt.ashx
  12. 3 1
      wwwroot/mes/rpt/rpt205/rpt_index.html
  13. 1 1
      wwwroot/mes/rpt/rpt206/rpt.ashx
  14. 3 1
      wwwroot/mes/rpt/rpt206/rpt_index.html
  15. 1 1
      wwwroot/mes/rpt/rpt207/rpt.ashx
  16. 3 1
      wwwroot/mes/rpt/rpt207/rpt_index.html
  17. 1 1
      wwwroot/mes/rpt/rpt208/rpt.ashx
  18. 3 1
      wwwroot/mes/rpt/rpt208/rpt_index.html
  19. 1 1
      wwwroot/mes/rpt/rpt209/rpt.ashx
  20. 3 1
      wwwroot/mes/rpt/rpt209/rpt_index.html
  21. 1 1
      wwwroot/mes/rpt/rpt210/rpt.ashx
  22. 3 1
      wwwroot/mes/rpt/rpt210/rpt_index.html
  23. 3 1
      wwwroot/mes/rpt/rpt211/rpt_index.html
  24. 1 1
      wwwroot/mes/rpt/rpt212/rpt.ashx
  25. 3 1
      wwwroot/mes/rpt/rpt212/rpt_index.html
  26. 1 1
      wwwroot/mes/rpt/rpt213/rpt.ashx
  27. 3 1
      wwwroot/mes/rpt/rpt213/rpt_index.html
  28. 1 1
      wwwroot/mes/rpt/rpt214/rpt.ashx
  29. 3 1
      wwwroot/mes/rpt/rpt214/rpt_index.html
  30. 1 1
      wwwroot/mes/rpt/rpt215/rpt.ashx
  31. 3 1
      wwwroot/mes/rpt/rpt215/rpt_index.html
  32. 1 1
      wwwroot/mes/rpt/rpt216/rpt.ashx
  33. 3 1
      wwwroot/mes/rpt/rpt216/rpt_index.html
  34. 1 1
      wwwroot/mes/rpt/rpt217/rpt.ashx
  35. 3 1
      wwwroot/mes/rpt/rpt217/rpt_index.html
  36. 1 1
      wwwroot/mes/rpt/rpt218/rpt.ashx
  37. 3 1
      wwwroot/mes/rpt/rpt218/rpt_index.html
  38. 1 1
      wwwroot/mes/rpt/rpt219/rpt.ashx
  39. 3 1
      wwwroot/mes/rpt/rpt219/rpt_index.html
  40. 1 1
      wwwroot/mes/rpt/rpt220/rpt.ashx
  41. 3 1
      wwwroot/mes/rpt/rpt220/rpt_index.html
  42. 1 1
      wwwroot/mes/rpt/rpt221/rpt.ashx
  43. 3 1
      wwwroot/mes/rpt/rpt221/rpt_index.html
  44. 1 1
      wwwroot/mes/rpt/rpt223/rpt.ashx
  45. 3 1
      wwwroot/mes/rpt/rpt223/rpt_index.html
  46. 1 1
      wwwroot/mes/rpt/rpt224/rpt.ashx
  47. 3 1
      wwwroot/mes/rpt/rpt224/rpt_index.html
  48. 1 1
      wwwroot/mes/rpt/rpt225/rpt.ashx
  49. 3 1
      wwwroot/mes/rpt/rpt225/rpt_index.html
  50. 1 1
      wwwroot/mes/rpt/rpt226/rpt.ashx
  51. 3 1
      wwwroot/mes/rpt/rpt226/rpt_index.html
  52. 1 1
      wwwroot/mes/rpt/rpt303/rpt.ashx
  53. 3 1
      wwwroot/mes/rpt/rpt303/rpt_index.html
  54. 289 277
      wwwroot/mes/rpt/rpt304/rpt.ashx
  55. 3 1
      wwwroot/mes/rpt/rpt304/rpt_index.html
  56. 1 1
      wwwroot/mes/rpt/rpt305/rpt.ashx
  57. 3 1
      wwwroot/mes/rpt/rpt305/rpt_index.html
  58. 1 1
      wwwroot/mes/rpt/rpt306/rpt.ashx
  59. 3 1
      wwwroot/mes/rpt/rpt306/rpt_index.html
  60. 1 1
      wwwroot/mes/rpt/rpt307/rpt.ashx
  61. 3 1
      wwwroot/mes/rpt/rpt307/rpt_index.html
  62. 1 1
      wwwroot/mes/rpt/rpt308/rpt.ashx
  63. 3 1
      wwwroot/mes/rpt/rpt308/rpt_index.html

+ 247 - 16
wwwroot/mes/rpt/rpt102/rpt.ashx

@@ -30,6 +30,9 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				if (KilnID == "1")
 				{
 					sqlStr = @"SELECT
+*
+FROM(
+SELECT
                                             '隧道窑 日合计' AS 窑炉,
                                             SUM(出窑量)AS 出窑量,
                                             SUM(产品产量) AS 产品产量,
@@ -60,7 +63,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                             AND pd.CREATETIME>= @DATETIME@
                                             AND pd.CREATETIME<= @dateEnd@
                                             AND pd.PROCEDUREID IN(14,16)
-                                            AND pd.KILNID =@KILNID@
+                                            AND pd.KILNID =1
                                             )P
                                             GROUP BY  P.GOODSCODE,UNITPRICE
                                             )  
@@ -70,7 +73,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                             
                                             
                                             SELECT
-                                            '隧道窑 累计' AS 窑炉,
+                                            '隧道窑 月度累计' AS 窑炉,
                                             SUM(出窑量)AS 出窑量,
                                             SUM(产品产量) AS 产品产量,
                                             SUM(残品) AS 残品,
@@ -97,17 +100,144 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                             TP_PM_PRODUCTIONDATA pd
                                             LEFT JOIN TP_MST_GOODS gd ON gd.GOODSID=pd.GOODSID
                                             WHERE pd.VALUEFLAG=1
-                                            AND pd.CREATETIME>= (select trunc(@DATETIME@, 'mm')   from   dual   )
-                                            AND pd.CREATETIME<= (select TRUNC(@DATETIME@)+1-1/86400   from   dual ) 
+                                             AND pd.CREATETIME>=  (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25)
+                                            AND pd.CREATETIME<= (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 24)+23/24 +59/(24*60)  
                                             AND pd.PROCEDUREID IN(14,16)
-                                            AND pd.KILNID =@KILNID@
+                                            AND pd.KILNID =1
                                             )P
                                             GROUP BY  P.GOODSCODE,UNITPRICE
-                                            )  ";
+                                            ) 
+                                          UNION ALL
+	SELECT				
+												TO_CHAR((EXTRACT(YEAR FROM SYSDATE) )||'-'||month_group||'累计'),
+                        SUM(出窑量)AS 出窑量,
+                        SUM(产品产量) AS 产品产量,
+                        SUM(残品) AS 残品,
+                        DECODE( NVL( SUM(产品产量), 0 ), 0, '0%', TO_CHAR( ( NVL( SUM(产品产量), 0 ) / DECODE( NVL( SUM(出窑量), 1 ), 0, 1, NVL( SUM(出窑量), 1 ) ) ) * 100, 'fm99990.00' ) || '%' )AS 合格率,		
+                        SUM(产值)  AS 产值
+                              FROM(
+                                        SELECT
+                                        P.GOODSCODE AS GOODSCODE,
+                                        UNITPRICE,
+																				month_group,
+                                        SUM(CASE WHEN PROCEDUREID=16 THEN 1 ELSE 0 END)出窑量,
+                                        SUM(CASE WHEN PROCEDUREID=16  AND GOODSLEVELTYPEID in (4,5) AND ISREFIRE=0 THEN 1 ELSE 0 END)产品产量,
+                                        SUM(CASE WHEN GOODSLEVELTYPEID in (6,7) THEN 1 ELSE 0 END)残品,
+                                        TO_CHAR(( NVL( SUM(CASE WHEN PROCEDUREID=16  AND GOODSLEVELTYPEID in (4,5) AND ISREFIRE=0 THEN 1 ELSE 0 END), 0 ) * UNITPRICE ))   AS 产值
+                                        FROM(
+                                       SELECT
+    pd.PROCEDUREID,
+    pd.GOODSLEVELTYPEID,
+    pd.GOODSCODE AS GOODSCODE,
+    gd.UNITPRICE,
+    pd.KILNID,
+    pd.KILNNAME,PD.ISREFIRE,
+    CASE 
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) - 1)||'-12-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'01-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '1月'
+				
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'01-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'02-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '2月'
+				
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'02-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'03-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '3月'
+				
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'03-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'04-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '4月'
+				
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'04-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'05-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '5月'
+				
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'05-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'06-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '6月'
+				
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'06-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'07-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '7月'
+				
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'07-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'08-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '8月'
+				
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'08-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'09-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '9月'
+				
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'09-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'10-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '10月'
+				
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'10-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'11-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '11月'
+				
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'11-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') 
+				AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'12-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '12月'
+    END AS month_group
+FROM 
+    TP_PM_PRODUCTIONDATA pd
+LEFT JOIN 
+    TP_MST_GOODS gd ON gd.GOODSID = pd.GOODSID
+WHERE 
+    pd.VALUEFLAG = 1
+    AND pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) - 1)||'-12-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
+    AND pd.CREATETIME < TO_date((EXTRACT(YEAR FROM SYSDATE) )||'12-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
+    AND pd.PROCEDUREID IN(14,16)
+                                        AND pd.KILNID =1
+
+                                        )P
+                                        GROUP BY  month_group,P.GOODSCODE,UNITPRICE
+                                        )
+																				GROUP BY month_group 
+																				union ALL
+                                        SELECT
+                                       (EXTRACT(YEAR FROM SYSDATE) )||'年度累计' AS 窑炉,
+                                        SUM(出窑量)AS 出窑量,
+                                        SUM(产品产量) AS 产品产量,
+                                        SUM(残品) AS 残品,
+                                        DECODE( NVL( SUM(产品产量), 0 ), 0, '0%', TO_CHAR( ( NVL( SUM(产品产量), 0 ) / DECODE( NVL( SUM(出窑量), 1 ), 0, 1, NVL( SUM(出窑量), 1 ) ) ) * 100, 'fm99990.00' ) || '%' )AS 合格率,		
+                                        SUM(产值)  AS 产值
+                                         FROM(
+                                        SELECT
+                                        P.GOODSCODE AS GOODSCODE,
+                                        UNITPRICE,
+                                        SUM(CASE WHEN PROCEDUREID=16 THEN 1 ELSE 0 END)出窑量,
+                                       SUM(CASE WHEN PROCEDUREID=16  AND GOODSLEVELTYPEID in (4,5) AND ISREFIRE=0 THEN 1 ELSE 0 END)产品产量,
+                                        SUM(CASE WHEN GOODSLEVELTYPEID in (6,7) THEN 1 ELSE 0 END)残品,
+                                       TO_CHAR(( NVL( SUM(CASE WHEN PROCEDUREID=16  AND GOODSLEVELTYPEID in (4,5) AND ISREFIRE=0 THEN 1 ELSE 0 END), 0 ) * UNITPRICE ))   AS 产值
+                                        FROM(
+                                        SELECT
+                                        pd.PROCEDUREID,
+                                        pd.GOODSLEVELTYPEID,
+                                        pd.GOODSCODE AS GOODSCODE,
+                                        gd.UNITPRICE,
+                                        pd.KILNID,
+                                        pd.KILNNAME,PD.ISREFIRE
+                                        FROM 
+                                        TP_PM_PRODUCTIONDATA pd
+                                        LEFT JOIN TP_MST_GOODS gd ON gd.GOODSID=pd.GOODSID
+                                        WHERE pd.VALUEFLAG=1
+                                        AND pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) - 1)||'-12-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
+																				AND pd.CREATETIME < TO_date((EXTRACT(YEAR FROM SYSDATE) )||'12-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
+                                        AND pd.PROCEDUREID IN(14,16)
+                                        AND pd.KILNID =1
+                                        )P
+                                        GROUP BY  P.GOODSCODE,UNITPRICE
+                                        )
+
+) ORDER BY DECODE(窑炉, '隧道窑 日合计', 1, '隧道窑 月度累计', 2),窑炉
+
+
+
+
+
+
+
+
+
+    ";
+
+                                        
 				}
 				if (KilnID == "2")
 				{
-					sqlStr = @"SELECT
+					sqlStr = @"SELECT * FROM(
+SELECT
                                         '梭式窑 日合计' AS 窑炉,
                                         SUM(出窑量)AS 出窑量,
                                         SUM(产品产量) AS 产品产量,
@@ -134,10 +264,10 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                         TP_PM_PRODUCTIONDATA pd
                                         LEFT JOIN TP_MST_GOODS gd ON gd.GOODSID=pd.GOODSID
                                         WHERE pd.VALUEFLAG=1
-                                        AND pd.CREATETIME>= (select TRUNC(@DATETIME@)+0/86400   from   dual  )
-                                        AND pd.CREATETIME<= (select TRUNC(@DATETIME@)+1-1/86400   from   dual ) 
+                                         AND pd.CREATETIME>= @DATETIME@
+                                         AND pd.CREATETIME<=  @dateEnd@
                                         AND pd.PROCEDUREID IN(26,28)
-                                        AND pd.KILNID =@KILNID@
+                                        AND pd.KILNID =2
                                         )P
                                         GROUP BY  P.GOODSCODE,UNITPRICE
                                         )  
@@ -147,7 +277,102 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                         
                                         
                                         SELECT
-                                        '梭式窑 日累计' AS 窑炉,
+                                        '梭式窑 月度累计' AS 窑炉,
+                                        SUM(出窑量)AS 出窑量,
+                                        SUM(产品产量) AS 产品产量,
+                                        SUM(残品) AS 残品,
+                                        DECODE( NVL( SUM(产品产量), 0 ), 0, '0%', TO_CHAR( ( NVL( SUM(产品产量), 0 ) / DECODE( NVL( SUM(出窑量), 1 ), 0, 1, NVL( SUM(出窑量), 1 ) ) ) * 100, 'fm99990.00' ) || '%' )AS 合格率,		
+                                        SUM(产值)  AS 产值
+                                         FROM(
+                                        SELECT
+                                        P.GOODSCODE AS GOODSCODE,
+                                        UNITPRICE,
+                                        SUM(CASE WHEN PROCEDUREID=28 THEN 1 ELSE 0 END)出窑量,
+                                        SUM(CASE WHEN PROCEDUREID=28  AND GOODSLEVELTYPEID in (4,5)  THEN 1 ELSE 0 END)产品产量,
+                                        SUM(CASE WHEN GOODSLEVELTYPEID in (6,7) THEN 1 ELSE 0 END)残品,
+                                        DECODE( NVL( SUM(CASE WHEN  GOODSLEVELTYPEID in (4,5)  THEN 1 ELSE 0 END), 0 ), 0, 0, TO_CHAR( ( NVL( SUM(CASE WHEN  GOODSLEVELTYPEID in (4,5)  THEN 1 ELSE 0 END), 0 ) * UNITPRICE ) , 'fm9999999999999.00' )  ) AS 产值
+                                        FROM(
+                                        SELECT
+                                        pd.PROCEDUREID,
+                                        pd.GOODSLEVELTYPEID,
+                                        pd.GOODSCODE AS GOODSCODE,
+                                        gd.UNITPRICE,
+                                        pd.KILNID,
+                                        pd.KILNNAME
+                                        FROM 
+                                        TP_PM_PRODUCTIONDATA pd
+                                        LEFT JOIN TP_MST_GOODS gd ON gd.GOODSID=pd.GOODSID
+                                        WHERE pd.VALUEFLAG=1
+                                        AND pd.CREATETIME>  (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25)
+                                        AND pd.CREATETIME< (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 24)+23/24 +59/(24*60)  
+                                        AND pd.PROCEDUREID IN(26,28)
+                                        AND pd.KILNID =2
+                                        )P
+                                        GROUP BY  P.GOODSCODE,UNITPRICE
+                                        )
+																				UNION ALL
+                                          SELECT				
+																				TO_CHAR((EXTRACT(YEAR FROM SYSDATE) )||'-'||month_group||'累计'),
+                                        SUM(出窑量)AS 出窑量,
+                                        SUM(产品产量) AS 产品产量,
+                                        SUM(残品) AS 残品,
+                                        DECODE( NVL( SUM(产品产量), 0 ), 0, '0%', TO_CHAR( ( NVL( SUM(产品产量), 0 ) / DECODE( NVL( SUM(出窑量), 1 ), 0, 1, NVL( SUM(出窑量), 1 ) ) ) * 100, 'fm99990.00' ) || '%' )AS 合格率,		
+                                        SUM(产值)  AS 产值
+                                         FROM(
+                                        SELECT
+                                        P.GOODSCODE AS GOODSCODE,
+                                        UNITPRICE,
+																				month_group,
+                                        SUM(CASE WHEN PROCEDUREID=28 THEN 1 ELSE 0 END)出窑量,
+                                        SUM(CASE WHEN PROCEDUREID=28  AND GOODSLEVELTYPEID in (4,5)  THEN 1 ELSE 0 END)产品产量,
+                                        SUM(CASE WHEN GOODSLEVELTYPEID in (6,7) THEN 1 ELSE 0 END)残品,
+                                        DECODE( NVL( SUM(CASE WHEN  GOODSLEVELTYPEID in (4,5)  THEN 1 ELSE 0 END), 0 ), 0, 0, TO_CHAR( ( NVL( SUM(CASE WHEN  GOODSLEVELTYPEID in (4,5)  THEN 1 ELSE 0 END), 0 ) * UNITPRICE ) , 'fm9999999999999.00' )  ) AS 产值
+                                        FROM(
+                                       SELECT
+    pd.PROCEDUREID,
+    pd.GOODSLEVELTYPEID,
+    pd.GOODSCODE AS GOODSCODE,
+    gd.UNITPRICE,
+    pd.KILNID,
+    pd.KILNNAME,
+    CASE 
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) - 1)||'-12-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'01-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '1月'
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'01-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'02-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '2月'
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'02-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'03-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '3月'
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'03-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'04-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '4月'
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'04-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'05-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '5月'
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'05-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'06-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '6月'
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'06-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'07-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '7月'
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'07-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'08-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '8月'
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'08-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'09-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '9月'
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'09-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'10-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '10月'
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'10-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'11-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '11月'
+        WHEN pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'11-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss') AND pd.CREATETIME <= TO_date((EXTRACT(YEAR FROM SYSDATE) )||'12-25 23:59:59', 'yyyy-mm-dd hh24:mi:ss') THEN '12月'
+    END AS month_group
+FROM 
+    TP_PM_PRODUCTIONDATA pd
+LEFT JOIN 
+    TP_MST_GOODS gd ON gd.GOODSID = pd.GOODSID
+WHERE 
+    pd.VALUEFLAG = 1
+    AND pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) - 1)||'-12-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
+    AND pd.CREATETIME < TO_date((EXTRACT(YEAR FROM SYSDATE) )||'12-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
+    AND pd.PROCEDUREID IN (26, 28)
+    AND pd.KILNID = 2
+
+                                        )P
+                                        GROUP BY  month_group,P.GOODSCODE,UNITPRICE
+                                        )
+																				GROUP BY month_group 
+																				
+																				
+																				
+																				union ALL
+																				
+																				                  
+                                        
+                                        SELECT
+                                       (EXTRACT(YEAR FROM SYSDATE) )||'年度累计' AS 窑炉,
                                         SUM(出窑量)AS 出窑量,
                                         SUM(产品产量) AS 产品产量,
                                         SUM(残品) AS 残品,
@@ -173,13 +398,16 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                                         TP_PM_PRODUCTIONDATA pd
                                         LEFT JOIN TP_MST_GOODS gd ON gd.GOODSID=pd.GOODSID
                                         WHERE pd.VALUEFLAG=1
-                                        AND pd.CREATETIME>=  (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -1) + 25)
-                                        AND pd.CREATETIME<= (ADD_MONTHS(TRUNC(SYSDATE, 'MM'), 0) + 24)+23/24 +59/(24*60)  
+                                        AND pd.CREATETIME >= TO_date((EXTRACT(YEAR FROM SYSDATE) - 1)||'-12-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
+																				AND pd.CREATETIME < TO_date((EXTRACT(YEAR FROM SYSDATE) )||'12-26 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
                                         AND pd.PROCEDUREID IN(26,28)
-                                        AND pd.KILNID =@KILNID@
+                                        AND pd.KILNID =2
                                         )P
                                         GROUP BY  P.GOODSCODE,UNITPRICE
-                                        ) ";
+                                        )
+																				)ORDER BY DECODE(窑炉, '梭式窑 日合计', 1, '梭式窑 月度累计', 2),窑炉
+                                        
+";
 				}
 
 				//获取查询条件
@@ -190,13 +418,16 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				//sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 
 				//获取分页数据    
 				int total = 0;
 				DataTable dt = conn.SelectPages(page, rows, out total, sqlStr, sqlPara.ToArray());
+                    /*删除列(通过列名称)*/
+                 dt.Columns.Remove("ROWNO");
+
 				string jsonStr = new JsonResult(dt) { total = total }.ToJson();
 				context.Response.Write(jsonStr);
 			}

+ 2 - 1
wwwroot/mes/rpt/rpt102/rpt_index.html

@@ -78,7 +78,8 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true, pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         } else {

+ 1 - 1
wwwroot/mes/rpt/rpt201/rpt.ashx

@@ -214,7 +214,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 //获取数据
                 //获取分页参数
                 int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-                int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+                int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
                 string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
                 string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt201/rpt_index.html

@@ -146,7 +146,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt202/rpt.ashx

@@ -126,7 +126,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt202/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt203/rpt.ashx

@@ -124,7 +124,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt203/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt204/rpt.ashx

@@ -135,7 +135,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt204/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt205/rpt.ashx

@@ -119,7 +119,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt205/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt206/rpt.ashx

@@ -123,7 +123,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt206/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt207/rpt.ashx

@@ -121,7 +121,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt207/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt208/rpt.ashx

@@ -121,7 +121,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt208/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt209/rpt.ashx

@@ -122,7 +122,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt209/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt210/rpt.ashx

@@ -105,7 +105,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
                 //获取分页参数
                 int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-                int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+                int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
                 string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
                 string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt210/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 3 - 1
wwwroot/mes/rpt/rpt211/rpt_index.html

@@ -125,7 +125,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt212/rpt.ashx

@@ -164,7 +164,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["GROUTINGLINECODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt212/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt213/rpt.ashx

@@ -162,7 +162,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["GROUTINGLINECODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt213/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt214/rpt.ashx

@@ -171,7 +171,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["GROUTINGLINECODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt214/rpt_index.html

@@ -75,7 +75,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt215/rpt.ashx

@@ -182,7 +182,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["GROUTINGLINECODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt215/rpt_index.html

@@ -77,7 +77,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt216/rpt.ashx

@@ -173,7 +173,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["GROUTINGLINECODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt216/rpt_index.html

@@ -77,7 +77,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt217/rpt.ashx

@@ -160,7 +160,7 @@ TO_CHAR(基础数据.工号) 工号,
 				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["GROUTINGLINECODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt217/rpt_index.html

@@ -74,7 +74,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt218/rpt.ashx

@@ -151,7 +151,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["GROUTINGLINECODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt218/rpt_index.html

@@ -77,7 +77,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt219/rpt.ashx

@@ -162,7 +162,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["GROUTINGLINECODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt219/rpt_index.html

@@ -77,7 +77,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt220/rpt.ashx

@@ -121,7 +121,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["GROUTINGLINECODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt220/rpt_index.html

@@ -77,7 +77,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt221/rpt.ashx

@@ -103,7 +103,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("GROUTINGLINECODE", context.Request["GROUTINGLINECODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt221/rpt_index.html

@@ -77,7 +77,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt223/rpt.ashx

@@ -87,7 +87,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("USERCODE", context.Request["USERCODE "], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt223/rpt_index.html

@@ -88,7 +88,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt224/rpt.ashx

@@ -113,7 +113,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("KILNCODE", context.Request["KILNCODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt224/rpt_index.html

@@ -83,7 +83,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt225/rpt.ashx

@@ -97,7 +97,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 				sqlPara.Add(new CDAParameter("KILNCODE", context.Request["KILNCODE"], DataType.NVarChar));
 				//获取分页参数
 				int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 				string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 				string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt225/rpt_index.html

@@ -80,7 +80,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt226/rpt.ashx

@@ -111,7 +111,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 sqlPara.Add(new CDAParameter("DATEEND", dateEnd, DataType.DateTime));
                 //获取分页参数
                 int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-                int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+                int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
                 string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
                 string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt226/rpt_index.html

@@ -77,7 +77,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt303/rpt.ashx

@@ -129,7 +129,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 
 			//获取分页参数
 			int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-			int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+			int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 			string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 			string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt303/rpt_index.html

@@ -108,7 +108,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 289 - 277
wwwroot/mes/rpt/rpt304/rpt.ashx

@@ -27,24 +27,24 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                 sqlStr = @"WITH 
 							产品汇总缺陷 AS ( 
 									SELECT
-									CASE WHEN  gd.GOODSCODE IS NULL THEN  '总计' ELSE TO_CHAR( gd.GOODSCODE )  END GOODSCODE,
-									gds.GOODSSPECIFICATION,
-									gd.GOODSNAME,
-									TO_CHAR(COUNT( DISTINCT CASE WHEN  MDF.DEFECTTYPEID= 1  THEN DF.BARCODE ELSE NULL END )) AS 成型半检缺陷__缺陷汇总,
+									CASE WHEN  GD.GOODSCODE IS NULL THEN  '总计' ELSE TO_CHAR( GD.GOODSCODE )  END GOODSCODE,
+									GD.GOODSSPECIFICATION,
+									GD.GOODSNAME,
+								   TO_CHAR(COUNT( DISTINCT CASE WHEN  MDF.DEFECTTYPEID=1 AND MDF.DEFECTCODE IS NOT NULL AND DF.BARCODE IS NOT NULL THEN DF.BARCODE ELSE NULL END )) AS 成型半检缺陷__缺陷汇总,
 									
 									SUM( CASE WHEN df.DEFECTCODE IN ( '10', '12', '13', '14', '15', '16', '17', '18', '19', '20' ) THEN 1 ELSE 0 END ) AS 精修缺陷_打磨缺陷_缺陷汇总,
 									
 									SUM( CASE WHEN df.DEFECTCODE IN ( '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '25', '34') THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_缺陷汇总,
 									
-									SUM( CASE WHEN  MDF.DEFECTTYPEID = 4 THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_施釉缺陷_缺陷汇总,
-									
-									SUM( CASE WHEN  MDF.DEFECTTYPEID = 5 THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_缺陷汇总,
-									
-									SUM( CASE WHEN  MDF.DEFECTTYPEID = 6 THEN 1 ELSE 0 END ) AS 烧成缺陷_装窑缺陷_缺陷汇总,
-									
-									SUM(CASE  WHEN  MDF.DEFECTTYPEID = 7 THEN 1 ELSE 0  END ) AS 烧成缺陷_烧窑缺陷_缺陷汇总,
-									
-									SUM( CASE WHEN MDF.DEFECTTYPEID = 8 THEN 1 ELSE 0 END ) AS 烧成缺陷_出窑缺陷_缺陷汇总,
+									TO_CHAR(COUNT( DISTINCT CASE WHEN MDF.DEFECTCODE IS NOT NULL AND DF.BARCODE IS NOT NULL AND (MDF.DEFECTTYPEID =4)THEN DF.BARCODE ELSE NULL END )) AS 施釉擦坯缺陷_施釉缺陷_缺陷汇总,
+																
+									TO_CHAR(COUNT( DISTINCT CASE WHEN MDF.DEFECTCODE IS NOT NULL AND DF.BARCODE IS NOT NULL AND (MDF.DEFECTTYPEID =5 or MDF.DEFECTCODE='20' )THEN DF.BARCODE ELSE NULL END ))AS 施釉擦坯缺陷_擦坯缺陷_缺陷汇总,
+																
+									TO_CHAR(COUNT( DISTINCT CASE WHEN MDF.DEFECTCODE IS NOT NULL AND DF.BARCODE IS NOT NULL AND (MDF.DEFECTTYPEID =6 )THEN DF.BARCODE ELSE NULL END )) AS 烧成缺陷_装窑缺陷_缺陷汇总,
+
+									TO_CHAR(COUNT( DISTINCT CASE WHEN MDF.DEFECTCODE IS NOT NULL AND DF.BARCODE IS NOT NULL AND (MDF.DEFECTTYPEID =7 )THEN DF.BARCODE ELSE NULL END )) AS 烧成缺陷_烧窑缺陷_缺陷汇总,
+
+									TO_CHAR(COUNT( DISTINCT CASE WHEN MDF.DEFECTCODE IS NOT NULL AND DF.BARCODE IS NOT NULL AND (MDF.DEFECTTYPEID =8 )THEN DF.BARCODE ELSE NULL END )) AS 烧成缺陷_出窑缺陷_缺陷汇总,
 									
 									SUM( CASE WHEN df.DEFECTCODE IN ( '86', '87','086', '88'  ) THEN 1 ELSE 0 END ) AS 原料缺陷_缺陷汇总,
 									
@@ -63,167 +63,174 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 									SUM( CASE WHEN df.DEFECTCODE IN ( '99', '100', '099', '0100' ) THEN 1 ELSE 0 END ) AS 其他_缺陷汇总
 									
 									
-											FROM TP_PM_PRODUCTIONDATA PD
-											LEFT JOIN TP_PM_DEFECT df ON PD.BARCODE=DF.BARCODE 
-												LEFT JOIN TP_PM_GROUTINGDAILYDETAIL gd ON  df.BARCODE = gd.BARCODE 
-												LEFT JOIN TP_MST_GOODS gds ON gds.GOODSCODE=gd.GOODSCODE
-												LEFT JOIN TP_MST_DEFECT MDF ON MDF.DEFECTID=DF.DEFECTID AND MDF.VALUEFLAG=1  
+											FROM
+	                            TP_PM_PRODUCTIONDATA PD
+
+                                LEFT JOIN TP_MST_GOODS GD ON PD.GOODSID = GD.GOODSID
+                                LEFT JOIN TP_MST_DataDictionary MD ON GD.GLAZETYPEID = MD.DICTIONARYID AND MD.DICTIONARYTYPE = 'TPC002'
+                                LEFT JOIN TP_MST_LOGO LG ON PD.LOGOID = LG.LOGOID 
+                                LEFT JOIN TP_PM_DEFECT DF ON PD.PRODUCTIONDATAID = DF.PRODUCTIONDATAID 
+                                LEFT JOIN TP_MST_DEFECT MDF ON DF.DEFECTID = MDF.DEFECTID 
 												
 											WHERE
 												 PD.PROCEDUREID=16 AND PD.VALUEFLAG=1 
 												AND df.CREATETIME >= @DATEBEGIN@
-												AND df.CREATETIME <  @DATEEND@ 
+												AND df.CREATETIME <  @DATEEND@  
 											GROUP BY
-												Grouping sets ( ( gd.GOODSCODE, gd.GOODSNAME,gds.GOODSSPECIFICATION), ( ) ) 
+												Grouping sets ( ( GD.GOODSCODE, GD.GOODSNAME,GD.GOODSSPECIFICATION), ( ) ) 
 											),
 											产品明细缺陷 AS (
 											SELECT
 								CASE WHEN  gd.GOODSCODE IS NULL THEN  '总计' ELSE TO_CHAR( gd.GOODSCODE )  END GOODSCODE,
 								gd.GOODSNAME,
-								SUM( CASE WHEN df.DEFECTCODE IN ( '01' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_坯脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '02' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_棕眼,
-SUM( CASE WHEN df.DEFECTCODE IN ( '03' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_裂底,
-SUM( CASE WHEN df.DEFECTCODE IN ( '04' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_裂圈,
-SUM( CASE WHEN df.DEFECTCODE IN ( '05' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_裂鼻子,
-SUM( CASE WHEN df.DEFECTCODE IN ( '06' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_裂水道,
-SUM( CASE WHEN df.DEFECTCODE IN ( '07' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_裂管,
-SUM( CASE WHEN df.DEFECTCODE IN ( '08' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_沾接裂,
-SUM( CASE WHEN df.DEFECTCODE IN ( '09' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_裂眼,
-SUM( CASE WHEN df.DEFECTCODE IN ( '10' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_糙活,
-SUM( CASE WHEN df.DEFECTCODE IN ( '11' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_板折,
-SUM( CASE WHEN df.DEFECTCODE IN ( '12' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_变形,
-SUM( CASE WHEN df.DEFECTCODE IN ( '13' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_渣,
-SUM( CASE WHEN df.DEFECTCODE IN ( '14' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_管道渣,
-SUM( CASE WHEN df.DEFECTCODE IN ( '15' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_孔眼不良,
-SUM( CASE WHEN df.DEFECTCODE IN ( '16' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_堵眼,
-SUM( CASE WHEN df.DEFECTCODE IN ( '17' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_眼歪,
-SUM( CASE WHEN df.DEFECTCODE IN ( '18' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_丢气孔,
-SUM( CASE WHEN df.DEFECTCODE IN ( '19' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_丢眼,
-SUM( CASE WHEN df.DEFECTCODE IN ( '20' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_坯磕,
-SUM( CASE WHEN df.DEFECTCODE IN ( '21' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_漏气,
-SUM( CASE WHEN df.DEFECTCODE IN ( '22' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_空泡,
-SUM( CASE WHEN df.DEFECTCODE IN ( '23' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_水封不良,
-SUM( CASE WHEN df.DEFECTCODE IN ( '24' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_漏水,
-SUM( CASE WHEN df.DEFECTCODE IN ( '25' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_卡球,
-SUM( CASE WHEN df.DEFECTCODE IN ( '26' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_冲刷不好,
-SUM( CASE WHEN df.DEFECTCODE IN ( '27' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_泥埂,
-SUM( CASE WHEN df.DEFECTCODE IN ( '28' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_断浆迹,
-SUM( CASE WHEN df.DEFECTCODE IN ( '29' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_模迹,
-SUM( CASE WHEN df.DEFECTCODE IN ( '30' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_重皮,
-SUM( CASE WHEN df.DEFECTCODE IN ( '31' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_气泡,
-SUM( CASE WHEN df.DEFECTCODE IN ( '32' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_眼扁,
-SUM( CASE WHEN df.DEFECTCODE IN ( '33' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_水绺,
-SUM( CASE WHEN df.DEFECTCODE IN ( '34' ) THEN 1 ELSE 0 END ) AS 成型半检缺陷_裂,
-SUM( CASE WHEN df.DEFECTCODE IN ( '10' ) THEN 1 ELSE 0 END ) AS 精修缺陷_打磨缺陷_糙活,
-SUM( CASE WHEN df.DEFECTCODE IN ( '12' ) THEN 1 ELSE 0 END ) AS 精修缺陷_打磨缺陷_变形,
-SUM( CASE WHEN df.DEFECTCODE IN ( '13' ) THEN 1 ELSE 0 END ) AS 精修缺陷_打磨缺陷_渣,
-SUM( CASE WHEN df.DEFECTCODE IN ( '14' ) THEN 1 ELSE 0 END ) AS 精修缺陷_打磨缺陷_管道渣,
-SUM( CASE WHEN df.DEFECTCODE IN ( '15' ) THEN 1 ELSE 0 END ) AS 精修缺陷_打磨缺陷_孔眼不良,
-SUM( CASE WHEN df.DEFECTCODE IN ( '16' ) THEN 1 ELSE 0 END ) AS 精修缺陷_打磨缺陷_睹眼,
-SUM( CASE WHEN df.DEFECTCODE IN ( '17' ) THEN 1 ELSE 0 END ) AS 精修缺陷_打磨缺陷_眼歪,
-SUM( CASE WHEN df.DEFECTCODE IN ( '18' ) THEN 1 ELSE 0 END ) AS 精修缺陷_打磨缺陷_丢气孔,
-SUM( CASE WHEN df.DEFECTCODE IN ( '19' ) THEN 1 ELSE 0 END ) AS 精修缺陷_打磨缺陷_丢眼,
-SUM( CASE WHEN df.DEFECTCODE IN ( '20' ) THEN 1 ELSE 0 END ) AS 精修缺陷_打磨缺陷_坯磕,
-SUM( CASE WHEN df.DEFECTCODE IN ( '01' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_坯脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '02' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_棕眼,
-SUM( CASE WHEN df.DEFECTCODE IN ( '03' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_裂底,
-SUM( CASE WHEN df.DEFECTCODE IN ( '04' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_裂圈,
-SUM( CASE WHEN df.DEFECTCODE IN ( '05' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_裂鼻子,
-SUM( CASE WHEN df.DEFECTCODE IN ( '06' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_裂水道,
-SUM( CASE WHEN df.DEFECTCODE IN ( '07' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_裂管,
-SUM( CASE WHEN df.DEFECTCODE IN ( '08' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_沾接裂,
-SUM( CASE WHEN df.DEFECTCODE IN ( '09' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_裂眼,
-SUM( CASE WHEN df.DEFECTCODE IN ( '10' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_糙活,
-SUM( CASE WHEN df.DEFECTCODE IN ( '25' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_卡球,
-SUM( CASE WHEN df.DEFECTCODE IN ( '34' ) THEN 1 ELSE 0 END ) AS 精修缺陷_刷洗缺陷_裂,
-SUM( CASE WHEN df.DEFECTCODE IN ( '36' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_施釉缺陷_滚釉,
-SUM( CASE WHEN df.DEFECTCODE IN ( '37' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_施釉缺陷_釉薄,
-SUM( CASE WHEN df.DEFECTCODE IN ( '38' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_施釉缺陷_釉不匀,
-SUM( CASE WHEN df.DEFECTCODE IN ( '39' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_施釉缺陷_釉磕,
-SUM( CASE WHEN df.DEFECTCODE IN ( '40' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_施釉缺陷_釉脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '41' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_施釉缺陷_釉沾,
-SUM( CASE WHEN df.DEFECTCODE IN ( '42' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_施釉缺陷_釉绺,
-SUM( CASE WHEN df.DEFECTCODE IN ( '43' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_施釉缺陷_针孔,
-SUM( CASE WHEN df.DEFECTCODE IN ( '44' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_施釉缺陷_色脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '47' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_灌釉不良,
-SUM( CASE WHEN df.DEFECTCODE IN ( '48' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_擦脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '49' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_崩标,
-SUM( CASE WHEN df.DEFECTCODE IN ( '50' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_倒标,
-SUM( CASE WHEN df.DEFECTCODE IN ( '51' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_标污,
-SUM( CASE WHEN df.DEFECTCODE IN ( '52' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_错标,
-SUM( CASE WHEN df.DEFECTCODE IN ( '53' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_丢标,
-SUM( CASE WHEN df.DEFECTCODE IN ( '54' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_标错位,
-SUM( CASE WHEN df.DEFECTCODE IN ( '55' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_未灌釉,
-SUM( CASE WHEN df.DEFECTCODE IN ( '56' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_灌磕,
-SUM( CASE WHEN df.DEFECTCODE IN ( '20' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_坯磕,
-SUM( CASE WHEN df.DEFECTCODE IN ( '57' ) THEN 1 ELSE 0 END ) AS 施釉擦坯缺陷_擦坯缺陷_碱石,
-SUM( CASE WHEN df.DEFECTCODE IN ( '61' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_装窑缺陷_落脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '62' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_装窑缺陷_装沾,
-SUM( CASE WHEN df.DEFECTCODE IN ( '63' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_装窑缺陷_装磕,
-SUM( CASE WHEN df.DEFECTCODE IN ( '64' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_装窑缺陷_装裂,
-SUM( CASE WHEN df.DEFECTCODE IN ( '65' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_装窑缺陷_装走,
-SUM( CASE WHEN df.DEFECTCODE IN ( '66' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_装窑缺陷_装脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '67' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_装窑缺陷_缺釉,
-SUM( CASE WHEN df.DEFECTCODE IN ( '69' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_水滴,
-SUM( CASE WHEN df.DEFECTCODE IN ( '70' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_窑脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '71' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_烧裂,
-SUM( CASE WHEN df.DEFECTCODE IN ( '43' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_针孔,
-SUM( CASE WHEN df.DEFECTCODE IN ( '73' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_风惊,
-SUM( CASE WHEN df.DEFECTCODE IN ( '74' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_烧生,
-SUM( CASE WHEN df.DEFECTCODE IN ( '75' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_串烟,
-SUM( CASE WHEN df.DEFECTCODE IN ( '76' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_烧坑,
-SUM( CASE WHEN df.DEFECTCODE IN ( '77' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_桔釉,
-SUM( CASE WHEN df.DEFECTCODE IN ( '78' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_过火,
-SUM( CASE WHEN df.DEFECTCODE IN ( '79' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_火燎,
-SUM( CASE WHEN df.DEFECTCODE IN ( '80' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_烧窑缺陷_烧走,
-SUM( CASE WHEN df.DEFECTCODE IN ( '83' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_出窑缺陷_磕碰,
-SUM( CASE WHEN df.DEFECTCODE IN ( '84' ) THEN 1 ELSE 0 END ) AS 烧成缺陷_出窑缺陷_划釉,
-SUM( CASE WHEN df.DEFECTCODE IN ( '86' ) THEN 1 ELSE 0 END ) AS 原料缺陷_泥料缺陷_铜脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '87' ) THEN 1 ELSE 0 END ) AS 原料缺陷_泥料缺陷_料脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '086' ) THEN 1 ELSE 0 END ) AS 原料缺陷_釉料缺陷_铜脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '88' ) THEN 1 ELSE 0 END ) AS 原料缺陷_釉料缺陷_铁脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '91' ) THEN 1 ELSE 0 END ) AS 冷修缺陷_修补不良,
-SUM( CASE WHEN df.DEFECTCODE IN ( '92' ) THEN 1 ELSE 0 END ) AS 冷修缺陷_漏修,
-SUM( CASE WHEN df.DEFECTCODE IN ( '93' ) THEN 1 ELSE 0 END ) AS 冷修缺陷_漏检,
-SUM( CASE WHEN df.DEFECTCODE IN ( '083' ) THEN 1 ELSE 0 END ) AS 冷修缺陷_磕碰,
-SUM( CASE WHEN df.DEFECTCODE IN ( '084' ) THEN 1 ELSE 0 END ) AS 冷修缺陷_划釉,
-SUM( CASE WHEN df.DEFECTCODE IN ( '091' ) THEN 1 ELSE 0 END ) AS 回烧修补缺陷_修补不良,
-SUM( CASE WHEN df.DEFECTCODE IN ( '092' ) THEN 1 ELSE 0 END ) AS 回烧修补缺陷_漏修,
-SUM( CASE WHEN df.DEFECTCODE IN ( '093' ) THEN 1 ELSE 0 END ) AS 回烧修补缺陷_漏检,
-SUM( CASE WHEN df.DEFECTCODE IN ( '96' ) THEN 1 ELSE 0 END ) AS 回烧修补缺陷_白点,
-SUM( CASE WHEN df.DEFECTCODE IN ( '061' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_装窑缺陷_落脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '062' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_装窑缺陷_装沾,
-SUM( CASE WHEN df.DEFECTCODE IN ( '063' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_装窑缺陷_装磕,
-SUM( CASE WHEN df.DEFECTCODE IN ( '064' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_装窑缺陷_装裂,
-SUM( CASE WHEN df.DEFECTCODE IN ( '065' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_装窑缺陷_装走,
-SUM( CASE WHEN df.DEFECTCODE IN ( '066' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_装窑缺陷_装脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '067' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_装窑缺陷_缺釉,
-SUM( CASE WHEN df.DEFECTCODE IN ( '069' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_水滴,
-SUM( CASE WHEN df.DEFECTCODE IN ( '070' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_窑脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '071' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_烧裂,
-SUM( CASE WHEN df.DEFECTCODE IN ( '43' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_针孔,
-SUM( CASE WHEN df.DEFECTCODE IN ( '073' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_风惊,
-SUM( CASE WHEN df.DEFECTCODE IN ( '074' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_烧生,
-SUM( CASE WHEN df.DEFECTCODE IN ( '075' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_串烟,
-SUM( CASE WHEN df.DEFECTCODE IN ( '076' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_烧坑,
-SUM( CASE WHEN df.DEFECTCODE IN ( '077' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_桔釉,
-SUM( CASE WHEN df.DEFECTCODE IN ( '078' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_过火,
-SUM( CASE WHEN df.DEFECTCODE IN ( '079' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_火燎,
-SUM( CASE WHEN df.DEFECTCODE IN ( '080' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_烧窑缺陷_烧走,
-SUM( CASE WHEN df.DEFECTCODE IN ( '0083' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_出窑缺陷_磕碰,
-SUM( CASE WHEN df.DEFECTCODE IN ( '0084' ) THEN 1 ELSE 0 END ) AS 回烧缺陷_出窑缺陷_划釉,
-SUM( CASE WHEN df.DEFECTCODE IN ( '98' ) THEN 1 ELSE 0 END ) AS 研磨缺陷_研磨不良,
-SUM( CASE WHEN df.DEFECTCODE IN ( '99' ) THEN 1 ELSE 0 END ) AS 其他_隧道窑其他蹦脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '100' ) THEN 1 ELSE 0 END ) AS 其他_隧道窑其他试验不良,
-SUM( CASE WHEN df.DEFECTCODE IN ( '099' ) THEN 1 ELSE 0 END ) AS 其他_梭式窑其他蹦脏,
-SUM( CASE WHEN df.DEFECTCODE IN ( '0100' ) THEN 1 ELSE 0 END ) AS 其他_梭式窑其他试验不良
+count(distinct CASE WHEN df.DEFECTCODE IN ( '01' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_坯脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '02' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_棕眼,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '03' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_裂底,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '04' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_裂圈,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '05' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_裂鼻子,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '06' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_裂水道,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '07' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_裂管,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '08' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_沾接裂,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '09' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_裂眼,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '10' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_糙活,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '11' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_板折,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '12' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_变形,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '13' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_渣,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '14' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_管道渣,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '15' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_孔眼不良,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '16' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_堵眼,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '17' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_眼歪,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '18' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_丢气孔,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '19' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_丢眼,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '20' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_坯磕,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '21' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_漏气,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '22' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_空泡,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '23' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_水封不良,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '24' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_漏水,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '25' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_卡球,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '26' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_冲刷不好,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '27' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_泥埂,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '28' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_断浆迹,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '29' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_模迹,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '30' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_重皮,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '31' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_气泡,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '32' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_眼扁,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '33' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_水绺,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '34' ) THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_裂,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '001' )THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_贴码不良,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '002' )THEN DF.BARCODE ELSE NULL END ) AS 成型半检缺陷_干补不良,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '10' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_打磨缺陷_糙活,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '12' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_打磨缺陷_变形,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '13' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_打磨缺陷_渣,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '14' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_打磨缺陷_管道渣,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '15' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_打磨缺陷_孔眼不良,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '16' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_打磨缺陷_睹眼,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '17' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_打磨缺陷_眼歪,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '18' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_打磨缺陷_丢气孔,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '19' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_打磨缺陷_丢眼,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '20' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_打磨缺陷_坯磕,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '01' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_坯脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '02' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_棕眼,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '03' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_裂底,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '04' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_裂圈,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '05' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_裂鼻子,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '06' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_裂水道,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '07' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_裂管,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '08' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_沾接裂,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '09' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_裂眼,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '10' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_糙活,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '25' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_卡球,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '34' ) THEN DF.BARCODE ELSE NULL END ) AS 精修缺陷_刷洗缺陷_裂,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '36' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_施釉缺陷_滚釉,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '37' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_施釉缺陷_釉薄,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '38' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_施釉缺陷_釉不匀,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '39' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_施釉缺陷_釉磕,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '40' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_施釉缺陷_釉脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '41' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_施釉缺陷_釉沾,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '42' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_施釉缺陷_釉绺,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '43' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_施釉缺陷_针孔,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '44' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_施釉缺陷_色脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '47' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_灌釉不良,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '48' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_擦脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '49' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_崩标,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '50' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_倒标,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '51' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_标污,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '52' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_错标,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '53' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_丢标,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '54' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_标错位,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '55' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_未灌釉,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '56' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_灌磕,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '20' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_坯磕,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '57' ) THEN DF.BARCODE ELSE NULL END ) AS 施釉擦坯缺陷_擦坯缺陷_碱石,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '61' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_装窑缺陷_落脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '62' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_装窑缺陷_装沾,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '63' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_装窑缺陷_装磕,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '64' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_装窑缺陷_装裂,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '65' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_装窑缺陷_装走,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '66' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_装窑缺陷_装脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '67' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_装窑缺陷_缺釉,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '69' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_水滴,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '70' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_窑脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '71' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_烧裂,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '43' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_针孔,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '73' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_风惊,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '74' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_烧生,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '75' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_串烟,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '76' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_烧坑,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '77' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_桔釉,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '78' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_过火,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '79' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_火燎,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '80' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_烧窑缺陷_烧走,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '83' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_出窑缺陷_磕碰,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '84' ) THEN DF.BARCODE ELSE NULL END ) AS 烧成缺陷_出窑缺陷_划釉,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '86' ) THEN DF.BARCODE ELSE NULL END ) AS 原料缺陷_泥料缺陷_铜脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '87' ) THEN DF.BARCODE ELSE NULL END ) AS 原料缺陷_泥料缺陷_料脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '086' )THEN DF.BARCODE ELSE NULL END ) AS 原料缺陷_釉料缺陷_铜脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '88' ) THEN DF.BARCODE ELSE NULL END ) AS 原料缺陷_釉料缺陷_铁脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '91' ) THEN DF.BARCODE ELSE NULL END ) AS 冷修缺陷_修补不良,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '92' ) THEN DF.BARCODE ELSE NULL END ) AS 冷修缺陷_漏修,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '93' ) THEN DF.BARCODE ELSE NULL END ) AS 冷修缺陷_漏检,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '083' ) THEN DF.BARCODE ELSE NULL END ) AS 冷修缺陷_磕碰,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '084' ) THEN DF.BARCODE ELSE NULL END ) AS 冷修缺陷_划釉,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '091' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧修补缺陷_修补不良,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '092' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧修补缺陷_漏修,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '093' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧修补缺陷_漏检,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '96' )  THEN DF.BARCODE ELSE NULL END ) AS 回烧修补缺陷_白点,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '061' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_装窑缺陷_落脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '062' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_装窑缺陷_装沾,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '063' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_装窑缺陷_装磕,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '064' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_装窑缺陷_装裂,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '065' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_装窑缺陷_装走,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '066' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_装窑缺陷_装脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '067' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_装窑缺陷_缺釉,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '069' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_水滴,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '070' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_窑脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '071' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_烧裂,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '43' )  THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_针孔,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '073' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_风惊,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '074' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_烧生,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '075' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_串烟,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '076' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_烧坑,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '077' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_桔釉,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '078' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_过火,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '079' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_火燎,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '080' ) THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_烧窑缺陷_烧走,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '0083' )THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_出窑缺陷_磕碰,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '0084' )THEN DF.BARCODE ELSE NULL END ) AS 回烧缺陷_出窑缺陷_划釉,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '98' )  THEN DF.BARCODE ELSE NULL END ) AS 研磨缺陷_研磨不良,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '99' ) THEN DF.BARCODE ELSE NULL END ) AS 其他_隧道窑其他蹦脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '100' ) THEN DF.BARCODE ELSE NULL END ) AS 其他_隧道窑其他试验不良,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '099' ) THEN DF.BARCODE ELSE NULL END ) AS 其他_梭式窑其他蹦脏,
+count(distinct CASE WHEN df.DEFECTCODE IN ( '0100' ) THEN DF.BARCODE ELSE NULL END ) AS 其他_梭式窑其他试验不良
 							FROM
 								TP_PM_DEFECT df
 									LEFT JOIN TP_PM_GROUTINGDAILYDETAIL gd ON  df.BARCODE = gd.BARCODE 
+									LEFT JOIN TP_PM_PRODUCTIONDATA PD ON PD.PRODUCTIONDATAID=DF.PRODUCTIONDATAID 
 							WHERE
 								df.VALUEFLAG = 1 
 								AND df.CREATETIME >= @DATEBEGIN@
-								AND df.CREATETIME <  @DATEEND@ 
+								AND df.CREATETIME <  @DATEEND@  
+								AND PD.VALUEFLAG=1 AND PD.PROCEDUREID=16	
 								GROUP BY
 												Grouping sets ( ( gd.GOODSCODE, gd.GOODSNAME ), ( ) ) 
 								),
@@ -233,7 +240,7 @@ SUM( CASE WHEN df.DEFECTCODE IN ( '0100' ) THEN 1 ELSE 0 END ) AS 其他_梭式
 									pd.GOODSNAME ,
 									COUNT( DISTINCT pd.BARCODE ) AS 检验量,
 									SUM( CASE WHEN PD.GOODSLEVELTYPEID IN ( 4, 5 ) THEN 1 ELSE 0 END ) AS 合格量,
-								SUM( CASE WHEN PD.REWORKPROCEDUREID IN ( 24, 42 ) OR PD.GOODSLEVELTYPEID = 7 THEN 1 ELSE 0 END ) 残品 
+								SUM( CASE WHEN PD.GOODSLEVELTYPEID  NOT IN ( 4, 5 ) THEN 1 ELSE 0  END ) 残品 
 							FROM
 								(
 								SELECT
@@ -249,7 +256,7 @@ SUM( CASE WHEN df.DEFECTCODE IN ( '0100' ) THEN 1 ELSE 0 END ) AS 其他_梭式
 									VALUEFLAG = 1 
 									AND PROCEDUREID = 16 
 									AND CREATETIME >= @DATEBEGIN@ 
-									AND CREATETIME <  @DATEEND@ 
+									AND CREATETIME <  @DATEEND@  
 								) PD
 								GROUP BY
 												Grouping sets ( ( pd.GOODSCODE, pd.GOODSNAME ), ( ) ) 
@@ -269,134 +276,136 @@ SUM( CASE WHEN df.DEFECTCODE IN ( '0100' ) THEN 1 ELSE 0 END ) AS 其他_梭式
 								CASE WHEN 检验数.GOODSCODE <> '总计' THEN to_CHAR(检验数.合格量) ELSE NULL END 合格量,
 								CASE WHEN 检验数.GOODSCODE <> '总计' THEN to_CHAR(检验数.残品) ELSE NULL END 残品,
 								CASE WHEN 检验数.GOODSCODE <> '总计' THEN DECODE( NVL( 检验数.合格量, 0 ), 0, '0%', TO_CHAR( ( NVL( 检验数.合格量, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) ELSE NULL END AS 合格率,
-								to_char(s.成型半检缺陷_坯脏) AS 成型半检缺陷__坯脏,
-								to_char(s.成型半检缺陷_棕眼) AS 成型半检缺陷__棕眼,
-								to_char(s.成型半检缺陷_裂底) AS 成型半检缺陷__裂底,
-								to_char(s.成型半检缺陷_裂圈) AS 成型半检缺陷__裂圈,
-								to_char(s.成型半检缺陷_裂鼻子) AS 成型半检缺陷__裂鼻子,
-								to_char(s.成型半检缺陷_裂水道) AS 成型半检缺陷__裂水道,
-								to_char(s.成型半检缺陷_裂管) AS 成型半检缺陷__裂管,
-								to_char(s.成型半检缺陷_沾接裂) AS 成型半检缺陷__沾接裂,
-								to_char(s.成型半检缺陷_裂眼) AS 成型半检缺陷__裂眼,
-								to_char(s.成型半检缺陷_糙活) AS 成型半检缺陷__糙活,
-								to_char(s.成型半检缺陷_板折) AS 成型半检缺陷__板折,
-								to_char(s.成型半检缺陷_变形) AS 成型半检缺陷__变形,
-								to_char(s.成型半检缺陷_渣) AS 成型半检缺陷__渣,
-								to_char(s.成型半检缺陷_管道渣) AS 成型半检缺陷__管道渣,
-								to_char(s.成型半检缺陷_孔眼不良) AS 成型半检缺陷__孔眼不良,
-								to_char(s.成型半检缺陷_堵眼) AS 成型半检缺陷__堵眼,
-								to_char(s.成型半检缺陷_眼歪) AS 成型半检缺陷__眼歪,
-								to_char(s.成型半检缺陷_丢气孔) AS 成型半检缺陷__丢气孔,
-								to_char(s.成型半检缺陷_丢眼) AS 成型半检缺陷__丢眼,
-								to_char(s.成型半检缺陷_坯磕) AS 成型半检缺陷__坯磕,
-								to_char(s.成型半检缺陷_漏气) AS 成型半检缺陷__漏气,
-								to_char(s.成型半检缺陷_空泡) AS 成型半检缺陷__空泡,
-								to_char(s.成型半检缺陷_水封不良) AS 成型半检缺陷__水封不良,
-								to_char(s.成型半检缺陷_漏水) AS 成型半检缺陷__漏水,
-								to_char(s.成型半检缺陷_卡球) AS 成型半检缺陷__卡球,
-								to_char(s.成型半检缺陷_冲刷不好) AS 成型半检缺陷__冲刷不好,
-								to_char(s.成型半检缺陷_泥埂) AS 成型半检缺陷__泥埂,
-								to_char(s.成型半检缺陷_断浆迹) AS 成型半检缺陷__断浆迹,
-								to_char(s.成型半检缺陷_模迹) AS 成型半检缺陷__模迹,
-								to_char(s.成型半检缺陷_重皮) AS 成型半检缺陷__重皮,
-								to_char(s.成型半检缺陷_气泡) AS 成型半检缺陷__气泡,
-								to_char(s.成型半检缺陷_眼扁) AS 成型半检缺陷__眼扁,
-								to_char(s.成型半检缺陷_水绺) AS 成型半检缺陷__水绺,
-								to_char(s.成型半检缺陷_裂) AS 成型半检缺陷__裂,
-								f.成型半检缺陷__缺陷汇总,
+								to_char(nvl(s.成型半检缺陷_坯脏,0)) AS 成型半检缺陷__坯脏,
+								to_char(nvl(s.成型半检缺陷_棕眼,0)) AS 成型半检缺陷__棕眼,
+								to_char(nvl(s.成型半检缺陷_裂底,0)) AS 成型半检缺陷__裂底,
+								to_char(nvl(s.成型半检缺陷_裂圈,0)) AS 成型半检缺陷__裂圈,
+								to_char(nvl(s.成型半检缺陷_裂鼻子,0)) AS 成型半检缺陷__裂鼻子,
+								to_char(nvl(s.成型半检缺陷_裂水道,0)) AS 成型半检缺陷__裂水道,
+								to_char(nvl(s.成型半检缺陷_裂管,0)) AS 成型半检缺陷__裂管,
+								to_char(nvl(s.成型半检缺陷_沾接裂,0)) AS 成型半检缺陷__沾接裂,
+								to_char(nvl(s.成型半检缺陷_裂眼,0)) AS 成型半检缺陷__裂眼,
+								to_char(nvl(s.成型半检缺陷_糙活,0)) AS 成型半检缺陷__糙活,
+								to_char(nvl(s.成型半检缺陷_板折,0)) AS 成型半检缺陷__板折,
+								to_char(nvl(s.成型半检缺陷_变形,0)) AS 成型半检缺陷__变形,
+								to_char(nvl(s.成型半检缺陷_渣,0)) AS 成型半检缺陷__渣,
+								to_char(nvl(s.成型半检缺陷_管道渣,0)) AS 成型半检缺陷__管道渣,
+								to_char(nvl(s.成型半检缺陷_孔眼不良,0)) AS 成型半检缺陷__孔眼不良,
+								to_char(nvl(s.成型半检缺陷_堵眼,0)) AS 成型半检缺陷__堵眼,
+								to_char(nvl(s.成型半检缺陷_眼歪,0)) AS 成型半检缺陷__眼歪,
+								to_char(nvl(s.成型半检缺陷_丢气孔,0)) AS 成型半检缺陷__丢气孔,
+								to_char(nvl(s.成型半检缺陷_丢眼,0)) AS 成型半检缺陷__丢眼,
+								to_char(nvl(s.成型半检缺陷_坯磕,0)) AS 成型半检缺陷__坯磕,
+								to_char(nvl(s.成型半检缺陷_漏气,0)) AS 成型半检缺陷__漏气,
+								to_char(nvl(s.成型半检缺陷_空泡,0)) AS 成型半检缺陷__空泡,
+								to_char(nvl(s.成型半检缺陷_水封不良,0)) AS 成型半检缺陷__水封不良,
+								to_char(nvl(s.成型半检缺陷_漏水,0)) AS 成型半检缺陷__漏水,
+								to_char(nvl(s.成型半检缺陷_卡球,0)) AS 成型半检缺陷__卡球,
+								to_char(nvl(s.成型半检缺陷_冲刷不好,0)) AS 成型半检缺陷__冲刷不好,
+								to_char(nvl(s.成型半检缺陷_泥埂,0)) AS 成型半检缺陷__泥埂,
+								to_char(nvl(s.成型半检缺陷_断浆迹,0)) AS 成型半检缺陷__断浆迹,
+								to_char(nvl(s.成型半检缺陷_模迹,0)) AS 成型半检缺陷__模迹,
+								to_char(nvl(s.成型半检缺陷_重皮,0)) AS 成型半检缺陷__重皮,
+								to_char(nvl(s.成型半检缺陷_气泡,0)) AS 成型半检缺陷__气泡,
+								to_char(nvl(s.成型半检缺陷_眼扁,0)) AS 成型半检缺陷__眼扁,
+								to_char(nvl(s.成型半检缺陷_水绺,0)) AS 成型半检缺陷__水绺,
+								to_char(nvl(s.成型半检缺陷_裂,0)) AS 成型半检缺陷__裂,
+								to_char(nvl(s.成型半检缺陷_贴码不良,0)) AS 成型半检缺陷__贴码不良,
+								to_char(nvl(s.成型半检缺陷_干补不良,0)) AS 成型半检缺陷__干补不良,
+								nvl(f.成型半检缺陷__缺陷汇总,0) AS 成型半检缺陷__缺陷汇总,
 								DECODE( NVL( f.成型半检缺陷__缺陷汇总, 0 ), 0, '0%', TO_CHAR( ( NVL( f.成型半检缺陷__缺陷汇总, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) AS 成型半检缺陷__缺陷率,
-								to_char(s.精修缺陷_打磨缺陷_糙活) AS 精修缺陷_打磨缺陷_糙活,
-								to_char(s.精修缺陷_打磨缺陷_变形) AS 精修缺陷_打磨缺陷_变形,
-								to_char(s.精修缺陷_打磨缺陷_渣) AS 精修缺陷_打磨缺陷_渣,
-								to_char(s.精修缺陷_打磨缺陷_管道渣) AS 精修缺陷_打磨缺陷_管道渣,
-								to_char(s.精修缺陷_打磨缺陷_孔眼不良) AS 精修缺陷_打磨缺陷_孔眼不良,
-								to_char(s.精修缺陷_打磨缺陷_睹眼) AS 精修缺陷_打磨缺陷_睹眼,
-								to_char(s.精修缺陷_打磨缺陷_眼歪) AS 精修缺陷_打磨缺陷_眼歪,
-								to_char(s.精修缺陷_打磨缺陷_丢气孔) AS 精修缺陷_打磨缺陷_丢气孔,
-								to_char(s.精修缺陷_打磨缺陷_丢眼) AS 精修缺陷_打磨缺陷_丢眼,
-								to_char(s.精修缺陷_打磨缺陷_坯磕) AS 精修缺陷_打磨缺陷_坯磕,
-								f.精修缺陷_打磨缺陷_缺陷汇总,
+								to_char(nvl(s.精修缺陷_打磨缺陷_糙活,0)) AS 精修缺陷_打磨缺陷_糙活,
+								to_char(nvl(s.精修缺陷_打磨缺陷_变形,0)) AS 精修缺陷_打磨缺陷_变形,
+								to_char(nvl(s.精修缺陷_打磨缺陷_渣,0)) AS 精修缺陷_打磨缺陷_渣,
+								to_char(nvl(s.精修缺陷_打磨缺陷_管道渣,0)) AS 精修缺陷_打磨缺陷_管道渣,
+								to_char(nvl(s.精修缺陷_打磨缺陷_孔眼不良,0)) AS 精修缺陷_打磨缺陷_孔眼不良,
+								to_char(nvl(s.精修缺陷_打磨缺陷_睹眼,0)) AS 精修缺陷_打磨缺陷_睹眼,
+								to_char(nvl(s.精修缺陷_打磨缺陷_眼歪,0)) AS 精修缺陷_打磨缺陷_眼歪,
+								to_char(nvl(s.精修缺陷_打磨缺陷_丢气孔,0)) AS 精修缺陷_打磨缺陷_丢气孔,
+								to_char(nvl(s.精修缺陷_打磨缺陷_丢眼,0)) AS 精修缺陷_打磨缺陷_丢眼,
+								to_char(nvl(s.精修缺陷_打磨缺陷_坯磕,0)) AS 精修缺陷_打磨缺陷_坯磕,
+								nvl(f.精修缺陷_打磨缺陷_缺陷汇总,0) AS 精修缺陷_打磨缺陷_缺陷汇总,
 								DECODE( NVL( f.精修缺陷_打磨缺陷_缺陷汇总, 0 ), 0, '0%', TO_CHAR( ( NVL( f.精修缺陷_打磨缺陷_缺陷汇总, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) AS 精修缺陷_打磨缺陷_缺陷率,
-								to_char(s.精修缺陷_刷洗缺陷_坯脏) AS 精修缺陷_刷洗缺陷_坯脏,
-								to_char(s.精修缺陷_刷洗缺陷_棕眼) AS 精修缺陷_刷洗缺陷_棕眼,
-								to_char(s.精修缺陷_刷洗缺陷_裂底) AS 精修缺陷_刷洗缺陷_裂底,
-								to_char(s.精修缺陷_刷洗缺陷_裂圈) AS 精修缺陷_刷洗缺陷_裂圈,
-								to_char(s.精修缺陷_刷洗缺陷_裂鼻子) AS 精修缺陷_刷洗缺陷_裂鼻子,
-								to_char(s.精修缺陷_刷洗缺陷_裂水道) AS 精修缺陷_刷洗缺陷_裂水道,
-								to_char(s.精修缺陷_刷洗缺陷_裂管) AS 精修缺陷_刷洗缺陷_裂管,
-								to_char(s.精修缺陷_刷洗缺陷_沾接裂) AS 精修缺陷_刷洗缺陷_沾接裂,
-								to_char(s.精修缺陷_刷洗缺陷_裂眼) AS 精修缺陷_刷洗缺陷_裂眼,
-								to_char(s.精修缺陷_刷洗缺陷_糙活) AS 精修缺陷_刷洗缺陷_糙活,
-								to_char(s.精修缺陷_刷洗缺陷_卡球) AS 精修缺陷_刷洗缺陷_卡球,
-								to_char(s.精修缺陷_刷洗缺陷_裂) AS 精修缺陷_刷洗缺陷_裂,
-								f.精修缺陷_刷洗缺陷_缺陷汇总,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_坯脏,0)) AS 精修缺陷_刷洗缺陷_坯脏,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_棕眼,0)) AS 精修缺陷_刷洗缺陷_棕眼,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_裂底,0)) AS 精修缺陷_刷洗缺陷_裂底,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_裂圈,0)) AS 精修缺陷_刷洗缺陷_裂圈,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_裂鼻子,0)) AS 精修缺陷_刷洗缺陷_裂鼻子,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_裂水道,0)) AS 精修缺陷_刷洗缺陷_裂水道,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_裂管,0)) AS 精修缺陷_刷洗缺陷_裂管,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_沾接裂,0)) AS 精修缺陷_刷洗缺陷_沾接裂,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_裂眼,0)) AS 精修缺陷_刷洗缺陷_裂眼,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_糙活,0)) AS 精修缺陷_刷洗缺陷_糙活,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_卡球,0)) AS 精修缺陷_刷洗缺陷_卡球,
+								to_char(nvl(s.精修缺陷_刷洗缺陷_裂,0)) AS 精修缺陷_刷洗缺陷_裂,
+								nvl(f.精修缺陷_刷洗缺陷_缺陷汇总,0) AS 精修缺陷_刷洗缺陷_缺陷汇总,
 								DECODE( NVL( f.精修缺陷_刷洗缺陷_缺陷汇总, 0 ), 0, '0%', TO_CHAR( ( NVL( f.精修缺陷_刷洗缺陷_缺陷汇总, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) AS 精修缺陷_刷洗缺陷_缺陷率,
-								to_char(s.施釉擦坯缺陷_施釉缺陷_滚釉) AS 施釉擦坯缺陷_施釉缺陷_滚釉,
-								to_char(s.施釉擦坯缺陷_施釉缺陷_釉薄) AS 施釉擦坯缺陷_施釉缺陷_釉薄,
-								to_char(s.施釉擦坯缺陷_施釉缺陷_釉不匀) AS 施釉擦坯缺陷_施釉缺陷_釉不匀,
-								to_char(s.施釉擦坯缺陷_施釉缺陷_釉磕) AS 施釉擦坯缺陷_施釉缺陷_釉磕,
-								to_char(s.施釉擦坯缺陷_施釉缺陷_釉脏) AS 施釉擦坯缺陷_施釉缺陷_釉脏,
-								to_char(s.施釉擦坯缺陷_施釉缺陷_釉沾) AS 施釉擦坯缺陷_施釉缺陷_釉沾,
-								to_char(s.施釉擦坯缺陷_施釉缺陷_釉绺) AS 施釉擦坯缺陷_施釉缺陷_釉绺,
-								to_char(s.施釉擦坯缺陷_施釉缺陷_针孔) AS 施釉擦坯缺陷_施釉缺陷_针孔,
-								to_char(s.施釉擦坯缺陷_施釉缺陷_色脏) AS 施釉擦坯缺陷_施釉缺陷_色脏,
+								to_char(nvl(s.施釉擦坯缺陷_施釉缺陷_滚釉,0)) AS 施釉擦坯缺陷_施釉缺陷_滚釉,
+								to_char(nvl(s.施釉擦坯缺陷_施釉缺陷_釉薄,0)) AS 施釉擦坯缺陷_施釉缺陷_釉薄,
+								to_char(nvl(s.施釉擦坯缺陷_施釉缺陷_釉不匀,0)) AS 施釉擦坯缺陷_施釉缺陷_釉不匀,
+								to_char(nvl(s.施釉擦坯缺陷_施釉缺陷_釉磕,0)) AS 施釉擦坯缺陷_施釉缺陷_釉磕,
+								to_char(nvl(s.施釉擦坯缺陷_施釉缺陷_釉脏,0)) AS 施釉擦坯缺陷_施釉缺陷_釉脏,
+								to_char(nvl(s.施釉擦坯缺陷_施釉缺陷_釉沾,0)) AS 施釉擦坯缺陷_施釉缺陷_釉沾,
+								to_char(nvl(s.施釉擦坯缺陷_施釉缺陷_釉绺,0)) AS 施釉擦坯缺陷_施釉缺陷_釉绺,
+								to_char(nvl(s.施釉擦坯缺陷_施釉缺陷_针孔,0)) AS 施釉擦坯缺陷_施釉缺陷_针孔,
+								to_char(nvl(s.施釉擦坯缺陷_施釉缺陷_色脏,0)) AS 施釉擦坯缺陷_施釉缺陷_色脏,
 
-								f.施釉擦坯缺陷_施釉缺陷_缺陷汇总,
+								nvl(f.施釉擦坯缺陷_施釉缺陷_缺陷汇总,0) AS 施釉擦坯缺陷_施釉缺陷_缺陷汇总,
 								DECODE( NVL( f.施釉擦坯缺陷_施釉缺陷_缺陷汇总, 0 ), 0, '0%', TO_CHAR( ( NVL( f.施釉擦坯缺陷_施釉缺陷_缺陷汇总, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) AS 施釉擦坯缺陷_施釉缺陷_缺陷率,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_灌釉不良) AS 施釉擦坯缺陷_擦坯缺陷_灌釉不良,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_擦脏) AS 施釉擦坯缺陷_擦坯缺陷_擦脏,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_崩标) AS 施釉擦坯缺陷_擦坯缺陷_崩标,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_倒标) AS 施釉擦坯缺陷_擦坯缺陷_倒标,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_标污) AS 施釉擦坯缺陷_擦坯缺陷_标污,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_错标) AS 施釉擦坯缺陷_擦坯缺陷_错标,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_丢标) AS 施釉擦坯缺陷_擦坯缺陷_丢标,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_标错位) AS 施釉擦坯缺陷_擦坯缺陷_标错位,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_未灌釉) AS 施釉擦坯缺陷_擦坯缺陷_未灌釉,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_灌磕) AS 施釉擦坯缺陷_擦坯缺陷_灌磕,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_坯磕) AS 施釉擦坯缺陷_擦坯缺陷_坯磕,
-							to_char(s.施釉擦坯缺陷_擦坯缺陷_碱石) AS 施釉擦坯缺陷_擦坯缺陷_碱石,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_灌釉不良,0)) AS 施釉擦坯缺陷_擦坯缺陷_灌釉不良,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_擦脏,0)) AS 施釉擦坯缺陷_擦坯缺陷_擦脏,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_崩标,0)) AS 施釉擦坯缺陷_擦坯缺陷_崩标,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_倒标,0)) AS 施釉擦坯缺陷_擦坯缺陷_倒标,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_标污,0)) AS 施釉擦坯缺陷_擦坯缺陷_标污,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_错标,0)) AS 施釉擦坯缺陷_擦坯缺陷_错标,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_丢标,0)) AS 施釉擦坯缺陷_擦坯缺陷_丢标,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_标错位,0)) AS 施釉擦坯缺陷_擦坯缺陷_标错位,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_未灌釉,0)) AS 施釉擦坯缺陷_擦坯缺陷_未灌釉,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_灌磕,0)) AS 施釉擦坯缺陷_擦坯缺陷_灌磕,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_坯磕,0)) AS 施釉擦坯缺陷_擦坯缺陷_坯磕,
+							to_char(nvl(s.施釉擦坯缺陷_擦坯缺陷_碱石,0)) AS 施釉擦坯缺陷_擦坯缺陷_碱石,
 
-								f.施釉擦坯缺陷_擦坯缺陷_缺陷汇总,
+								nvl(f.施釉擦坯缺陷_擦坯缺陷_缺陷汇总,0) AS 施釉擦坯缺陷_擦坯缺陷_缺陷汇总,
 								DECODE( NVL( f.施釉擦坯缺陷_擦坯缺陷_缺陷汇总, 0 ), 0, '0%', TO_CHAR( ( NVL( f.施釉擦坯缺陷_擦坯缺陷_缺陷汇总, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) AS 施釉擦坯缺陷_擦坯缺陷_缺陷率,
-								to_char(s.烧成缺陷_装窑缺陷_落脏) AS 烧成缺陷_装窑缺陷_落脏,
-								to_char(s.烧成缺陷_装窑缺陷_装沾) AS 烧成缺陷_装窑缺陷_装沾,
-								to_char(s.烧成缺陷_装窑缺陷_装磕) AS 烧成缺陷_装窑缺陷_装磕,
-								to_char(s.烧成缺陷_装窑缺陷_装裂) AS 烧成缺陷_装窑缺陷_装裂,
-								to_char(s.烧成缺陷_装窑缺陷_装走) AS 烧成缺陷_装窑缺陷_装走,
-								to_char(s.烧成缺陷_装窑缺陷_装脏) AS 烧成缺陷_装窑缺陷_装脏,
-								to_char(s.烧成缺陷_装窑缺陷_缺釉) AS 烧成缺陷_装窑缺陷_缺釉,
+								to_char(nvl(s.烧成缺陷_装窑缺陷_落脏,0)) AS 烧成缺陷_装窑缺陷_落脏,
+								to_char(nvl(s.烧成缺陷_装窑缺陷_装沾,0)) AS 烧成缺陷_装窑缺陷_装沾,
+								to_char(nvl(s.烧成缺陷_装窑缺陷_装磕,0)) AS 烧成缺陷_装窑缺陷_装磕,
+								to_char(nvl(s.烧成缺陷_装窑缺陷_装裂,0)) AS 烧成缺陷_装窑缺陷_装裂,
+								to_char(nvl(s.烧成缺陷_装窑缺陷_装走,0)) AS 烧成缺陷_装窑缺陷_装走,
+								to_char(nvl(s.烧成缺陷_装窑缺陷_装脏,0)) AS 烧成缺陷_装窑缺陷_装脏,
+								to_char(nvl(s.烧成缺陷_装窑缺陷_缺釉,0)) AS 烧成缺陷_装窑缺陷_缺釉,
 
-								f.烧成缺陷_装窑缺陷_缺陷汇总,
+								nvl(f.烧成缺陷_装窑缺陷_缺陷汇总,0) AS 烧成缺陷_装窑缺陷_缺陷汇总,
 								DECODE( NVL( f.烧成缺陷_装窑缺陷_缺陷汇总, 0 ), 0, '0%', TO_CHAR( ( NVL( f.烧成缺陷_装窑缺陷_缺陷汇总, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) AS 烧成缺陷_装窑缺陷_缺陷率,
-								to_char(s.烧成缺陷_烧窑缺陷_水滴) AS 烧成缺陷_烧窑缺陷_水滴,
-								to_char(s.烧成缺陷_烧窑缺陷_窑脏) AS 烧成缺陷_烧窑缺陷_窑脏,
-								to_char(s.烧成缺陷_烧窑缺陷_烧裂) AS 烧成缺陷_烧窑缺陷_烧裂,
-								to_char(s.烧成缺陷_烧窑缺陷_针孔) AS 烧成缺陷_烧窑缺陷_针孔,
-								to_char(s.烧成缺陷_烧窑缺陷_风惊) AS 烧成缺陷_烧窑缺陷_风惊,
-								to_char(s.烧成缺陷_烧窑缺陷_烧生) AS 烧成缺陷_烧窑缺陷_烧生,
-								to_char(s.烧成缺陷_烧窑缺陷_串烟) AS 烧成缺陷_烧窑缺陷_串烟,
-								to_char(s.烧成缺陷_烧窑缺陷_烧坑) AS 烧成缺陷_烧窑缺陷_烧坑,
-								to_char(s.烧成缺陷_烧窑缺陷_桔釉) AS 烧成缺陷_烧窑缺陷_桔釉,
-								to_char(s.烧成缺陷_烧窑缺陷_过火) AS 烧成缺陷_烧窑缺陷_过火,
-								to_char(s.烧成缺陷_烧窑缺陷_火燎) AS 烧成缺陷_烧窑缺陷_火燎,
-								to_char(s.烧成缺陷_烧窑缺陷_烧走) AS 烧成缺陷_烧窑缺陷_烧走,
-								f.烧成缺陷_烧窑缺陷_缺陷汇总,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_水滴,0)) AS 烧成缺陷_烧窑缺陷_水滴,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_窑脏,0)) AS 烧成缺陷_烧窑缺陷_窑脏,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_烧裂,0)) AS 烧成缺陷_烧窑缺陷_烧裂,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_针孔,0)) AS 烧成缺陷_烧窑缺陷_针孔,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_风惊,0)) AS 烧成缺陷_烧窑缺陷_风惊,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_烧生,0)) AS 烧成缺陷_烧窑缺陷_烧生,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_串烟,0)) AS 烧成缺陷_烧窑缺陷_串烟,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_烧坑,0)) AS 烧成缺陷_烧窑缺陷_烧坑,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_桔釉,0)) AS 烧成缺陷_烧窑缺陷_桔釉,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_过火,0)) AS 烧成缺陷_烧窑缺陷_过火,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_火燎,0)) AS 烧成缺陷_烧窑缺陷_火燎,
+								to_char(nvl(s.烧成缺陷_烧窑缺陷_烧走,0)) AS 烧成缺陷_烧窑缺陷_烧走,
+								nvl(f.烧成缺陷_烧窑缺陷_缺陷汇总,0)AS 烧成缺陷_烧窑缺陷_缺陷汇总,
 								DECODE( NVL( f.烧成缺陷_烧窑缺陷_缺陷汇总, 0 ), 0, '0%', TO_CHAR( ( NVL( f.烧成缺陷_烧窑缺陷_缺陷汇总, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) AS 烧成缺陷_烧窑缺陷_缺陷率,
-								TO_CHAR(s.烧成缺陷_出窑缺陷_磕碰)AS 烧成缺陷_出窑缺陷_磕碰,
-								TO_CHAR(s.烧成缺陷_出窑缺陷_划釉)AS 烧成缺陷_出窑缺陷_划釉,
-								f.烧成缺陷_出窑缺陷_缺陷汇总,
+								TO_CHAR(nvl(s.烧成缺陷_出窑缺陷_磕碰,0))AS 烧成缺陷_出窑缺陷_磕碰,
+								TO_CHAR(nvl(s.烧成缺陷_出窑缺陷_划釉,0))AS 烧成缺陷_出窑缺陷_划釉,
+								nvl(f.烧成缺陷_出窑缺陷_缺陷汇总,0) AS 烧成缺陷_出窑缺陷_缺陷汇总,
 								DECODE( NVL( f.烧成缺陷_出窑缺陷_缺陷汇总, 0 ), 0, '0%', TO_CHAR( ( NVL( f.烧成缺陷_出窑缺陷_缺陷汇总, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) AS 烧成缺陷_出窑缺陷_缺陷率,
-								TO_CHAR(s.原料缺陷_泥料缺陷_铜脏) AS 原料缺陷_泥料缺陷_铜脏,
-								TO_CHAR(s.原料缺陷_泥料缺陷_料脏) AS 原料缺陷_泥料缺陷_料脏,
-								TO_CHAR(s.原料缺陷_釉料缺陷_铜脏) AS 原料缺陷_釉料缺陷_铜脏, 
-								TO_CHAR(s.原料缺陷_釉料缺陷_铁脏) AS 原料缺陷_釉料缺陷_铁脏,
-								f.原料缺陷_缺陷汇总 AS 原料缺陷__缺陷汇总,
+								TO_CHAR(nvl(s.原料缺陷_泥料缺陷_铜脏,0)) AS 原料缺陷_泥料缺陷_铜脏,
+								TO_CHAR(nvl(s.原料缺陷_泥料缺陷_料脏,0)) AS 原料缺陷_泥料缺陷_料脏,
+								TO_CHAR(nvl(s.原料缺陷_釉料缺陷_铜脏,0)) AS 原料缺陷_釉料缺陷_铜脏, 
+								TO_CHAR(nvl(s.原料缺陷_釉料缺陷_铁脏,0)) AS 原料缺陷_釉料缺陷_铁脏,
+								nvl(f.原料缺陷_缺陷汇总,0) AS 原料缺陷__缺陷汇总,
 								DECODE( NVL( f.原料缺陷_缺陷汇总, 0 ), 0, '0%', TO_CHAR( ( NVL( f.原料缺陷_缺陷汇总, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) AS 原料缺陷__缺陷率,
-								to_char(s.其他_隧道窑其他蹦脏) AS 其他__隧道窑其他蹦脏,
-								to_char(s.其他_隧道窑其他试验不良) AS 其他__隧道窑其他试验不良,
-								to_char(s.其他_梭式窑其他蹦脏) AS 其他__梭式窑其他蹦脏,
-								to_char(s.其他_梭式窑其他试验不良) AS 其他__梭式窑其他试验不良,
-								f.其他_缺陷汇总 AS 其他__缺陷汇总,
+								to_char(nvl(s.其他_隧道窑其他蹦脏,0)) AS 其他__隧道窑其他蹦脏,
+								to_char(nvl(s.其他_隧道窑其他试验不良,0)) AS 其他__隧道窑其他试验不良,
+								to_char(nvl(s.其他_梭式窑其他蹦脏,0)) AS 其他__梭式窑其他蹦脏,
+								to_char(nvl(s.其他_梭式窑其他试验不良,0)) AS 其他__梭式窑其他试验不良,
+								nvl(f.其他_缺陷汇总,0) AS 其他__缺陷汇总,
 								DECODE( NVL( f.其他_缺陷汇总, 0 ), 0, '0%', TO_CHAR( ( NVL( f.其他_缺陷汇总, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) AS 其他__缺陷率
 								FROM 检验数
 									LEFT JOIN 产品 ON 检验数.GOODSCODE=产品.GOODSCODE
@@ -445,6 +454,9 @@ DECODE( NVL( s.成型半检缺陷_气泡, 0 ), 0, '0%', TO_CHAR( ( NVL( s.成型
 DECODE( NVL( s.成型半检缺陷_眼扁, 0 ), 0, '0%', TO_CHAR( ( NVL( s.成型半检缺陷_眼扁, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ),
 DECODE( NVL( s.成型半检缺陷_水绺, 0 ), 0, '0%', TO_CHAR( ( NVL( s.成型半检缺陷_水绺, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ),
 DECODE( NVL( s.成型半检缺陷_裂, 0 ), 0, '0%', TO_CHAR( ( NVL( s.成型半检缺陷_裂, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ),
+DECODE( NVL( s.成型半检缺陷_贴码不良, 0 ), 0, '0%', TO_CHAR( ( NVL( s.成型半检缺陷_贴码不良, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ),
+DECODE( NVL( s.成型半检缺陷_干补不良, 0 ), 0, '0%', TO_CHAR( ( NVL( s.成型半检缺陷_干补不良, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ),
+
 f.成型半检缺陷__缺陷汇总,
 								DECODE( NVL( f.成型半检缺陷__缺陷汇总, 0 ), 0, '0%', TO_CHAR( ( NVL( f.成型半检缺陷__缺陷汇总, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ) AS 成型半检缺陷__缺陷率,
 DECODE( NVL( s.精修缺陷_打磨缺陷_糙活, 0 ), 0, '0%', TO_CHAR( ( NVL( s.精修缺陷_打磨缺陷_糙活, 0 ) / DECODE( NVL( 检验数.检验量, 1 ), 0, 1, NVL( 检验数.检验量, 1 ) ) ) * 100, 'fm99990.00' ) || '%' ),
@@ -553,7 +565,7 @@ ORDER BY 产品编码
             //sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
                //获取分页参数
             int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-            int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+				int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
             string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
             string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt304/rpt_index.html

@@ -217,7 +217,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+				pagination: true,
+				pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
         }

+ 1 - 1
wwwroot/mes/rpt/rpt305/rpt.ashx

@@ -533,7 +533,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
             //sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
             //获取分页参数
             int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-            int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+            int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
             string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
             string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt305/rpt_index.html

@@ -92,7 +92,9 @@
 					splitChar: '_',
 					columnMenu: '#btnColumnMenu',
 					columnMoving: true,
-					pagination: true
+                    pagination: true,
+                    pagelist: [10000, 50, 100, 50, 1000, 5000],
+                    pageSize: 10000
                 })
 					
             };

+ 1 - 1
wwwroot/mes/rpt/rpt306/rpt.ashx

@@ -182,7 +182,7 @@ WHERE
 			//sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
 			//获取分页参数
 			int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-			int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+			int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 			string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 			string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt306/rpt_index.html

@@ -86,7 +86,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
             });
             } else {

+ 1 - 1
wwwroot/mes/rpt/rpt307/rpt.ashx

@@ -104,7 +104,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 			//sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
 			//获取分页参数
 			int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-			int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+			int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 			string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 			string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt307/rpt_index.html

@@ -88,7 +88,9 @@
                 splitChar: '_',
                 columnMenu: '#btnColumnMenu',
                 columnMoving: true,
-                pagination: true
+                pagination: true,
+                pagelist: [10000, 50, 100, 50, 1000, 5000],
+                pageSize: 10000
 
 			});
             } else {

+ 1 - 1
wwwroot/mes/rpt/rpt308/rpt.ashx

@@ -97,7 +97,7 @@ public class rpt : IHttpHandler, IReadOnlySessionState
 			//sqlPara.Add(new CDAParameter("PROCEDUREID", context.Request["procedureidMaster"]));
 			//获取分页参数
 			int page = HttpContext.Current.Request["page"] is object ? Convert.ToInt32(HttpContext.Current.Request["page"]) : 1;
-			int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10;
+			int rows = HttpContext.Current.Request["rows"] is object ? Convert.ToInt32(HttpContext.Current.Request["rows"]) : 10000;
 			string sort = HttpContext.Current.Request["sort"] is object ? HttpContext.Current.Request["sort"] : "m.REPORTCODE";
 			string order = HttpContext.Current.Request["order"] is object ? HttpContext.Current.Request["order"] : "";
 

+ 3 - 1
wwwroot/mes/rpt/rpt308/rpt_index.html

@@ -85,7 +85,9 @@
 					splitChar: '_',
 					columnMenu: '#btnColumnMenu',
 					columnMoving: true,
-					pagination: true
+                    pagination: true,
+                    pagelist: [10000, 50, 100, 50, 1000, 5000],
+                    pageSize: 10000
 
 				});
 			} else {