using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Windows.Input; namespace BarcodeLib.UI { public partial class Barcodekleber : Form { string connecionstring = string.Empty; public Barcodekleber() { InitializeComponent(); } public Barcodekleber(string connectoinstring) { InitializeComponent(); this.connecionstring = connectoinstring; } private void Barcodekleber_Load(object sender, EventArgs e) { DirectoryInfo d = new DirectoryInfo(Application.StartupPath+ @"\bck"); //Assuming Test is your Folder FileInfo[] Files = d.GetFiles("*.frx"); //Getting Text files string str = ""; foreach (FileInfo file in Files) { this.cbxreportname.Items.Add(file.Name); } this.cbxreportname.SelectedIndex = 0; } private void button2_Click(object sender, EventArgs e) { DataTable dt = new DataTable(); DataSet dataSet = new DataSet(); dt.Columns.Add("barcode"); dt.Columns.Add("barcodetext"); for (int i = 0; i < Convert.ToInt32(textBox1.Text); i++) { DataRow dr = dt.NewRow(); string s; s = i.ToString(); while (s.Length < 8) { s = "0" + s; }; dr[0] = Bar25I(s); dr[1] = s; dt.Rows.Add(dr); } dataSet.Tables.Add(dt); dt.TableName = "Barcodes"; FastReport.Report report = new FastReport.Report(); if (System.IO.File.Exists(Application.StartupPath + @"\bck\" + cbxreportname.Text) == true) { report.Load(Application.StartupPath + @"\bck\" + cbxreportname.Text); } else { } report.RegisterData(dataSet); report.GetDataSource("Barcodes").Enabled = true; report.Preview = previewControl1; report.Prepare(); report.Design(); } private void button1_Click(object sender, EventArgs e) { DataTable dt = new DataTable(); DataSet dataSet = new DataSet(); dt.Columns.Add("barcode"); dt.Columns.Add("barcodetext"); for (int i = 0; i < Convert.ToInt32(textBox1.Text); i++) { DataRow dr = dt.NewRow(); Database.DB dB = new Database.DB(connecionstring); string key = dB.get_dbkey("barcodeetikette"); string s; s = key; while (s.Length < 5) { s = "0" + s; }; s = DateTime.Now.Year.ToString()+s; s = s+Helper.DivFnkt.modulo10(s).ToString(); dr[0] = Bar25I(s); dr[1] = s; dt.Rows.Add(dr); } dataSet.Tables.Add(dt); dt.TableName = "Barcodes"; FastReport.Report report = new FastReport.Report(); if (System.IO.File.Exists(Application.StartupPath + @"\bck\" + cbxreportname.Text) == true) { report.Load(Application.StartupPath + @"\bck\" + cbxreportname.Text); } else { } report.RegisterData(dataSet); report.GetDataSource("Barcodes").Enabled = true; report.Preview = previewControl1; report.Prepare(); report.ShowPrepared(); } public bool IsNumeric(string value) { return value.All(char.IsNumber); } public string Bar25I(string BarTextIn) { string Bar25IRet = default; string BarTextOut = ""; string TempString = ""; long CharValue = 0; string barcodeout = ""; // Initialize input and output strings BarTextOut = ""; BarTextIn = BarTextIn.Trim(); // Throw away non-numeric data TempString = ""; for (int II = 1, loopTo = BarTextIn.Length; II <= loopTo; II++) { if (IsNumeric(BarTextIn.Substring(II - 1, 1))) { TempString = TempString + BarTextIn.Substring(II - 1, 1); } } // If not an even number of digits, add a leading 0 if (TempString.Length % 2 == 1) { TempString = "0" + TempString; } // Break digit pairs up and convert to characters- build output string for (int II = 1, loopTo1 = TempString.Length; II <= loopTo1; II += 2) { // Break string into pairs of digits and get value CharValue = Convert.ToInt32(TempString.Substring(II - 1, 2)); // translate value to ASCII and save in BarTextOut if (CharValue < 90) { BarTextOut = BarTextOut + (char)(CharValue + 33); } else { BarTextOut = BarTextOut + (char)(CharValue + 71); } } // Build ouput string, trailing space for Windows rasterization bug barcodeout = "{" + BarTextOut + "} "; // Return the string Bar25IRet = barcodeout; return Bar25IRet; } } }