using ComponentFactory.Krypton.Toolkit; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Windows.Forms; namespace NXWMS.Forms.Base.ChildFrm { public partial class FrmBatchPrint : KryptonForm { public FrmBatchPrint() { InitializeComponent(); } /// /// 模板地址 /// private string _reportFolder = Application.StartupPath + "\\ReportMd\\"; private void btnConfirm_Click(object sender, EventArgs e) { btnConfirm.Enabled = false; try { if (!Regex.IsMatch(ktb_SPalletCode.Text, @"([1-9]\d*(\.\d*[1-9])?)")) { KryptonMessageBox.Show($"托盘条码必须是数字类型!"); return; } DataTable dt = new DataTable(); DataColumn dc = new DataColumn("Ids"); dt.Columns.Add(dc); dc = new DataColumn("PalletCode"); dt.Columns.Add(dc); int ids = 0; for (int i = Convert.ToInt32(ktb_SPalletCode.Text); i < Convert.ToInt32(ktb_SPalletCode.Text) + knud_BatchPalletNum.Value; i++) { for (int j = 0; j < knud_EachPalletNum.Value; j++) { ids++; DataRow dr = dt.NewRow(); dr["Ids"] = ids; dr["PalletCode"] = i; dt.Rows.Add(dr); } } DataSet dts = new DataSet(); dts.Tables.Add(dt); FastReport.Report report = new FastReport.Report(); string filename = _reportFolder + "托盘条码.frx"; report.Load(filename); report.RegisterData(dts); report.Prepare(); report.PrintSettings.ShowDialog = false; report.Print(); report.Clear(); KryptonMessageBox.Show("打印成功!"); } catch (Exception ex) { KryptonMessageBox.Show($"批量打印托盘数据时发生异常:{ex.Message}"); } btnConfirm.Enabled = true; } private void btnCancel_Click(object sender, EventArgs e) { this.Close(); } private void FrmBatchPrint_Load(object sender, EventArgs e) { } } }