示例#1
0
        public Etiqueta(string produto)
        {
            InitializeComponent();
            try
            {
                this.etiquetas.LocalReport.EnableExternalImages = true;
                MySqlDataAdapter da;

                bdProdutos bdProduto = new bdProdutos();
                mConn = new MySqlConnection(connString);
                mConn.Open();
                string       sql = $"SELECT * from Produto where " + produto;
                MySqlCommand cmd = new MySqlCommand(sql, mConn);
                da = new MySqlDataAdapter(cmd);
                da.Fill(bdProduto, bdProduto.Tables[0].TableName);

                ReportDataSource rds = new ReportDataSource("Produtos", bdProduto.Tables[0]);

                this.etiquetas.LocalReport.DataSources.Clear();
                this.etiquetas.LocalReport.DataSources.Add(rds);
                this.etiquetas.LocalReport.Refresh();
                this.etiquetas.SetDisplayMode(DisplayMode.PrintLayout);
                var setup = etiquetas.GetPageSettings();
                setup.Margins = new System.Drawing.Printing.Margins(0, 0, 0, 0);
                etiquetas.SetPageSettings(setup);
                this.etiquetas.RefreshReport();



                MySqlDataReader leitor = cmd.ExecuteReader();

                string codBarra = "";
                while (leitor.Read())
                {
                    codBarra = leitor["codBarra"].ToString();
                }



                ean13             = new Ean13();
                ean13.CountryCode = codBarra;

                ean13.Scale = (float)Convert.ToDecimal(0.5);

                System.Drawing.Bitmap bmp = ean13.CreateBitmap();
                bmp.Save(Application.StartupPath + "\\img.jpg");
                this.etiquetas.LocalReport.EnableExternalImages = true;
                this.etiquetas.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter("Etiqueta", @"File://" + Application.StartupPath + "\\img.jpg"));

                this.etiquetas.LocalReport.DataSources.Clear();
                this.etiquetas.LocalReport.DataSources.Add(rds);

                this.etiquetas.RefreshReport();
            }
            finally
            {
                mConn.Close();
            }
        }
        public ActionResult Barcode(string code)
        {
            var    ean13 = new Ean13(code);
            Bitmap bmp   = ean13.CreateBitmap();

            MemoryStream stream = new MemoryStream();

            bmp.Save(stream, ImageFormat.Png);

            return(File(stream.ToArray(), "image/png"));
        }
示例#3
0
        private void button1_Click(object sender, EventArgs e)
        {
            Ean13 barcode = new Ean13();

            barcode.CountryCode      = "90";
            barcode.ManufacturerCode = r.Next(10000, 99999).ToString();
            Random r2 = new Random();

            barcode.ProductCode   = r2.Next(10000, 99999).ToString();
            barcode.ChecksumDigit = r2.Next(1, 10).ToString();
            pictureBox1.Image     = barcode.CreateBitmap();
        }
