protected internal virtual void btnReport_Click(object sender, EventArgs e) { if (dgvDataShow.Rows.Count - 1 > 0) { Main.PGB pgb = new Main.PGB(); pgb.progressBar1.Style = ProgressBarStyle.Marquee; pgb.progressBar1.MarqueeAnimationSpeed = 2000; pgb.Text = "啟動報表"; pgb.label1.Text = "報表啟動中.....請稍候"; pgb.Show(); Application.DoEvents(); DataSet insert = new DataSet(); srcDataMergeDefect(); insert.Tables.Add(mergeData); insert.WriteXmlSchema("TEMP.xml"); try { DevelopmentProductDailyReportLF report = new DevelopmentProductDailyReportLF(); report.SetDataSource(insert); rtpDevelopmentProduct rptdlp = new rtpDevelopmentProduct(); rptdlp.crystalReportViewer1.ReportSource = report; rptdlp.Show(); pgb.Dispose(); } catch (Exception ex) { sysMessage.SystemEx(ex.Message); } } else { sysMessage.NoData(); } }
private void btnReport_Click(object sender, EventArgs e) { if (dgvData.Rows.Count - 1 > 0) { Main.PGB pgb = new Main.PGB(); pgb.progressBar1.Style = ProgressBarStyle.Marquee; pgb.progressBar1.MarqueeAnimationSpeed = 2000; pgb.Text = "啟動報表"; pgb.label1.Text = "報表啟動中.....請稍候"; pgb.Show(); Application.DoEvents(); if (srcData.Columns.Contains("ID")) { srcData.Columns.Remove("ID"); } DataSet insert = new DataSet(); insert.Tables.Add(srcData); insert.WriteXmlSchema("TEMP.xml"); try { Application.DoEvents(); VCutProductCheckReport report = new VCutProductCheckReport(); report.SetDataSource(insert); rtpVCutProductCheckRefer rvpcr = new rtpVCutProductCheckRefer(); rvpcr.crystalReportViewer1.ReportSource = report; rvpcr.Show(); insert.Tables.Remove(srcData); insert.Dispose(); pgb.Dispose(); } catch (Exception ex) { sysMessage.SystemEx(ex.Message); } } else { sysMessage.NoData(); } }
private void btnMath3MonthReport_Click(object sender, EventArgs e) { DateTime minDate = DateTime.Now; DateTime maxDate = DateTime.Today.AddMonths(3); TimeSpan spanDay = maxDate - minDate; int Day = spanDay.Days; List<string> Date = new List<string>(); List<double> SPnl = new List<double>(); Main.PGB pgb = new Main.PGB(); pgb.progressBar1.Minimum = 0; pgb.progressBar1.Maximum = Day + 1; pgb.progressBar1.Step = 1; pgb.Show(); for (int i = 0; i <= Day; i++) { DataTable result = GetSQL.Get3MonthSPOdOrderSub(minDate.ToString("yyyy-MM-dd 00:00:00"), minDate.ToString("yyyy-MM-dd 23:59:59")); if (result.Rows.Count != 0) { Date.Add(minDate.ToString("yyyy-MM-dd")); SPnl.Add(ewMath.SPnlSumByReport(result)); } minDate = minDate.AddDays(1); pgb.progressBar1.Value++; Application.DoEvents(); if (pgb.progressBar1.Value == Day + 1) { pgb.label1.Text = "報表啟動中,請稍候....."; } } DataTable mergeResult = new DataTable(); mergeResult.Columns.Add("Date"); mergeResult.Columns.Add("SPnl"); for (int i = 0; i < Date.Count; i++) { DataRow row = mergeResult.NewRow(); row["Date"] = Date[i]; row["SPnl"] = SPnl[i]; mergeResult.Rows.Add(row); } DataSet insert = new DataSet(); insert.Tables.Add(mergeResult); insert.WriteXmlSchema("TEMP.xml"); try { SPnl3Month report = new SPnl3Month(); report.SetDataSource(insert); rptSPnl3Month rptsp3m = new rptSPnl3Month(); rptsp3m.crystalReportViewer1.ReportSource = report; rptsp3m.Show(); pgb.Dispose(); } catch (Exception ex) { sysMessage.SystemEx(ex.Message); } }
private void btnCompare_Click(object sender, EventArgs e) { chkPartNum.Checked = false; rtbPartNum.Text = ""; if (dgvFMEdIssue.Rows.Count - 1 <= 0) { sysMessage.NoSourceData("製令明細表"); } else if (txtProcCode.Text == "") { sysMessage.NoInputProcCode(); } else { DataTable source = new DataTable(); DataTable result = new DataTable(); Main.PGB pgb = new Main.PGB(); pgb.Text = "底片比對"; pgb.label1.Text = "正在比對底片中,請稍候..."; pgb.progressBar1.Value = 0; pgb.progressBar1.Maximum = dgvFMEdIssue.Rows.Count - 1; pgb.progressBar1.Step = 1; pgb.Show(); //先將製令明細表的料號及版序一併存入陣列 string[] strList = new string[dgvFMEdIssue.Rows.Count - 1]; for (int p=0;p<dgvFMEdIssue.Rows.Count-1;p++) { strList[p] = dgvFMEdIssue.Rows[p].Cells["PartNum"].Value.ToString().Trim() + dgvFMEdIssue.Rows[p].Cells["Revision"].Value.ToString().Trim(); pgb.progressBar1.Value++; Application.DoEvents(); } //過濾掉重覆料號並塞入另一個新的陣列 string[] strResult = strList.Distinct().ToArray(); //將陣列進行排序 Array.Sort(strResult); //將過濾掉重覆料號的陣列指定給ComboBox當來源 cboPartNum.DataSource = strResult; cboPartNum.SelectedIndex = -1; cboPartNum.DropDownStyle = ComboBoxStyle.DropDownList; pgb.progressBar1.Maximum += strResult.Count(); for (int i = 0; i < strResult.Count(); i++) { source = GetSQL.GetAwtablemainOnFMEdIssue(strResult[i].ToString().Substring(0,11), strResult[i].ToString().Substring(11, 4), txtProcCode.Text); if (source.Rows.Count == 0) { rtbPartNum.Text += strResult[i].ToString().Substring(0, 11) + " " + strResult[i].ToString().Substring(11, 4) + "\r\n"; } else { //若目的地資料表尚無任何資料,則先將來源資料表的格式COPY至目的地資料表 if (result.Rows.Count == 0) { result = source.Clone(); } for (int x = 0; x < source.Rows.Count; x++) { result.ImportRow(source.Rows[x]); } } pgb.progressBar1.Value++; Application.DoEvents(); } pgb.Dispose(); dgvNegative.DataSource = result; bindPartNum.DataSource = result; dgvNegativeFormat(); lblNegativeCount.Text = "共 " + Convert.ToInt32(dgvNegative.Rows.Count - 1) + " 筆"; } }
private void btnAudit_Click(object sender, EventArgs e) { if (dgvDataShow.Rows.Count - 1 <= 0) { sysMessage.NoSourceData("沒有提供比對的底片借出紀錄"); } else { rtbNoPartNum.Clear(); DateTime nowDate = DateTime.Now; DateTime lastDate = nowDate.AddMonths(-1); DataTable Temp = new DataTable(); DataTable NoValue = new DataTable(); MistakeResult = SourceData.Copy(); Main.PGB pgb = new Main.PGB(); pgb.Text = "底片比對"; pgb.label1.Text = "底片比對中.....請稍候....."; pgb.Show(); Application.DoEvents(); pgb.progressBar1.Style = ProgressBarStyle.Marquee; pgb.progressBar1.MarqueeAnimationSpeed = 2000; //建立NoValue欄位 NoValue.Columns.Add("PartNum", typeof(string)); NoValue.Columns.Add("Revision", typeof(string)); for (int i = 0; i < SourceData.Rows.Count; i++) { Temp = GetSQL.GetArtWork(SourceData.Rows[i]["料號"].ToString().Trim(), SourceData.Rows[i]["版序"].ToString().Substring(0,3), lastDate.ToString("yyyy-MM-dd 00:00:00"), nowDate.ToString("yyyy-MM-dd 23:59:59")); if (Temp.Rows.Count <= 0) { NoValue.Rows.Add(SourceData.Rows[i]["料號"].ToString().Trim(), SourceData.Rows[i]["版序"].ToString().Trim()); MistakeResult.Rows[i].Delete();//Change DataTable.Rows Status to Delete } } MistakeResult.AcceptChanges(); //將查無鑽孔漲縮值的底片借出資料,過濾掉重覆料號、版序 DataTable distNoValue = NoValue.DefaultView.ToTable(true, "PartNum","Revision"); distNoValue.DefaultView.Sort = "PartNum asc"; for (int i = 0; i < distNoValue.Rows.Count; i++) { pgb.progressBar1.Value++; rtbNoPartNum.Text += distNoValue.DefaultView[i]["PartNum"].ToString() + " " + distNoValue.DefaultView[i]["Revision"].ToString() + "\r\n"; } //將查有鑽孔漲縮值的底片借出資料篩選掉不需檢查的工具別 for (int i = 0; i < MistakeResult.Rows.Count; i++) { int result = 0;//用來計算不符合工具別時,要加總的值 for (int x = 0; x < ewString.strTool.Count(); x++) { if (MistakeResult.Rows[i]["工具"].ToString().Contains(ewString.strTool[x])) { break; } else { result++; } } if (result == 5) { MistakeResult.Rows[i].Delete(); } } MistakeResult.AcceptChanges(); for (int i = 0; i < MistakeResult.Rows.Count; i++) { double drillX, drillY = 0; DataTable temp = GetSQL.GetArtWork(MistakeResult.Rows[i]["料號"].ToString().Trim(), MistakeResult.Rows[i]["版序"].ToString().Substring(0,3), lastDate.ToString("yyyy-MM-dd 00:00:00"), nowDate.ToString("yyyy-MM-dd 23:59:59")); drillX = Convert.ToDouble(temp.Rows[0][1]); drillY = Convert.ToDouble(temp.Rows[0][2]); if (ewCheck.CheckNegative(MistakeResult.Rows[i]["料號"].ToString().Trim(), MistakeResult.Rows[i]["版序"].ToString().Trim(), MistakeResult.Rows[i]["工具"].ToString().Trim(), Convert.ToDouble(MistakeResult.Rows[i]["X"]), Convert.ToDouble(MistakeResult.Rows[i]["Y"]), drillX, drillY)) { MistakeResult.Rows[i].Delete(); } } MistakeResult.AcceptChanges(); pgb.Dispose(); dgvMistakeShow.DataSource = MistakeResult; dgvMistakeShowFormat(); } }