/// <summary> /// 打印操作 /// </summary> /// <param name="operation"></param> public void PrintDialog(string operation) { //当修改原数据是要进行保存后才能去打印 if (biSave.Enabled == true) { MessageBox.Show("在原数据上进行修改时请先保存后再进行打印!!!"); } var xtreport = new XtraReport(); // _btApp = new BarTender.Application(); //判断当前打印模版路径是否存在 var temPath = _cTempletFileName; //_cTempletFileName; //Application.StartupPath + @"\Label\" + _cTempletFileName; if (!File.Exists(temPath)) { MessageBox.Show(@"当前路径下的打印模版文件不存在!", @"异常", MessageBoxButtons.OK, MessageBoxIcon.Warning); xtreport.ShowDesigner(); return; } xtreport.LoadLayout(temPath); xtreport.PrinterName = _cPrinter; xtreport.PrintingSystem.StartPrint += PrintingSystem_StartPrint; xtreport.RequestParameters = false; xtreport.ShowPrintStatusDialog = false; xtreport.ShowPrintMarginsWarning = false; //模板赋值 DllWorkPrintLabel.SetParametersValue(xtreport, "cSerialNumber", lblTitleMain.lblcSerialNumber.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cBarCode", "R*" + _FitemId + "*L*" + txtcLotNo.Text + "*S*" + lblTitleMain.lblcSerialNumber.Text + ";" + dtpcDefine2.Value.ToShortDateString()); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvCode", txtcInvCode.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvName", utecInvName.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "dDate", dtpdDate.Value.ToShortDateString()); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvStd", txtcInvStd.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cFullName", txtcFullName.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cVendor", txtcVendor.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cLotNo", txtcLotNo.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "iQuantity", uneiQuantity.Value); DllWorkPrintLabel.SetParametersValue(xtreport, "cMemo", txtcMemo.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cDefine1", txtcDefine1.Text); if (dtpdDate.Checked) { DllWorkPrintLabel.SetParametersValue(xtreport, "cVendorDate", dtpdDate.Value); } //模板赋值 switch (operation) { case "print": xtreport.Print(); break; case "design": xtreport.ShowDesigner(); break; case "preview": xtreport.ShowPreview(); break; } }
public void PrintDialog(string operation) { var xtreport = new XtraReport(); // _btApp = new BarTender.Application(); //判断当前打印模版路径是否存在 var temPath = _cTempletFileName; //_cTempletFileName; //Application.StartupPath + @"\Label\" + _cTempletFileName; if (!File.Exists(temPath)) { MessageBox.Show(@"当前路径下的打印模版文件不存在!", @"异常", MessageBoxButtons.OK, MessageBoxIcon.Warning); xtreport.ShowDesigner(); return; } xtreport.LoadLayout(temPath); xtreport.PrinterName = _cPrinter; xtreport.RequestParameters = false; xtreport.ShowPrintStatusDialog = false; xtreport.ShowPrintMarginsWarning = false; //模板赋值 DllWorkPrintLabel.SetParametersValue(xtreport, "cSerialNumber", lblTitleMain.lblcSerialNumber.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cBarCode", "P*" + _FitemId + "*L*" + txtFBatchNo.Text + "*S*"); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvCode", txtcInvCode.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvName", utecInvName.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvStd", txtcInvStd.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cFullName", txtcFullName.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "iQuantity", uneiQuantity.Value); DllWorkPrintLabel.SetParametersValue(xtreport, "cMemo", txtcMemo.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "dDate", dtpdDate.Value.ToShortDateString()); DllWorkPrintLabel.SetParametersValue(xtreport, "cOrderNumber", txtcOrderNumber.Text); xtreport.DataSource = GetPrintData(); //模板赋值 switch (operation) { case "print": xtreport.Print(); break; case "design": xtreport.ShowDesigner(); break; case "preview": xtreport.ShowPreview(); break; } }
public void PrintDialogRm(string operation, Infragistics.Win.UltraWinGrid.UltraGridRow uRow, DataTable dt) { var xtreport = new XtraReport(); // _btApp = new BarTender.Application(); //判断当前打印模版路径是否存在 //var _RmcTempletFileName = Application.StartupPath + @"\Label\班次制令单.repx"; var temPath = _RmcTempletFileName; //_cTempletFileName; //Application.StartupPath + @"\Label\" + _cTempletFileName; if (!File.Exists(temPath)) { MessageBox.Show(@"当前路径下的打印模版文件不存在!", @"异常", MessageBoxButtons.OK, MessageBoxIcon.Warning); xtreport.ShowDesigner(); return; } xtreport.LoadLayout(temPath); xtreport.PrinterName = _cPrinter; xtreport.RequestParameters = false; xtreport.ShowPrintStatusDialog = false; xtreport.ShowPrintMarginsWarning = false; var cFitemID = uRow.Cells["cFitemID"].Value.ToString(); var cLotNo = uRow.Cells["FBatchNo"].Value.ToString(); var cDefine2 = dt.Rows[0]["cDefine2"].ToString(); var cSerialNumber = dt.Rows[0]["cSerialNumber"].ToString(); var cInvCode = dt.Rows[0]["cInvCode"].ToString(); var cInvName = dt.Rows[0]["cInvName"].ToString(); var dDate = dt.Rows[0]["dDate"].ToString(); var cInvStd = dt.Rows[0]["cInvStd"].ToString(); var cFullName = dt.Rows[0]["cFullName"].ToString(); var iQuantity = uRow.Cells["iQuantity"].Value.ToString(); var cMemo = dt.Rows[0]["cMemo"].ToString(); var cDefine1 = dt.Rows[0]["cDefine1"].ToString(); //模板赋值 DllWorkPrintLabel.SetParametersValue(xtreport, "cSerialNumber", lblTitleMain.lblcSerialNumber.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cBarCode", "R*" + cFitemID + "*L*" + cLotNo + "*S*" + cSerialNumber + ";" + cDefine2); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvCode", cInvCode); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvName", cInvName); DllWorkPrintLabel.SetParametersValue(xtreport, "dDate", dDate); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvStd", cInvStd); DllWorkPrintLabel.SetParametersValue(xtreport, "cFullName", txtcFullName.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cVendor", cFullName); DllWorkPrintLabel.SetParametersValue(xtreport, "cLotNo", cLotNo); DllWorkPrintLabel.SetParametersValue(xtreport, "iQuantity", iQuantity); DllWorkPrintLabel.SetParametersValue(xtreport, "cMemo", cMemo); DllWorkPrintLabel.SetParametersValue(xtreport, "cDefine1", cDefine1); if (dtpdDate.Checked) { DllWorkPrintLabel.SetParametersValue(xtreport, "cVendorDate", dtpdDate.Value); } //模板赋值 switch (operation) { case "print": xtreport.Print(); break; case "design": xtreport.ShowDesigner(); break; case "preview": xtreport.ShowPreview(); break; } }
public void PrintDialog(string operation) { var xtreport = new XtraReport(); // _btApp = new BarTender.Application(); //判断当前打印模版路径是否存在 var _cTempletFileName = Application.StartupPath + @"\Label\班次制令单.repx"; var temPath = _cTempletFileName; //Application.StartupPath + @"\Label\" + _cTempletFileName; if (!File.Exists(temPath)) { MessageBox.Show(@"当前路径下的打印模版文件不存在!", @"异常", MessageBoxButtons.OK, MessageBoxIcon.Warning); xtreport.ShowDesigner(); return; } xtreport.LoadLayout(temPath); xtreport.PrinterName = _cPrinter; xtreport.RequestParameters = false; xtreport.ShowPrintStatusDialog = false; xtreport.ShowPrintMarginsWarning = false; //模板赋值 DllWorkPrintLabel.SetParametersValue(xtreport, "cSerialNumber", lblTitleMain.lblcSerialNumber.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvCode", txtcInvCode.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvName", utecInvName.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cInvStd", txtcInvStd.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cFullName", txtcFullName.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "cOrderNuber", txtcOrderNumber.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "FBatchNo", txtFBatchNo.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "iQuantity", uneiQuantity.Value); DllWorkPrintLabel.SetParametersValue(xtreport, "cDepartment", txtcDept.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "dDate", dtpdDate.Value.ToShortDateString()); DllWorkPrintLabel.SetParametersValue(xtreport, "cMemo", txtcMemo.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "批次", txtcMemo.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "库位", txtcMemo.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "库存", txtcMemo.Text); DllWorkPrintLabel.SetParametersValue(xtreport, "发货数", txtcMemo.Text); //xtreport.DataSource = dataInventory.BomDetail; DataSet ds = new DataSet(); using (var con = new SqlConnection(BaseStructure.WmsCon)) { using (var cmd = new SqlCommand { CommandType = CommandType.StoredProcedure, Connection = con }) { cmd.CommandText = "proc_Bomdetail"; cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@BomID", bomID); using (SqlDataAdapter dataAdapter = new SqlDataAdapter(cmd)) { dataAdapter.Fill(ds); } cmd.Parameters.Clear(); } } int count = 0; if (!int.TryParse(uneiQuantity.Value.ToString(), out count)) { count = 0; } DataTable dt = null; if (ds != null && ds.Tables[0].Rows.Count > 0) { dt = ds.Tables[0].Clone(); dt.Columns.Add("发货数", typeof(int)); //DataTable dt = ds.Tables[0]; var dtE = ds.Tables[0].AsEnumerable(); foreach (DataRow dr in GetBomDetail()) { var iquantity = Convert.ToDecimal(dr["iQuantity"]) * count; var drs = dtE.Where(w => w.Field <string>("cInvCode") == dr["cInvCode"].ToString()).OrderBy(o => o.Field <string>("批次")).ToList(); //DataRow[] drs = dtE.Select(" cInvCode = '"+dr["cInvCode"].ToString()+"'").OrderBy(""); foreach (DataRow dr1 in drs) { if (iquantity >= 0) { var kc = Convert.ToDecimal(dr1["库存"]); var fhs = kc > iquantity ? iquantity : kc; //假如库存大于发货数,直接当前库位发货,如果小于发货数,当前库位发完当前数,并到下一个库位发剩余数量 iquantity = kc >= iquantity ? -1 : iquantity - kc; DataRow drNew = dt.NewRow(); drNew["AutoID"] = dr1["AutoID"]; drNew["BomID"] = dr1["BomID"]; drNew["cInvCode"] = dr1["cInvCode"]; drNew["cInvName"] = dr1["cInvName"]; drNew["iQuantity"] = dr1["iQuantity"]; drNew["cUnitID"] = dr1["cUnitID"]; drNew["cUnitName"] = dr1["cUnitName"]; drNew["cInvStd"] = dr1["cInvStd"]; drNew["cFullName"] = dr1["cFullName"]; drNew["cMemo"] = dr1["cMemo"]; drNew["dAddTime"] = dr1["dAddTime"]; drNew["cFitemID"] = dr1["cFitemID"]; drNew["批次"] = dr1["批次"]; drNew["库位"] = dr1["库位"]; drNew["库存"] = dr1["库存"]; drNew["发货数"] = fhs; dt.Rows.Add(drNew); } } } } xtreport.DataSource = dt; //模板赋值 switch (operation) { case "print": xtreport.Print(); break; case "design": xtreport.ShowDesigner(); break; case "preview": xtreport.ShowPreview(); break; } }