Пример #1
0
        private void btInputBomData_Click(object sender, EventArgs e)
        {
            try
            {
                if (iasyncresult1 == null || iasyncresult1.IsCompleted)
                {
                    string         temp = "";//string.Empty;
                    OpenFileDialog ofd  = new OpenFileDialog();
                    ofd.Title  = "选择BOM数据";
                    ofd.Filter = "(*.xls Excel 2003)|*.xls";
                    //ofd.InitialDirectory = "c:\\";
                    DialogResult dlr = ofd.ShowDialog();
                    if (dlr == DialogResult.Yes || dlr == DialogResult.OK)
                    {
                        string filename = ofd.SafeFileName;
                        filename = filename.Split('.')[0];
                        if (filename.Split('-').Length != 2)
                        {
                            throw new Exception("BOM文件名称格式错误,请确认是否为BOM文件..");
                        }
                        DataTable mdt = FrmBLL.ClsReadExcel.getTableForSql(ofd.FileName,
                                                                           string.Format("select 子件号,子件描述,替代组,'{1}'as Bom版本,排序字符串,用量,长文本(位号) from [{0}] where{2} 长文本(位号)<>''",
                                                                                         FrmBLL.ClsReadExcel.GetTableNames(ofd.FileName)[0], filename.Split('-')[1], temp));
                        this.progressBarItem1.Maximum = mdt.Rows.Count;

                        eventrundata  = new delegaterundata(this.RunData);
                        iasyncresult1 = eventrundata.BeginInvoke(mdt, null, null);
                    }
                }
                else
                {
                    MessageBoxEx.Show("程序还在运作中,请稍后....");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Пример #2
0
        private void btcompare_Click(object sender, EventArgs e)
        {
            try
            {
                if ((iasyncresult != null && !iasyncresult.IsCompleted) || iasyncresult1 != null && !iasyncresult1.IsCompleted)
                {
                    MessageBoxEx.Show("程序还在运作中,请稍后....");
                    return;
                }
                this.rtbmsg.Clear();
                if (this.BomDataTable == null || this.BomDataTable.Rows.Count < 1)
                {
                    MessageBoxEx.Show("请先加载BOM数据");
                    return;
                }

                if (this.rbtnPsCom.Checked)
                {//SMT程式料站表与系统料站表比对
                    //判断是否加载SMT料站表
                    if (this.SmtSoftKpList == null || this.SmtSoftKpList.Rows.Count < 1)
                    {
                        MessageBoxEx.Show("请先加载SMT料站表");
                        return;
                    }
                    this.SmtSoftKpListCompareBomData("NO", null, null, null);

                    eventrundata = new delegaterundata(this.CompareSmtKpSfisKp);
                    iasyncresult = eventrundata.BeginInvoke(null, null, null);
                    return;
                }

                if (rbtnBsCom.Checked)
                {
                    //判断是否加载SMT料站表
                    if (this.SmtSoftKpList == null || this.SmtSoftKpList.Rows.Count < 1)
                    {
                        MessageBoxEx.Show("请先加载SMT料站表");
                        return;
                    }
                    this.SmtSoftKpListCompareBomData("NO", null, null, null);
                    RunKpdetalt_New(null, null, null, SmtKpTable);
                }

                if (rbbomsfccom.Checked)
                {
                    //判断是否加载系统料站表
                    if (this.KpDetaltNewTable == null || this.KpDetaltNewTable.Rows.Count < 1)
                    {
                        MessageBoxEx.Show("没有可以进行比较的数据,请先加载系统料站表");
                        return;
                    }
                }

                eventrundata = new delegaterundata(CompareKp);
                iasyncresult = eventrundata.BeginInvoke(KpDetaltNewTable, null, null);
            }
            catch (Exception ex)
            {
                this.ShowMsg(LogMsgType.Error, ex.Message);
            }
        }