姜永辉 před 9 měsíci
rodič
revize
06a3b595ba
1 změnil soubory, kde provedl 30 přidání a 23 odebrání
  1. 30 23
      wwwroot/mes/rpt/rpt014/rpt.ashx

+ 30 - 23
wwwroot/mes/rpt/rpt014/rpt.ashx

@@ -200,42 +200,49 @@ public class rpt : IHttpHandler, IReadOnlySessionState
                            AND GL.BUILDINGNO {BUILDINGNO}
 			            UNION ALL
 			            SELECT
-					            TO_CHAR(PD.PRODUCTIONDATAID),
+					            TO_CHAR(PD.barcode),
 					            MAX( PMAX.PRODUCTIONDATAID ) MPDID,
-					            PD.GOODSLEVELTYPEID,
-					            PD.GOODSID,
-					            PD.REWORKPROCEDUREID,
+					            PDD.GOODSLEVELTYPEID,
+					            PDD.GOODSID,
+					            PDD.REWORKPROCEDUREID,
 								0 LB_NUM,
-					            CASE WHEN PD.GOODSLEVELTYPEID = 7 AND sum( D.PRODUCTIONDEFECTID ) > 0 THEN 1 ELSE 0 END B_NUM, --B级品
+					            CASE WHEN PDD.GOODSLEVELTYPEID = 7 AND sum( D.PRODUCTIONDEFECTID ) > 0 THEN 1 ELSE 0 END B_NUM, --B级品
 					            0 OUT_K,
 					            CASE WHEN sum( PMAX.PRODUCTIONDATAID ) > 0 THEN 1 ELSE 0 END H_FLAG, 
                                 0 Waste
 			            FROM
-				            TP_PM_PRODUCTIONDATA PD
-			                LEFT JOIN TP_PM_PRODUCTIONDATA PMAX ON PMAX.GROUTINGDAILYDETAILID = PD.GROUTINGDAILYDETAILID 
+				            ( SELECT MAX(PD.PRODUCTIONDATAID) PRODUCTIONDATAID
+										  ,PD.GOODSID,PD.BARCODE
+										  ,PD.GROUTINGDAILYDETAILID ,PD.KILNCARBATCHNO
+							 FROM TP_PM_PRODUCTIONDATA PD 
+							  INNER JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID = PD.GROUTINGLINEID
+								WHERE
+                           PD.PROCEDUREID = @PROCEDUREID@
+                            -- AND PD.VALUEFLAG = '1'
+                           -- AND PD.CHECKBATCHNO = 1  
+                           AND PD.CREATETIME >= @DATEBEGIN@
+                           AND PD.CREATETIME < @DATEEND@
+						   AND PD.CHECKTIME >= @DATEBEGIN@
+                           AND PD.CHECKTIME < @DATEEND@
+                           AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL) 
+                            AND PD.GOODSCODE IN({goodsCodes})
+                           AND GL.BUILDINGNO {BUILDINGNO} 
+							 GROUP BY PD.GOODSID,PD.BARCODE ,PD.GROUTINGDAILYDETAILID ,PD.KILNCARBATCHNO 
+							) PD
+			                LEFT JOIN TP_PM_PRODUCTIONDATA PMAX ON PMAX.GROUTINGDAILYDETAILID = PD.GROUTINGDAILYDETAILID   and pmax.KILNCARBATCHNO= pd.KILNCARBATCHNO	
 			                AND PMAX.PRODUCTIONDATAID < PD.PRODUCTIONDATAID AND PMAX.VALUEFLAG = '1' AND PMAX.PROCEDUREMODEL = '1'
 				            /*20  研磨 22  直接冷补 23  研磨后冷补(非回收) 37  堵漏气 41  刷洗不良*/
 				            AND PMAX.PROCEDUREID IN (20, 22, 23, 37, 41)
 				            LEFT JOIN TP_PM_DEFECT D ON D.PRODUCTIONDATAID = PD.PRODUCTIONDATAID 
 				            AND D.DEFECTID = 92 
 				            AND D.VALUEFLAG = '1'
-				            INNER JOIN TP_PC_GROUTINGLINE GL ON GL.GROUTINGLINEID = PD.GROUTINGLINEID 
-			            WHERE
-                           PD.VALUEFLAG = '1'
-                           AND PD.PROCEDUREID = @PROCEDUREID@
-                           AND PD.CHECKBATCHNO = 1
-                           AND PD.CREATETIME >= @DATEBEGIN@
-                           AND PD.CREATETIME < @DATEEND@
-                           AND (PD.KILNID = @KILNID@ OR @KILNID@ IS NULL)
-                           -- AND (PD.GOODSCODE = @GOODSCODE@ OR @GOODSCODE@ IS NULL)
-                           --AND (INSTR((@GOODSCODE@),PD.GOODSCODE)>0 OR @GOODSCODE@ IS NULL)
-                            AND PD.GOODSCODE IN({goodsCodes})
-                           AND GL.BUILDINGNO {BUILDINGNO}
+				            INNER JOIN TP_PM_PRODUCTIONDATA PDD ON PDD.PRODUCTIONDATAID = PD.PRODUCTIONDATAID 		       
+                            
 			            GROUP BY
-				            PD.PRODUCTIONDATAID,
-				            PD.GOODSLEVELTYPEID,
-				            PD.GOODSID,
-				            PD.REWORKPROCEDUREID 
+				            PD.BARCODE,
+				            PDD.GOODSLEVELTYPEID,
+				            PDD.GOODSID,
+				            PDD.REWORKPROCEDUREID     
                             UNION ALL
                             SELECT
 					            TO_CHAR(PD.PRODUCTIONDATAID),