コード例 #1
0
        public String print(String[] datosArray)
        {
            string etiqueta      = System.IO.Directory.GetCurrentDirectory() + @"\zpl\etiqueta.zpl";
            string tempoEtiqueta = System.IO.Directory.GetCurrentDirectory() + @"\zpl\tempoEtiqueta.zpl";
            var    lines         = File.ReadAllLines(etiqueta);
            string salida        = "";

            foreach (var line in lines)
            {
                salida += line;
            }

            String tipos = "";

            if (datosArray[8] == "5")
            {
                tipos = "x";
            }
            else
            {
                tipos = datosArray[8];
            }

            String qrcode = "{" +
                            "\"lt\":\"" + datosArray[0] + "\"," +
                            "\"mt\":\"" + datosArray[5] + "\"," +
                            "\"pr\":\"" + datosArray[2] + "\"," +
                            "\"cr\":\"" + datosArray[1] + "\"," +
                            "\"f\":\"" + datosArray[6] + "\"," +
                            "\"ev\":\"" + datosArray[7] + "\"," +
                            "\"jl\":\"" + datosArray[3] + "\"," +
                            "\"an\":\"" + datosArray[4] + "\"," +
                            "\"rz\":\"" + tipos + "\"," +
                            "\"ct\":\"" + datosArray[9] + "\"" +
                            "}";

            salida = salida.Replace("[lote]", datosArray[0]);
            salida = salida.Replace("[correlativo]", datosArray[1]);
            salida = salida.Replace("[porcion]", datosArray[2]);
            salida = salida.Replace("[juliana]", datosArray[3]);
            salida = salida.Replace("[anno]", datosArray[4]);
            salida = salida.Replace("[qrCode]", qrcode);

            try
            {
                if (File.Exists(tempoEtiqueta))
                {
                    File.Delete(tempoEtiqueta);
                }

                using (FileStream fs = File.Create(tempoEtiqueta))
                {
                    if (salida != null)
                    {
                        Byte[] info = new UTF8Encoding(true).GetBytes(salida);
                        fs.Write(info, 0, info.Length);
                        fs.Dispose();
                        fs.Close();
                    }
                    else
                    {
                        Console.WriteLine("Debe ingresar ZPL.");
                    }
                }

                PrintDialog     dlgSettings = new PrintDialog();
                PrinterSettings ps          = new PrinterSettings();

                RawPrinterHelper.SendFileToPrinter(ps.PrinterName, tempoEtiqueta);
            }

            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            return(salida);
        }
コード例 #2
0
        public string print(int correlativoEtiq)
        {
            //application startuppath ejemplo en wpf
            string etiqueta      = System.IO.Directory.GetCurrentDirectory() + @"\zpl\etiqueta.zpl";
            string tempoEtiqueta = System.IO.Directory.GetCurrentDirectory() + @"\zpl\tempoEtiqueta.zpl";
            var    lines         = File.ReadAllLines(etiqueta);
            string salida        = "";

            foreach (var line in lines)
            {
                salida += line;
            }
            crearCodQr();

            String qrcode = "{" +
                            "\"lt\":\"" + txtLote.Text + "\"," +
                            "\"mt\":\"" + cbxMaterial.SelectedValue + "\"," +
                            "\"pr\":\"" + txtPorcion.Text + "\"," +
                            "\"cr\":\"" + correlativoEtiq + "\"," +
                            "\"f\":\"" + fechaPicker.SelectedDate.Value.ToString("dd-MM-yyyy") + "\"," +
                            "\"ev\":\"" + cbxEnvase.SelectedValue + "\"," +
                            //"\"almacen\":\"" + cbxAlmacen.Text + "\"," +
                            "\"jl\":\"" + lblJuliano.Content.ToString() + "\"," +
                            "\"an\":\"" + lblAño.Content.ToString() + "\"," +
                            "\"rz\": 0," +
                            "\"ct\":\"" + cantToneladas.Value.ToString() + "\"" +
                            "}";

            //string qrcode = "" + txtLote.Text + "-" + txtPorcion.Text + "-" + correlativoEtiq.ToString() + "-" + lblJuliano.Content + "-" + lblAño.Content + "-" + (cbxMaterial.SelectedIndex + 1).ToString() + "-" + (cbxEnvase.SelectedIndex + 1).ToString() + "-" + (cbxAlmacen.SelectedIndex + 1).ToString() + "";

            salida = salida.Replace("[lote]", txtLote.Text);
            salida = salida.Replace("[correlativo]", correlativoEtiq.ToString().PadLeft(3, '0'));
            salida = salida.Replace("[porcion]", txtPorcion.Text.PadLeft(2, '0'));
            salida = salida.Replace("[juliana]", lblJuliano.Content.ToString());
            salida = salida.Replace("[anno]", lblAño.Content.ToString());
            salida = salida.Replace("[qrCode]", qrcode);

            try
            {
                if (File.Exists(tempoEtiqueta))
                {
                    File.Delete(tempoEtiqueta);
                }

                using (FileStream fs = File.Create(tempoEtiqueta))
                {
                    if (salida != null)
                    {
                        Byte[] info = new UTF8Encoding(true).GetBytes(salida);
                        fs.Write(info, 0, info.Length);
                        fs.Dispose();
                        fs.Close();
                    }
                    else
                    {
                        Console.WriteLine("Debe ingresar ZPL.");
                    }
                }

                PrintDialog     dlgSettings = new PrintDialog();
                PrinterSettings ps          = new PrinterSettings();

                RawPrinterHelper.SendFileToPrinter(ps.PrinterName, tempoEtiqueta);
            }

            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            return(salida);
        }