示例#4
0
        /// <summary>
        /// Metodo para crear el detalle de la compra para el pdf
        /// </summary>
        /// <returns></returns>
        /// <creo>Leslie González Vázquez</creo>
        /// <fecha creo>31/Mayo/2014</fecha creo>
        /// <modifico></modifico>
        /// <fecha modifico></fecha modifico>
        /// <causa modificacion></motivo modificacion>
        private DataTable Crear_Dt_Productos_Servicios_Detallados(DataTable Dt_Productos_Accesos, Cls_Apl_Principal_Negocio Negocio)
        {
            DataTable Dt_Detallado = new DataTable();
            DataRow   Fila         = null;
            Int32     Cantidad     = 0;
            int       i            = 0;

            String[] Accesos = null;
            String   Acceso  = String.Empty;

            try
            {
                if (Dt_Productos_Accesos != null)
                {
                    if (Dt_Productos_Accesos.Rows.Count > 0)
                    {
                        //creamos las columnas del datatable de detalles para el pdf
                        Dt_Detallado.Columns.Add("NO", typeof(Int32));
                        Dt_Detallado.Columns.Add("NOMBRE", typeof(String));
                        Dt_Detallado.Columns.Add("NO_ACCESO", typeof(String));
                        Dt_Detallado.Columns.Add("LUGAR_VENTA", typeof(String));
                        Dt_Detallado.Columns.Add("COSTO", typeof(String));
                        Dt_Detallado.Columns.Add("PRODUCTO", typeof(String));
                        Dt_Detallado.Columns.Add("CODIGO", typeof(String));
                        Dt_Detallado.Columns.Add("FECHA", typeof(String));
                        Dt_Detallado.Columns.Add("TIPO", typeof(String));
                        Dt_Detallado.Columns.Add("IMAGEN", typeof(Byte[]));
                        Dt_Detallado.Columns.Add("BARCODE", typeof(Byte[]));

                        //RECORREMOS EL DATATABLE PARA MANDAR LOS DETALLES
                        foreach (DataRow Dr in Dt_Productos_Accesos.Rows)
                        {
                            Cantidad = Convert.ToInt32(String.IsNullOrEmpty(Dr["CANTIDAD"].ToString()) ? "0" : Dr["CANTIDAD"]);
                            if (Dr["TIPO"].ToString().Trim().Equals("Producto"))
                            {
                                Accesos = Dr["ACCESOS"].ToString().Split(',');
                            }

                            for (i = 1; i <= Cantidad; i++)
                            {
                                Fila           = Dt_Detallado.NewRow();
                                Fila["NO"]     = i;
                                Fila["NOMBRE"] = Negocio.P_Nombre;
                                if (Dr["TIPO"].ToString().Trim().Equals("Producto"))
                                {
                                    Fila["NO_ACCESO"] = "*" + Accesos[i - 1].ToString().Trim() + "*";
                                }
                                else
                                {
                                    Fila["NO_ACCESO"] = "";
                                }
                                Fila["LUGAR_VENTA"] = "Internet";
                                Fila["COSTO"]       = String.Format("{0:c}", Dr["COSTO"]);
                                Fila["PRODUCTO"]    = Dr["DESCRIPCION"].ToString().Trim();
                                Fila["CODIGO"]      = Dr["CODIGO"].ToString().Trim();
                                Fila["FECHA"]       = String.Format("{0:dd/MMM/yyyy}", Negocio.P_Fecha_Inicio_Vigencia);
                                Fila["TIPO"]        = Dr["TIPO"].ToString().Trim();;
                                //Fila["IMAGEN"] = Cls_Metodos_Generales.Convertir_Imagen_Bytes(@Server.MapPath(ConfigurationManager.AppSettings["Imagen_Boleto"]), 200, 300);
                                string Ruta_Archivo = Obtener_Directorio_Compartido();
                                Ruta_Archivo  += "/Imagenes/WEB/Boleto.png";
                                Fila["IMAGEN"] = Cls_Metodos_Generales.Convertir_Imagen_Bytes(Ruta_Archivo, 200, 300);

                                Ean13 Codigo = new Ean13();
                                Codigo.ManufacturerCode = Accesos[i - 1].Trim().Substring(0, 5);
                                Codigo.ProductCode      = Accesos[i - 1].Trim().Substring(5, 5);
                                Codigo.ChecksumDigit    = "0";
                                Codigo.Scale            = 1.8f;
                                System.Drawing.Bitmap bmp = Codigo.CreateBitmap();

                                string Ruta_Codigo = Server.MapPath("~/Codigos/codigo.bmp");
                                bmp.Save(Ruta_Codigo);

                                Fila["BARCODE"] = ConversionImagen(Ruta_Codigo);

                                Dt_Detallado.Rows.Add(Fila);
                            }
                        }
                    }
                }
            }
            catch (Exception Ex)
            {
                throw new Exception("Error al generar la tabla detallada de productos y servicios. Error[" + Ex.Message + "]");
            }

            return(Dt_Detallado);
        }