|
|
@@ -172,37 +172,41 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
" AND (@BUILDINGNO@ IS NULL OR instr(gl.BUILDINGNO , @BUILDINGNO@) > 0) " +
|
|
|
" AND (@HIGHPRESSUREFLAG@ IS NULL OR instr(gl.HIGHPRESSUREFLAG , @HIGHPRESSUREFLAG@) > 0)" +
|
|
|
" AND (@goodstypecode@ IS NULL OR instr(gt.goodstypecode,@goodstypecode@) = 1)";
|
|
|
-
|
|
|
// 产品编码条件修正 fenglinyong modify 2022-05-10
|
|
|
if (!string.IsNullOrWhiteSpace(context.Request["goodscode"] + ""))
|
|
|
{
|
|
|
sqlStr += " and instr(p.goodscode,@GOODSCODE@) > 0 \n";
|
|
|
sqlPara.Add(new CDAParameter("GOODSCODE", context.Request["goodscode"]));
|
|
|
}
|
|
|
-
|
|
|
- sqlStr += " group by p.goodsid\n" +
|
|
|
- " UNION ALL\n" +
|
|
|
- " select p.goodsid\n" +
|
|
|
- " ,0 AS OUTflag\n" +
|
|
|
- " ,0 b_out_num\n" +
|
|
|
- " ,nvl(sum(case when p.goodsleveltypeid in(6,7) and p.isrefire='0' then 1 else 0 end), 0) b_bad_num -- 本烧不合格数\n" +
|
|
|
- " ,0 c_out_num\n" +
|
|
|
- " ,nvl(sum(case when p.goodsleveltypeid in(6,7)and p.isrefire='6' then 1 else 0 end), 0) c_bad_num -- 重烧不合格数\n" +
|
|
|
- " from tp_pm_productiondata p\n" +
|
|
|
- " INNER JOIN tp_mst_goods g ON p.goodsid = g.goodsid\n" +
|
|
|
- " LEFT JOIN TP_MST_GOODSTYPE GT ON g.GOODSTYPEID=GT.GOODSTYPEID\n" +
|
|
|
- " LEFT JOIN TP_PC_GROUTINGLINE gl on gl.GROUTINGLINEID=p.GROUTINGLINEID\n" +
|
|
|
- " where p.accountid = @accountid@\n" +
|
|
|
- " AND P.VALUEFLAG = 1\n" +
|
|
|
- " and p.modeltype IN (-1, -4, -5)\n" +
|
|
|
- " and p.CHECKBATCHNO = 1\n" +
|
|
|
- " and length(p.kilncarbatchno) > 0\n" +
|
|
|
- " and p.createtime >= @datebegin@\n" +
|
|
|
- " and p.createtime < @dateend@\n"+
|
|
|
- " AND (@BUILDINGNO@ IS NULL OR instr(gl.BUILDINGNO , @BUILDINGNO@) > 0) " +
|
|
|
- " AND (@HIGHPRESSUREFLAG@ IS NULL OR instr(gl.HIGHPRESSUREFLAG , @HIGHPRESSUREFLAG@) > 0)" +
|
|
|
- " AND (@goodstypecode@ IS NULL OR instr(gt.goodstypecode,@goodstypecode@) = 1)";
|
|
|
-
|
|
|
+ sqlStr += @" GROUP BY p.goodsid
|
|
|
+ UNION ALL
|
|
|
+ select p.goodsid
|
|
|
+ ,0 AS OUTflag
|
|
|
+ ,0 b_out_num
|
|
|
+ ,nvl(sum(case when p.goodsleveltypeid in(6,7) and p.isrefire='0' then 1 else 0 end), 0) b_bad_num -- 本烧不合格数
|
|
|
+ ,0 c_out_num
|
|
|
+ ,nvl(sum(case when p.goodsleveltypeid in(6,7)and p.isrefire='6' then 1 else 0 end), 0) c_bad_num -- 重烧不合格数
|
|
|
+ from (
|
|
|
+ select distinct p.goodsleveltypeid
|
|
|
+ ,p.barcode
|
|
|
+ ,p.goodsid
|
|
|
+ ,p.ISREFIRE
|
|
|
+ from tp_pm_productiondata p
|
|
|
+ inner join tp_pm_groutingdailydetail gdd on gdd.groutingdailydetailid = p.groutingdailydetailid
|
|
|
+ LEFT JOIN TP_PC_GROUTINGLINE gl on gl.GROUTINGLINEID=p.GROUTINGLINEID
|
|
|
+ INNER JOIN TP_PM_DEFECT dfc on dfc.productiondataid=p.productiondataid
|
|
|
+ INNER JOIN tp_mst_goods g ON p.goodsid = g.goodsid
|
|
|
+ LEFT JOIN TP_MST_GOODSTYPE GT ON g.GOODSTYPEID=GT.GOODSTYPEID
|
|
|
+ where p.accountid = @accountid@
|
|
|
+ AND P.VALUEFLAG = 1
|
|
|
+ and p.modeltype IN (-1, -4, -5)
|
|
|
+ and p.CHECKBATCHNO = 1
|
|
|
+ and length(p.kilncarbatchno) > 0
|
|
|
+ and p.createtime >= @datebegin@
|
|
|
+ and p.createtime < @dateend@
|
|
|
+ AND (@BUILDINGNO@ IS NULL OR instr(gl.BUILDINGNO , @BUILDINGNO@) > 0)
|
|
|
+ AND (@HIGHPRESSUREFLAG@ IS NULL OR instr(gl.HIGHPRESSUREFLAG , @HIGHPRESSUREFLAG@) > 0)
|
|
|
+ AND (@goodstypecode@ IS NULL OR instr(gt.goodstypecode,@goodstypecode@) = 1) ";
|
|
|
// 产品编码条件修正 fenglinyong modify 2022-05-10
|
|
|
if (!string.IsNullOrWhiteSpace(context.Request["goodscode"] + ""))
|
|
|
{
|
|
|
@@ -210,51 +214,10 @@ public class rpt : IHttpHandler, IReadOnlySessionState
|
|
|
sqlPara.Add(new CDAParameter("GOODSCODE", context.Request["goodscode"]));
|
|
|
}
|
|
|
|
|
|
- sqlStr += " group by p.goodsid ) pp group by pp.goodsid) ppp\n" +
|
|
|
+ sqlStr += " )P GROUP BY p.goodsid ) pp group by pp.goodsid) ppp\n" +
|
|
|
" inner join tp_mst_goods g\n" +
|
|
|
" on g.goodsid = ppp.goodsid\n" +
|
|
|
" order by g.goodscode";
|
|
|
-
|
|
|
- //读取报表数据
|
|
|
- // string sqlStr = @"
|
|
|
- //SELECT
|
|
|
- // g.goodscode 产品编码,
|
|
|
- // pp.b_out_num 本烧出窑数,
|
|
|
- // ( pp.b_out_num - pp.b_bad_num ) 本烧合格数,
|
|
|
- // ( pp.c_out_num - pp.c_bad_num ) 重烧合格数,
|
|
|
- // decode(pp.b_out_num,0,to_number( 0 ),round( ( pp.b_out_num - pp.b_bad_num + pp.c_out_num - pp.c_bad_num ) / pp.b_out_num, 4 ) ) *100 ||'%' 综合合格率
|
|
|
- //FROM
|
|
|
- // (
|
|
|
- // SELECT
|
|
|
- // p.goodsid,
|
|
|
- // nvl(sum( CASE WHEN p.procedureid IN ( 11, 104 ) AND p.isrefire = '0' THEN 1 ELSE 0 END ),0 ) b_out_num,
|
|
|
- // nvl(sum( CASE WHEN p.procedureid IN ( 12, 105 ) AND p.isrefire = '0' THEN 1 ELSE 0 END ),0 ) b_bad_num,
|
|
|
- // nvl(sum( CASE WHEN p.procedureid IN ( 58, 104 ) AND p.isrefire = '6' THEN 1 ELSE 0 END ),0 ) c_out_num,
|
|
|
- // nvl(sum( CASE WHEN p.procedureid IN ( 59, 105 ) AND p.isrefire = '6' THEN 1 ELSE 0 END ),0 ) c_bad_num
|
|
|
- // FROM
|
|
|
- // tp_pm_productiondata p
|
|
|
- // INNER JOIN tp_mst_goods g ON p.goodsid = g.goodsid
|
|
|
- // LEFT JOIN TP_MST_GOODSTYPE GT ON g.GOODSTYPEID=GT.GOODSTYPEID
|
|
|
- // LEFT JOIN TP_PC_GROUTINGLINE gl on gl.GROUTINGLINEID=p.GROUTINGLINEID
|
|
|
- // WHERE
|
|
|
- // p.valueflag = '1'
|
|
|
- // AND p.accountid = @accountid@
|
|
|
- // AND (p.procedureid IN ( 11, 58, 104 ) OR ( p.procedureid IN ( 12, 59, 105 ) AND p.goodsleveltypeid IN ( 6, 7 ) ) )
|
|
|
- // AND p.createtime >= @datebegin@ AND p.createtime < @dateend@
|
|
|
- // AND (@BUILDINGNO@ IS NULL OR instr(gl.BUILDINGNO , @BUILDINGNO@) > 0)
|
|
|
- // AND (@HIGHPRESSUREFLAG@ IS NULL OR instr(gl.HIGHPRESSUREFLAG , @HIGHPRESSUREFLAG@) > 0)
|
|
|
- // AND (@goodstypecode@ IS NULL OR instr(gt.goodstypecode,@goodstypecode@) = 1)
|
|
|
- // ";
|
|
|
-
|
|
|
- // if (!string.IsNullOrWhiteSpace(context.Request["goodscode"] + ""))
|
|
|
- // {
|
|
|
- // sqlStr += " and instr(p.goodscode,@GOODSCODE@) > 0 \n";
|
|
|
- // sqlPara.Add(new CDAParameter("GOODSCODE", context.Request["goodscode"]));
|
|
|
- // }
|
|
|
- // sqlStr += " group by p.goodsid) pp\n" +
|
|
|
- // " inner join tp_mst_goods g\n" +
|
|
|
- // " on g.goodsid = pp.goodsid\n" +
|
|
|
- // " order by g.goodscode";
|
|
|
sqlPara.Add(new CDAParameter("BUILDINGNO", context.Request["workshopcodeMaster"].ToString()));
|
|
|
sqlPara.Add(new CDAParameter("HIGHPRESSUREFLAG",context.Request["HIGHPRESSUREFLAG"]));
|
|
|
sqlPara.Add(new CDAParameter("goodstypecode", context.Request["goodstypecode"].ToString()));
|