private void tdbgEntrega_DoubleClick(object sender, EventArgs e) { try { Cursor = Cursors.WaitCursor; Encrypt objCrypto = new Encrypt(Encrypt.CryptoProvider.Rijndael); objCrypto.Key = AppSettings.Key; objCrypto.IV = AppSettings.IV; DataTable dtVales = new DataTable("Vales"); dtVales.Columns.Add("Comprobante", typeof(string)); dtVales.Columns.Add("Cliente", typeof(string)); dtVales.Columns.Add("Codigo", typeof(string)); dtVales.Columns.Add("Producto", typeof(string)); dtVales.Columns.Add("Peso", typeof(string)); dtVales.Columns.Add("NumVale", typeof(int)); dtVales.Columns.Add("CodBar", typeof(string)); dtVales.Columns.Add("Numeros", typeof(string)); dtVales.Columns.Add("Direccion", typeof(string)); dtVales.Columns.Add("Foto", typeof(Byte[])); string cadena; string NumComprobante = this.tdbgEntrega.Columns["NumComprobante"].Value.ToString(); int NumVale = int.Parse(this.tdbgEntrega.Columns["NumVale"].Value.ToString()); dtDetalle = new DataTable(); dtDetalle = new CL_Vales().getdetalleVales(NumComprobante, NumVale); foreach (DataRow fila in dtDetalle.Rows) { DataRow row = dtVales.NewRow(); row["Comprobante"] = NumComprobante; row["Cliente"] = fila["RazonSocial"].ToString(); row["Producto"] = fila["NomProducto"].ToString().Remove(fila["NomProducto"].ToString().IndexOf("X")); row["Peso"] = string.Concat(string.Format("{0:0.##}", fila["Unidades"]), " KG"); row["NumVale"] = fila["NumVale"]; cadena = objCrypto.CifrarCadena(fila["NumVale"].ToString()); row["CodBar"] = string.Concat("*", fila["NumVale"].ToString().PadLeft(4, '/'), cadena.Substring(0, 7), "*"); row["Numeros"] = fila["NumVale"].ToString().PadLeft(4, '0'); row["Direccion"] = fila["Direccion"]; row["Foto"] = ImageToByteArray((Image)Halley.Presentacion.Properties.Resources.ResourceManager.GetObject(fila["Imagen"].ToString())); dtVales.Rows.Add(row); } ReporteNavideño.RepGeneraVales Obj_RepVale = new ReporteNavideño.RepGeneraVales(); Obj_RepVale.dtDetalleVales = dtVales; Obj_RepVale.ShowDialog(); Cursor = Cursors.Default; } catch (Exception ex) { Cursor = Cursors.Default; MessageBox.Show(ex.Message, "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
private void ListGenerarVales_PrintClick() { try { Cursor = Cursors.WaitCursor; if (ds.Tables[0].Rows.Count != 0) { Encrypt objCrypto = new Encrypt(Encrypt.CryptoProvider.Rijndael); objCrypto.Key = AppSettings.Key; objCrypto.IV = AppSettings.IV; dtDetalle = new DataTable(); dtDetalle = new CL_Vales().getdetalleVales(NumComprobrante, Convert.ToInt32(CboTipoComprobante.SelectedValue)); DataTable dtVales = new DataTable("Vales"); dtVales.Columns.Add("Comprobante", typeof(string)); dtVales.Columns.Add("Cliente", typeof(string)); dtVales.Columns.Add("Codigo", typeof(string)); dtVales.Columns.Add("Producto", typeof(string)); dtVales.Columns.Add("Peso", typeof(string)); dtVales.Columns.Add("NumVale", typeof(int)); dtVales.Columns.Add("CodBar", typeof(string)); dtVales.Columns.Add("Numeros", typeof(string)); dtVales.Columns.Add("Direccion", typeof(string)); dtVales.Columns.Add("Foto", typeof(Byte[])); string cadena; if (dtDetalle.Rows.Count == 0) { int UltimoNumVale = new CL_Vales().getUltimoVale(); foreach (DataRow fila in ds.Tables[1].Rows) { int cant = Convert.ToInt32(fila["Cantidad"]); for (int x = 0; x < cant; x++) { UltimoNumVale++; DataRow row = dtVales.NewRow(); row["Comprobante"] = NumComprobrante; row["Cliente"] = lblCliente.Text; row["Codigo"] = fila["ProductoID"].ToString(); row["Producto"] = fila["NomProducto"].ToString().Remove(fila["NomProducto"].ToString().IndexOf("X")); row["Peso"] = string.Concat(string.Format("{0:0.##}", fila["Unidades"]), " KG"); row["NumVale"] = UltimoNumVale; cadena = objCrypto.CifrarCadena(UltimoNumVale.ToString()); row["CodBar"] = string.Concat("*", UltimoNumVale.ToString().PadLeft(4, '/'), cadena.Substring(0, 7), "*"); row["Numeros"] = UltimoNumVale.ToString().PadLeft(4, '0'); row["Direccion"] = direccion; row["Foto"] = ImageToByteArray((Image)Halley.Presentacion.Properties.Resources.ResourceManager.GetObject(fila["Imagen"].ToString())); dtVales.Rows.Add(row); } //mostrar el inicio y el fin int Inicio; int Fin; DataView DV = new DataView(dtVales, "", "NumVale ASC", DataViewRowState.CurrentRows); Inicio = Convert.ToInt32(DV[0]["NumVale"]); Fin = Convert.ToInt32(DV[DV.Count - 1]["NumVale"]); LblValesEncontrados.Text = "Desde " + Inicio.ToString() + "\r\n" + "Hasta " + Fin.ToString(); } new CL_Vales().Insert(AppSettings.UserID, lblSedeID.Text, dtVales, Convert.ToInt32(CboTipoComprobante.SelectedValue)); } else { //mostrar el inicio y el fin int Inicio; int Fin; DataView DV = new DataView(dtDetalle, "", "NumVale ASC", DataViewRowState.CurrentRows); Inicio = Convert.ToInt32(DV[0]["NumVale"]); Fin = Convert.ToInt32(DV[DV.Count - 1]["NumVale"]); LblValesEncontrados.Text = "Desde " + Inicio.ToString() + "\r\n" + "Hasta " + Fin.ToString(); foreach (DataRow fila in dtDetalle.Rows) { DataRow row = dtVales.NewRow(); row["Comprobante"] = NumComprobrante; row["Cliente"] = fila["RazonSocial"].ToString(); row["Producto"] = fila["NomProducto"].ToString().Remove(fila["NomProducto"].ToString().IndexOf("X")); row["Peso"] = string.Concat(string.Format("{0:0.##}", fila["Unidades"]), " KG"); row["NumVale"] = fila["NumVale"]; cadena = objCrypto.CifrarCadena(fila["NumVale"].ToString()); row["CodBar"] = string.Concat("*", fila["NumVale"].ToString().PadLeft(4, '/'), cadena.Substring(0, 7), "*"); row["Numeros"] = fila["NumVale"].ToString().PadLeft(4, '0'); row["Direccion"] = direccion; row["Foto"] = ImageToByteArray((Image)Halley.Presentacion.Properties.Resources.ResourceManager.GetObject(fila["Imagen"].ToString())); dtVales.Rows.Add(row); } } ReporteNavideño.RepGeneraVales Obj_RepVale = new ReporteNavideño.RepGeneraVales(); Obj_RepVale.dtDetalleVales = dtVales; if (Obj_RepVale.ShowDialog() == DialogResult.OK) { Limpiar(); } } //mostrar el numero de vale Cursor = Cursors.Default; } catch (Exception ex) { Cursor = Cursors.Default; MessageBox.Show(ex.Message, "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Information); } }