|
|
@@ -27,6 +27,10 @@ namespace UAS_MES.Warehouse
|
|
|
|
|
|
DataTable dta;
|
|
|
|
|
|
+ DataTable dtpi;
|
|
|
+
|
|
|
+ DataTable dtform;
|
|
|
+
|
|
|
DataTable dtms;
|
|
|
|
|
|
Warehouse_NewPiInOut newpi;
|
|
|
@@ -66,20 +70,20 @@ namespace UAS_MES.Warehouse
|
|
|
{
|
|
|
sql.Clear();
|
|
|
sql.Append("select pi_id,pi_title,pi_inoutno,pi_type from prodinout where pi_inoutno = '" + pi_inoutno.Text + "'");
|
|
|
- dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
|
|
|
+ dtpi = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
|
|
|
if (dt.Rows.Count > 0)
|
|
|
{
|
|
|
- BaseUtil.SetFormValue(this.Controls, dt);
|
|
|
+ BaseUtil.SetFormValue(this.Controls, dtpi);
|
|
|
}
|
|
|
sql.Clear();
|
|
|
sql.Append("select nvl((select sum(pd_outqty) from prodiodetail where pd_piid=''),0)outqty,nvl((select count(1)cn from prodiomac where pim_inoutno=pd_inoutno),0) getqty , ");
|
|
|
sql.Append("nvl((select sum(CASE WHEN pim_type='BOX' then 1 else nvl((select pa_packageqty from package where pa_outboxcode=pim_outboxcode),0)end) from prodiomac ");
|
|
|
sql.Append("where pim_inoutno='" + pi_inoutno.Text + "' and NVL(PIM_OUTBOXCODE,' ')<>' ' AND pim_type in('BOX','PALLET')),0) boxqty from prodiodetail where pd_piid='" + pi_id.Text + "' ");
|
|
|
- dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
|
|
|
- if (dt.Rows.Count > 0)
|
|
|
+ dtform = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
|
|
|
+ if (dtform.Rows.Count > 0)
|
|
|
{
|
|
|
- BaseUtil.SetFormValue(this.Controls, dt);
|
|
|
- ungetqty.Text = (int.Parse(dt.Rows[0]["outqty"].ToString()) - int.Parse(dt.Rows[0]["getqty"].ToString())).ToString();
|
|
|
+ BaseUtil.SetFormValue(this.Controls, dtform);
|
|
|
+ ungetqty.Text = (int.Parse(dtform.Rows[0]["outqty"].ToString()) - int.Parse(dtform.Rows[0]["getqty"].ToString())).ToString();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -221,20 +225,45 @@ namespace UAS_MES.Warehouse
|
|
|
if (dta.Rows[0]["pi_type"].ToString() == "订单出库")
|
|
|
{
|
|
|
sql.Clear();
|
|
|
- sql.Append("select cn,outqty,outqty-nvl((select count(1) from prodiomac where pim_inoutno='"+ pi_inoutno.Text + "' and pim_prodcode='"+ dtms.Rows[0]["ms_prodcode"].ToString() + "'),0)ungetqty from");
|
|
|
- sql.Append("(select sum(pd_outqty)outqty ,count(1)cn from prodiodetail where pd_piid='"+pi_id.Text+"' and pd_ordercode='"+ dtms.Rows[0]["ms_salecode"].ToString() + "' and pd_prodcode='" + dtms.Rows[0]["ms_prodcode"].ToString() + "')");
|
|
|
- dt = (DataTable)dh.ExecuteSql(sql.GetString(),"select");
|
|
|
- if (dt.Rows[0]["cn"].ToString() == "0") {
|
|
|
- OperateResult.AppendText("序列号" + input.Text + "所属产品:"+ dtms.Rows[0]["ms_prodcode"].ToString() + ",合同号:"+ dtms.Rows[0]["ms_salecode"].ToString() + "\n", Color.Red, input);
|
|
|
+ sql.Append("select cn,outqty,outqty-nvl((select count(1) from prodiomac where pim_inoutno='" + pi_inoutno.Text + "' and pim_prodcode='" + dtms.Rows[0]["ms_prodcode"].ToString() + "'),0)ungetqty from");
|
|
|
+ sql.Append("(select nvl(sum(pd_outqty),0) outqty ,count(1)cn from prodiodetail where pd_piid='" + pi_id.Text + "' and pd_ordercode='" + dtms.Rows[0]["ms_salecode"].ToString() + "' and pd_prodcode='" + dtms.Rows[0]["ms_prodcode"].ToString() + "')");
|
|
|
+ dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
|
|
|
+ if (dt.Rows[0]["cn"].ToString() == "0")
|
|
|
+ {
|
|
|
+ OperateResult.AppendText("序列号" + input.Text + "所属产品:" + dtms.Rows[0]["ms_prodcode"].ToString() + ",合同号:" + dtms.Rows[0]["ms_salecode"].ToString() + ",不在出货单" + pi_inoutno.Text + "中\n", Color.Red, input);
|
|
|
return;
|
|
|
}
|
|
|
+ else if (int.Parse(dt.Rows[0]["cn"].ToString()) > 0 && int.Parse(dt.Rows[0]["ungetqty"].ToString()) <= 0)
|
|
|
+ {
|
|
|
+ OperateResult.AppendText("出货单产品" + dtms.Rows[0]["ms_prodcode"].ToString() + "+合同" + dtms.Rows[0]["ms_salecode"].ToString() + ",已经完成出货采集\n", Color.Red, input);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ updatesn(ms_id);
|
|
|
}
|
|
|
else if (dta.Rows[0]["pi_type"].ToString() == "自由出货")
|
|
|
{
|
|
|
-
|
|
|
+ updatesn(ms_id);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ LoadFormData();
|
|
|
+ LoadGridData();
|
|
|
+ if (dta.Rows[0]["pi_type"].ToString() == "订单出库")
|
|
|
+ {
|
|
|
+ if (int.Parse(dtform.Rows[0]["outqty"].ToString()) > int.Parse(dtform.Rows[0]["getqty"].ToString()))
|
|
|
+ {
|
|
|
+ dh.UpdateByCondition("prodinout", "pi_pdastatus='备货中'", "pi_inoutno='" + pi_inoutno.Text + "'");
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ dh.UpdateByCondition("prodinout", "pi_pdastatus='已备货'", "pi_inoutno='" + pi_inoutno.Text + "'");
|
|
|
+ OperateResult.AppendText("出货单"+ pi_inoutno.Text + "已完成备货\n", Color.Black);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else if (dta.Rows[0]["pi_type"].ToString() == "自由出货")
|
|
|
+ {
|
|
|
+ dh.UpdateByCondition("prodinout", "pi_pdastatus='备货中'", "pi_inoutno='" + pi_inoutno.Text + "'");
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
else
|
|
|
@@ -245,6 +274,16 @@ namespace UAS_MES.Warehouse
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private void updatesn(string ms_id)
|
|
|
+ {
|
|
|
+ //更新操作
|
|
|
+ sql.Clear();
|
|
|
+ sql.Append("insert into prodiomac(pim_id,pim_inoutno,pim_piid,pim_prodcode,pim_mac,pim_indate,pim_inman,pib_type)");
|
|
|
+ sql.Append("values(prodiomac_seq.nextval,'" + pi_inoutno.Text + "','" + pi_id.Text + "','" + dtms.Rows[0]["ms_prodcode"].ToString() + "','" + input.Text + "',sysdate,'" + User.UserCode + "','')");
|
|
|
+ dh.ExecuteSql(sql.GetString(), "insert");
|
|
|
+ dh.UpdateByCondition("makeserial", "ms_iostatus=2", " ms_id='" + ms_id + "'");
|
|
|
+ }
|
|
|
+
|
|
|
//插入prodiomac表
|
|
|
private void insertprodiomac(string type)
|
|
|
{
|