using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using Stone.Common; using Stone.Entity; using Stone.WinBiz.JISAdmin; namespace Stone.WinModule.JISAdmin.ReOrder { public partial class frmEdiPrintReOrderASN : Stone.WinModule.frmBase { public frmEdiPrintReOrderASN() { InitializeComponent(); } private void frmEdiPrintReOrderASN_Load(object sender, EventArgs e) { this.cbFields.SelectedIndex = 0; this.timer1.Interval = Convert.ToInt32(MyAppconfig.ReadValue("EDI显示刷新时间")) * 1000; this.timer1.Enabled = true; } private void btnQuery_Click(object sender, EventArgs e) { try { string Fields = this.cbFields.SelectedItem.ToString(); string value = this.txtKey.Text.Trim(); string d1 = MyDateTime.Format(this.dateTimePicker1.Value, MyDateTimeType.Date) + " 00:00:00"; string d2 = MyDateTime.Format(this.dateTimePicker2.Value, MyDateTimeType.Date) + " 23:59:59"; string strWhere = "[IsPrintPackingList]=1 and [IsPrintASN]={0} and [SwetTime]>='{1}' and [SwetTime]<='{2}' {3}"; object[] obj = new object[10]; obj[0] = rbPrint1.Checked ? "1" : "0"; obj[1] = d1; obj[2] = d2; obj[3] = " and " + Fields + "='" + value + "'"; if (value == "") obj[3] = ""; strWhere = string.Format(strWhere, obj); Entity_t_JIS_Seq5000_ReOrder t_JIS_Seq5000_ReOrder = new Entity_t_JIS_Seq5000_ReOrder(); this.dgrdView1.DataSource = t_JIS_Seq5000_ReOrder.GetData("", strWhere, "[SwetTime], [SequenceNumber] asc").Tables[0]; MyGridViewStyle.SetDataGridRowNumber(this.dgrdView1); MyGridViewStyle.SetDataGridMenuCommon(this.dgrdView1); MyGridViewStyle.GetGridViewState(this.dgrdView1, "ReOrderASN"); this.dgrdView1.Columns["ID"].Visible = false; this.dgrdView1.Columns["SequenceNumber"].HeaderText = "EINSTEIN Seq"; this.lblState.Text = "记录:" + this.dgrdView1.Rows.Count.ToString(); } catch (Exception ex) { this.lblShow.Text = ex.Message; } } private void btnPrintHand_Click(object sender, EventArgs e) { this.btnPrintHand.Enabled = false; this.Update(); try { if (!MyMessageBox.ShowQuestion("请按Sift或Ctrl键选择多条要打印的记录,是否要打印?")) return; if (this.dgrdView1.SelectedRows.Count == 0) throw new Exception("请选择需要打印的多条记录!"); string ids = ""; for (int i = 0; i < this.dgrdView1.SelectedRows.Count; i++) { ids += this.dgrdView1.SelectedRows[i].Cells["ID"].Value.ToString() + ","; } if (ids.Length > 0) ids = ids.Substring(0, ids.Length - 1); string strWhere = "[ID] in (" + ids + ")"; this.lblOutput.Text = "正在打印和上传..."; this.Update(); Entity_t_JIS_Seq5000_ReOrder t_JIS_Seq5000_ReOrder = new Entity_t_JIS_Seq5000_ReOrder(); DataSet dsData = t_JIS_Seq5000_ReOrder.GetData("", strWhere, "[SwetTime], [SequenceNumber] ASC"); if (dsData.Tables[0].Select("[IsPrintASN]=1").Length > 0) throw new Exception("选择的记录中有已经打印的数据,请刷新数据!"); dsData.Tables[0].TableName = "BillHead"; string AsnNumber = F_JIS5000_Print_ReOrder.GetASNNumber(); t_JIS_Seq5000_ReOrder.Edit("[IsPrintASN]=1, [AsnNumber]='" + AsnNumber + "'", strWhere); F_JIS5000_Print_ReOrder.PrintASNList(dsData, AsnNumber); dsData.Tables[0].TableName = "ReOrder"; F_JIS5000_Print.WriteASN_ReOrder(dsData, AsnNumber); btnQuery_Click(new object(), new EventArgs()); } catch (Exception ex) { MyMessageBox.ShowErrorMessage(ex.Message); } finally { this.lblOutput.Text = ""; this.btnPrintHand.Enabled = true; Application.DoEvents(); } } private void btnRePrint_Click(object sender, EventArgs e) { try { if (!MyMessageBox.ShowQuestion("是否要补打ASN?")) return; if (this.dgrdView1.SelectedRows.Count == 0) throw new Exception("请选择要补打的记录!"); string AsnNumber = this.dgrdView1.SelectedRows[0].Cells["AsnNumber"].Value.ToString(); if (AsnNumber == "") throw new Exception("只有已经打印过的才能补打!"); Entity_t_JIS_Seq5000_ReOrder t_JIS_Seq5000_ReOrder = new Entity_t_JIS_Seq5000_ReOrder(); DataSet dsData = t_JIS_Seq5000_ReOrder.GetData("", "[AsnNumber]='" + AsnNumber + "'", "[SwetTime], [SequenceNumber] ASC"); if (dsData.Tables[0].Select("[IsPrintASN]=0").Length > 0) throw new Exception("没有可打印的数据"); dsData.Tables[0].TableName = "BillHead"; F_JIS5000_Print_ReOrder.PrintASNList(dsData, AsnNumber); btnQuery_Click(new object(), new EventArgs()); } catch (Exception ex) { MyMessageBox.ShowErrorMessage(ex.Message); } } private void btnSet_Click(object sender, EventArgs e) { MyGridViewStyle.Show(this.dgrdView1, "ReOrderASN"); } private void btnOutPut_Click(object sender, EventArgs e) { #region old /* try { //Stone.Common.MyExport.ShowExport(this.dgrdView1); if (this.dgrdView1.DataSource == null) throw new Exception("请先查询出数据"); if (this.dgrdView1.SelectedRows.Count == 0) throw new Exception("请选择要导出的数据"); DataTable dtData = ((DataTable)this.dgrdView1.DataSource).Copy(); dtData.Columns.Add("qty", typeof(Int32)); if (dtData.Rows.Count == 0) throw new Exception("请先查询出数据"); if (!MyMessageBox.ShowQuestion("导出的信息中包含所有小件的信息,导出的时间比较长,是否要导出?")) return; //DataTable dtOut = dtData.Clone(); DataTable dtOut = new DataTable(); dtOut.Columns.Add("CheckSequence"); dtOut.Columns.Add("SwetTime"); dtOut.Columns.Add("SequenceNumber"); dtOut.Columns.Add("Variant"); dtOut.Columns.Add("OrderNumber"); dtOut.Columns.Add("PartsFamily"); dtOut.Columns.Add("SupplyGroup"); dtOut.Columns.Add("AsnNumber"); dtOut.Columns.Add("PackingListNumber"); dtOut.Columns.Add("partNumber"); dtOut.Columns.Add("PartName"); dtOut.Columns.Add("PartColor"); dtOut.Columns.Add("qty", typeof(System.Int32)); Entity_v_JIS_Tod v_JIS_Tod = new Entity_v_JIS_Tod(); int i = 0; foreach (DataRow drData in dtData.Rows) { i++; this.lblOutput.Text = "正在导出第 " + i.ToString() + " 条主零件"; this.Update(); string OrderNumber = drData["OrderNumber"].ToString(); string PartsFamily = drData["PartsFamily"].ToString(); string SupplyGroup = drData["SupplyGroup"].ToString(); string strWhere = "[OrderNumber]='" + OrderNumber + "' and [PartsFamily]='" + PartsFamily + "' and [SupplyGroup]='" + SupplyGroup + "'"; DataSet dsTod = v_JIS_Tod.GetData("", strWhere, "partNumber asc"); foreach (DataRow drEdi_daily_package_temp in dsTod.Tables[0].Rows) { DataRow drNew = dtOut.NewRow(); drNew["CheckSequence"] = drData["CheckSequence"].ToString(); drNew["SwetTime"] = drData["SwetTime"].ToString(); drNew["SequenceNumber"] = drData["SequenceNumber"].ToString(); drNew["Variant"] = drData["Variant"].ToString(); drNew["OrderNumber"] = drEdi_daily_package_temp["OrderNumber"].ToString(); drNew["PartsFamily"] = drEdi_daily_package_temp["PartsFamily"].ToString(); drNew["SupplyGroup"] = drEdi_daily_package_temp["SupplyGroup"].ToString(); drNew["AsnNumber"] = drData["AsnNumber"].ToString(); drNew["PackingListNumber"] = drData["PackingListNumber"].ToString(); drNew["partNumber"] = drEdi_daily_package_temp["partNumber"].ToString(); drNew["PartName"] = drEdi_daily_package_temp["description"].ToString(); drNew["PartColor"] = drEdi_daily_package_temp["ColorName"].ToString(); drNew["qty"] = drEdi_daily_package_temp["quantity"].ToString(); dtOut.Rows.Add(drNew); } } this.lblOutput.Text = ""; object o_sum = dtOut.Compute("sum(qty)", "1=1"); if (o_sum.ToString() == "") o_sum = 0; frmEdiPrintASNOut frm = new frmEdiPrintASNOut(); frm.dgrdView1.DataSource = dtOut; frm.label1.Text = "记录数:" + dtOut.Rows.Count.ToString() + " 数量合计:" + o_sum.ToString(); frm.ShowDialog(); } catch (Exception ex) { MyMessageBox.ShowInfoMessage(ex.Message); } */ #endregion try { frmEdiPrintASNOutNew frm = new frmEdiPrintASNOutNew(); frm.Text = "导出ASN"; frm.t_base = new Entity_t_JIS_ASN_ReOrder(); frm.ShowDialog(); frm.Dispose(); } catch (Exception ex) { MyMessageBox.ShowErrorMessage(ex.Message); } } private void chkAuto_CheckedChanged(object sender, EventArgs e) { AutoUpdate(); } private void timer1_Tick(object sender, EventArgs e) { AutoUpdate(); } private void AutoUpdate() { if (chkAuto.Checked) { this.lblShow.Text = "自动刷新中..."; this.Update(); btnQuery_Click(new object(), new EventArgs()); this.lblShow.Text = DateTime.Now.ToString() + " 自动刷新完成,下次刷新 " + Convert.ToString(this.timer1.Interval / 1000) + " 秒以后"; } else { this.lblShow.Text = "自动刷新关闭"; } } private void frmEdiPrintReOrderASN_FormClosing(object sender, FormClosingEventArgs e) { try { MyGridViewStyle.SaveGridViewState(this.dgrdView1, "ReOrderASN"); } catch { } } } }