|
|
@@ -27,6 +27,8 @@ namespace UAS_MES.Warehouse
|
|
|
|
|
|
DataTable dta;
|
|
|
|
|
|
+ DataTable dtms;
|
|
|
+
|
|
|
Warehouse_NewPiInOut newpi;
|
|
|
|
|
|
public Warehouse_FinishedProductOut()
|
|
|
@@ -184,11 +186,54 @@ namespace UAS_MES.Warehouse
|
|
|
dh.UpdateByCondition("package", "pa_outno = '" + pi_inoutno.Text + "'", "pa_outboxcode = '" + input.Text + "'");
|
|
|
}
|
|
|
else if (serBtn.Checked) {
|
|
|
- if (dh.getFieldDataByCondition("makeserial", "max(ms_id)ms_id", "ms_sncode='" + input.Text + "'").ToString() == "")
|
|
|
+ string ms_id = dh.getFieldDataByCondition("makeserial", "max(ms_id)ms_id", "ms_sncode='" + input.Text + "'").ToString();
|
|
|
+ if (ms_id == "")
|
|
|
{
|
|
|
OperateResult.AppendText("序列号" + input.Text + "不存在,请重新输入\n", Color.Red, input);
|
|
|
return;
|
|
|
}
|
|
|
+ else
|
|
|
+ {
|
|
|
+ sql.Clear();
|
|
|
+ sql.Append("select ms_status,nvl(ms_downstatus,0)ms_downstatus,ms_outboxcode,nvl(ms_iostatus,0)ms_iostatus,ms_prodcode,ms_salecode from makeserial where ms_id='" + ms_id + "'");
|
|
|
+ dtms = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
|
|
|
+ if (dtms.Rows[0]["ms_status"].ToString() != "2")
|
|
|
+ {
|
|
|
+ OperateResult.AppendText("序列号" + input.Text + "未完工,不允许出货\n", Color.Red, input);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if (dtms.Rows[0]["ms_outboxcode"].ToString() != "")
|
|
|
+ {
|
|
|
+ OperateResult.AppendText("序列号" + input.Text + "有外箱号,不允许单独出货\n", Color.Red, input);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if (dtms.Rows[0]["ms_downstatus"].ToString() != "0")
|
|
|
+ {
|
|
|
+ OperateResult.AppendText("序列号" + input.Text + "处于下地状态,不允许出货\n", Color.Red, input);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if (dtms.Rows[0]["ms_iostatus"].ToString() != "0")
|
|
|
+ {
|
|
|
+
|
|
|
+ OperateResult.AppendText("序列号" + input.Text + "已经被出货单:" + dh.getFieldDataByCondition("makeserial left JOIN prodiomac on pim_mac=ms_sncode", "pim_inoutno", "ms_id='" + ms_id + "' order by pim_indate desc").ToString() + "出货\n", Color.Red, input);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ 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);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else if (dta.Rows[0]["pi_type"].ToString() == "自由出货")
|
|
|
+ {
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -213,7 +258,7 @@ namespace UAS_MES.Warehouse
|
|
|
pib_type = "BOX";
|
|
|
}
|
|
|
sql.Clear();
|
|
|
- sql.Append("insert into prodiomac(pim_id,pim_inoutno,pim_piid,pim_prodcode,pim_mac,pim_indate,pim_inman,pib_type,pim_outboxcode)");
|
|
|
+ sql.Append("insert into prodiomac(pim_id,pim_inoutno,pim_piid,pim_prodcode,pim_mac,pim_indate,pim_inman,pim_type,pim_outboxcode)");
|
|
|
sql.Append("select prodiomac_seq.nextval,'" + pi_inoutno.Text + "','" + pi_id.Text + "',v_prodcode,v_barcode,sysdate,'" + User.UserCode + "','"+ pib_type + "','" + input.Text + "' from mes_package_view where v_outboxcode='" + input.Text + "'");
|
|
|
dh.ExecuteSql(sql.GetString(), "insert");
|
|
|
}
|