using NPOI.SS.Formula.Functions; using System; using System.Data; using System.Drawing; using System.Windows.Forms; using UAS_MES_NEW.DataOperate; using UAS_MES_NEW.Entity; using UAS_MES_NEW.PublicMethod; namespace UAS_MES_NEW.Make { public partial class Make_BoxLotBind : Form { DataHelper dh; AutoSizeFormClass asc = new AutoSizeFormClass(); LogStringBuilder sql = new LogStringBuilder(); DataTable dt; public Make_BoxLotBind() { InitializeComponent(); } private void Make_CollectNetCode_Load(object sender, EventArgs e) { asc.controllInitializeSize(this); sncode.Focus(); dh = SystemInf.dh; ma_code.TableName = "make left join product on ma_prodcode=pr_code"; ma_code.SelectField = "ma_code # 工单号,pr_code # 产品编号,pr_detail # 产品名称,ma_craftcode # 途程编号,ma_wccode # 工作中心"; ma_code.FormName = Name; ma_code.SetValueField = new string[] { "ma_code", "pr_code", "pr_detail", "ma_craftcode", "ma_wccode" }; ma_code.Condition = "ma_statuscode='STARTED'"; ma_code.DbChange += Ma_code_DbChange; } DataTable Dbfind; private void Ma_code_DbChange(object sender, EventArgs e) { Dbfind = ma_code.ReturnData; BaseUtil.SetFormValue(this.Controls, Dbfind); //获取工单的其他信息 } private void sncode_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { if (ma_code.Text == "") { OperateResult.AppendText(">>工单号不能为空\n", Color.Red); return; } sql.Clear(); sql.Append("select cd_id from craft left join craftdetail on cd_crid=cr_id where cr_code='" + ma_craftcode.Text + "' "); sql.Append("and cr_prodcode='" + pr_code.Text + "' and nvl(cd_firststep,0)<>0 and cd_stepcode='" + User.CurrentStepCode + "'"); dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select"); if (dt.Rows.Count == 0) { OperateResult.AppendText(">>该岗位资源对应的工序不是当前工单途程中的第一道工序,请切换资源编号\n", Color.Red); return; } string makecode = dh.getFieldDataByCondition("makeserial", "ms_makecode", "ms_boxcode='" + sncode.Text + "'").ToString(); if (makecode != "") { OperateResult.AppendText(">>工装篮已使用到工单" + makecode + "\n", Color.Red); return; } string lotno = DateTime.Now.ToString("yyyyMMddHHmmss"); sql.Clear(); sql.Append("insert into MakeSerial(ms_id,ms_code,ms_sncode,ms_prodcode,ms_indate,ms_wccode"); sql.Append(",ms_craftcode,ms_craftname,ms_nextstepcode,ms_status,ms_makecode,ms_linecode"); sql.Append(",ms_sourcecode,ms_maid,ms_firstsn,ms_salecode,MS_LOTNO,ms_boxcode)select MakeSerial_seq.nextval,BI_PANELID,BI_PANELID,'" + pr_code.Text + "',"); sql.Append("sysdate,'" + ma_wccode.Text + "','" + ma_craftcode.Text + "',ma_craftname,'" + User.CurrentStepCode + "',1,'" + ma_code.Text + "','" + User.UserLineCode + "'"); sql.Append(",'" + User.UserSourceCode + "',ma_id,bi_panelid,ma_salecode,'" + lotno + "','" + sncode.Text + "' from boxinfo,make where BI_BOXNAME='" + boxcode.Text + "' and ma_code='" + ma_code.Text + "'"); dh.ExecuteSql(sql.GetString(), "insert"); OperateResult.AppendText(">>箱号" + boxcode.Text + "绑定工装篮" + sncode.Text + "成功\n", Color.Green); BaseUtil.CleanDGVData(LabelDataGridView); sncode.Text = ""; boxcode.Text = ""; boxcode.Focus(); } } private void Make_CollectNetCode_SizeChanged(object sender, EventArgs e) { asc.controlAutoSize(this); } private void Make_CollectNetCode_Activated(object sender, EventArgs e) { sncode.Focus(); } private void snCollectionBox1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { DataTable dt = (DataTable)dh.ExecuteSql("select BI_ID, BI_GLASSID, BI_PANELID, BI_POSITION, BI_OWNER, BI_BOXNAME, BI_PRODUCTSPECNAME, BI_YULIU, BI_UPDATETIME" + " from boxinfo where bi_boxname='" + boxcode.Text + "'", "select"); if (dt.Rows.Count == 0) { OperateResult.AppendText(">>箱号" + boxcode.Text + "不存在\n", Color.Red); return; } BaseUtil.FillDgvWithDataTable(LabelDataGridView, dt); agsum.Text = dt.Rows.Count.ToString(); sncode.Focus(); } } } }