protected void btnModificarc_Click(object sender, EventArgs e) { try { Factura factura = new Factura { IdFactura = Convert.ToInt32(txtCodigo1.Text), Codigo = Convert.ToInt32(txtCodigo.Text), Nombre = txtNombre.Text, Total = Convert.ToInt32(txtTotal.Text), Descuento = Convert.ToInt32(txtDescuento.Text), Comentarios = txtComentarios.Text, }; IFactura mat = new MFactura(); mat.ActualizarFactura(factura); MostarMensaje("Materia Modificada"); divMantenimiento.Visible = false; txtCodigo.Enabled = true; txtCodigo.Text = string.Empty; txtCodigo.Focus(); } catch (Exception) { MostarMensajeError("Ocurrio un error"); } }
public static DataTable InsertarFactura(int idCliente, string nombreVendedor) { var obj = new MFactura() { IdCliente = idCliente, NombreVendedor = nombreVendedor }; return(obj.InsertarFactura()); }
public static int InsertarDetalleFactura(int idFactura, int idProducto, double precio, int cantidad) { var obj = new MFactura() { IdFactura = idFactura, IdProducto = idProducto, Precio = precio, Cantidad = cantidad }; return(obj.InsertarDetalleFactura()); }
protected void btnInsertar_Click(object sender, EventArgs e) { try { Factura factura = new Factura { Codigo = Convert.ToInt32(txtCodigo.Text), Nombre = txtNombre.Text, Total = Convert.ToInt32(txtTotal.Text), Descuento = Convert.ToInt32(txtDescuento.Text), Comentarios = txtComentarios.Text, }; IFactura mat = new MFactura(); mat.InsertarFactura(factura); MostarMensaje("Factura Insertada"); } catch (Exception) { MostarMensajeError("Ocurrio un error"); } }
public static bool Editar(int id, MFactura objeto, facturacion.Vistas.VVentas form) { MySqlConnection SqlCon = new MySqlConnection(Conexion.Cn); try { SqlCon.Open(); string query001 = "UPDATE " + table + " SET idVenta=@idVenta,idCodigo=@idCodigo,codControl=@codControl,QR=@QR,numFactura=@numFactura,fecEmision=@fecEmision where id=@id;"; Console.WriteLine(query001); MySqlCommand command = new MySqlCommand(query001, SqlCon); command.Parameters.AddWithValue("@id", id); command.Parameters.AddWithValue("@idVenta", objeto.idVenta); command.Parameters.AddWithValue("@idCodigo", objeto.idCodigo); command.Parameters.AddWithValue("@codControl", objeto.codControl); command.Parameters.AddWithValue("@QR", objeto.QR); command.Parameters.AddWithValue("@numFactura", objeto.numFactura); command.Parameters.AddWithValue("@fecEmision", objeto.fecEmision); if (command.ExecuteNonQuery() == 1) { ToastNotification.Show(form, "Factura Editada Correctamente", global::facturacion.Properties.Resources.ok, 3000, (eToastGlowColor.Green), (eToastPosition.TopRight)); SqlCon.Close(); return(true); } else { ToastNotification.Show(form, "La factura no pudo ser Editado", global::facturacion.Properties.Resources.error, 3000, (eToastGlowColor.Red), (eToastPosition.TopRight)); SqlCon.Close(); return(false); } } catch (MySqlException e) { ToastNotification.Show(form, e.Message, global::facturacion.Properties.Resources.error, 3000, (eToastGlowColor.Red), (eToastPosition.TopLeft)); return(false); } }
internal static bool Insertar(MFactura objeto, facturacion.Vistas.VListaVentas form) { MySqlConnection SqlCon = new MySqlConnection(Conexion.Cn); try { SqlCon.Open(); string query001 = "INSERT INTO " + table + "(idVenta,idCodigo,codControl,QR,numFactura,fecEmision) Values(@idVenta,@idCodigo,@codControl,@QR,@numFactura,@fecEmision)"; MySqlCommand command = new MySqlCommand(query001, SqlCon); command.Parameters.AddWithValue("@idVenta", objeto.idVenta); command.Parameters.AddWithValue("@idCodigo", objeto.idCodigo); command.Parameters.AddWithValue("@codControl", objeto.codControl); command.Parameters.AddWithValue("@QR", objeto.QR); command.Parameters.AddWithValue("@numFactura", objeto.numFactura); command.Parameters.AddWithValue("@fecEmision", objeto.fecEmision); if (command.ExecuteNonQuery() == 1) { ToastNotification.Show(form, "Factura Creada Correctamente", global::facturacion.Properties.Resources.ok, 3000, (eToastGlowColor.Green), (eToastPosition.TopRight)); SqlCon.Close(); return(true); } else { ToastNotification.Show(form, "La factura no pudo ser Creada", global::facturacion.Properties.Resources.error, 3000, (eToastGlowColor.Red), (eToastPosition.TopRight)); SqlCon.Close(); return(false); } } catch (MySqlException e) { ToastNotification.Show(form, e.Message, global::facturacion.Properties.Resources.error, 3000, (eToastGlowColor.Red), (eToastPosition.TopLeft)); return(false); } }
private void btn_facturar_Click(object sender, EventArgs e) { if (lista.Rows.Count == 0) { ToastNotification.Show(this, "Añade un producto antes de cobrar.", global::facturacion.Properties.Resources.error, 3000, (eToastGlowColor.Red), (eToastPosition.TopRight)); return; } if (MessageBox.Show("Esta Apunto de Facturar el monto de " + lb_total_importe.Text + ".", "COBRAR PEDIDO", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { aux = CCliente.BuscarCI(cb_ci_nit.Text.ToString()); string ccodigo; if (aux.Rows.Count >= 1 && lista.Rows.Count > 0) { DataRow row_cliente = aux.Rows[0]; Numeracion num = new Numeracion(); MVentas venta = new MVentas(0, int.Parse(row_cliente["id"].ToString()), int.Parse(Datos.Rows[0]["id"].ToString()), DateTime.Now, Double.Parse(lb_total_importe.Text), num.Convertir(lb_total_importe.Text, true), "factura", "cancelado", numero_next); long id_now = CVenta.Insertar(venta, this); if (id_now != -1) { DataTable cla = CCodigo.ultimo(); DataTable fa = CFactura.ultimo(); int id_fac_last = 0; if (fa.Rows.Count != 0) { id_fac_last = int.Parse(fa.Rows[0]["id"].ToString()); } id_fac_last++; string clave = cla.Rows[0]["clave"].ToString(); Hashid.Hashid hashid = new Hashid.Hashid(); string[] f = lb_fecActual.Text.Split('/'); ccodigo = (String)hashid.calcular(cla.Rows[0]["autorizacion"].ToString(), id_fac_last.ToString(), cb_ci_nit.Text.ToString(), f[2] + f[1] + f[0], lb_total_importe.Text, clave); qr_image.Text = lb_nit.Text + "|" + id_fac_last.ToString() + "|" + cla.Rows[0]["autorizacion"].ToString() + "|" + lb_fecActual.Text + "|" + lb_total_importe.Text + "|" + lb_total_importe.Text + "|" + ccodigo + "|" + cb_ci_nit.Text.ToString() + "|0|0|0|0|"; string dir = "/img/qrs/" + ccodigo + ".jpg"; qr_image.Image.Save(@"" + Application.StartupPath + dir, ImageFormat.Jpeg); MFactura fact = new MFactura(0, (int)id_now, int.Parse(cla.Rows[0]["id"].ToString()), ccodigo, dir, id_fac_last.ToString(), DateTime.Now); if (!CFactura.Insertar(fact, this)) { MessageBox.Show("no se pudo crear al factura"); } foreach (DataGridViewRow r in lista.Rows) { string precio_total = r.Cells["total"].Value.ToString(); string cantidad = r.Cells["cantidad"].Value.ToString(); string unitario = r.Cells["precio"].Value.ToString(); string descripcion = r.Cells["descripcion"].Value.ToString(); int id = Convert.ToInt32(r.Cells["id"].Value); MDetalleVenta det = new MDetalleVenta(0, id, double.Parse(cantidad), (int)id_now, Double.Parse(precio_total), descripcion, Double.Parse(unitario)); CDetalleVenta.Insertar(det, this); } try { LocalReport rdlc = new LocalReport(); rdlc.ReportPath = @"..\..\Vistas\Report3.rdlc"; rdlc.ReportEmbeddedResource = "facturacion.Vistas.Report3.rdlc"; rdlc.EnableExternalImages = true; DataTable factura = CFactura.MostrarID(id_now); DataTable venta2 = CVenta.MostrarID(id_now); DataTable infomacion = CEmpresa.Mostrar(); DataTable codigo = CCodigo.ultimoID(int.Parse(factura.Rows[0]["idCodigo"].ToString())); DataTable cliente = CCliente.MostrarID(venta2.Rows[0]["idCliente"].ToString()); DataTable customer = CDetalleVenta.Mostrar((int)id_now); rdlc.DataSources.Add(new ReportDataSource("DataSet1", customer)); ReportParameter[] parameters = new ReportParameter[16]; string path = "file:\\" + Application.StartupPath + infomacion.Rows[0]["logo"]; string pathqr = "file:\\" + Application.StartupPath + factura.Rows[0]["QR"].ToString(); parameters[15] = new ReportParameter("Path", @path, true); parameters[0] = new ReportParameter("PathQr", @pathqr, true); parameters[1] = new ReportParameter("empresa", infomacion.Rows[0]["nombre"].ToString()); parameters[2] = new ReportParameter("propietario", infomacion.Rows[0]["nomPropietario"].ToString()); parameters[3] = new ReportParameter("direccion", infomacion.Rows[0]["direccion"].ToString()); parameters[4] = new ReportParameter("nit", infomacion.Rows[0]["nit"].ToString()); parameters[5] = new ReportParameter("nro", factura.Rows[0]["numFactura"].ToString()); parameters[6] = new ReportParameter("autorizacion", codigo.Rows[0]["autorizacion"].ToString()); parameters[7] = new ReportParameter("telefono", infomacion.Rows[0]["telefono"].ToString()); parameters[8] = new ReportParameter("literal", "Son: " + venta2.Rows[0]["montoLiteral"].ToString()); parameters[9] = new ReportParameter("nombre_cliente", cliente.Rows[0]["nombre"].ToString()); parameters[10] = new ReportParameter("ci", cliente.Rows[0]["ci"].ToString()); parameters[11] = new ReportParameter("fecha", venta2.Rows[0]["fecVenta"].ToString()); parameters[12] = new ReportParameter("total", venta2.Rows[0]["montoTotal"].ToString()); parameters[13] = new ReportParameter("codigo_control", factura.Rows[0]["codControl"].ToString()); parameters[14] = new ReportParameter("fecha_limite", codigo.Rows[0]["fecFinal"].ToString()); rdlc.SetParameters(parameters); Impresor imp = new Impresor(); imp.Imprime(rdlc); LocalReport rdlc2 = new LocalReport(); rdlc2.ReportPath = @"..\..\Vistas\Report1.rdlc"; rdlc2.ReportEmbeddedResource = "facturacion.Vistas.Report1.rdlc"; rdlc2.DataSources.Add(new ReportDataSource("DataSet1", customer)); ReportParameter nombre = new ReportParameter("nombre_cliente", cliente.Rows[0]["nombre"].ToString()); ReportParameter fecha = new ReportParameter("fecha", venta2.Rows[0]["fecVenta"].ToString()); ReportParameter numero = new ReportParameter("numero", numero_next.ToString()); rdlc2.SetParameters(new ReportParameter[] { nombre, fecha, numero }); imp.Imprime(rdlc2); limpiar(); } catch (Exception exp) { ToastNotification.Show(this, exp.Message, global::facturacion.Properties.Resources.Warning_sign, 3000, (eToastGlowColor.Red), (eToastPosition.TopRight)); if (MessageBox.Show("Ha ocurrido un error al imprimir, Desea Volver a imprimir el pedido/factura??", "ERROR AL FACTURAR!!!", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { LocalReport rdlc = new LocalReport(); rdlc.ReportPath = @"..\..\Vistas\Report3.rdlc"; rdlc.ReportEmbeddedResource = "facturacion.Vistas.Report3.rdlc"; rdlc.EnableExternalImages = true; DataTable factura = CFactura.MostrarID(id_now); DataTable venta2 = CVenta.MostrarID(id_now); DataTable infomacion = CEmpresa.Mostrar(); DataTable codigo = CCodigo.ultimoID(int.Parse(factura.Rows[0]["idCodigo"].ToString())); DataTable cliente = CCliente.MostrarID(venta2.Rows[0]["idCliente"].ToString()); DataTable customer = CDetalleVenta.Mostrar((int)id_now); rdlc.DataSources.Add(new ReportDataSource("DataSet1", customer)); ReportParameter[] parameters = new ReportParameter[16]; string path = "file:\\" + Application.StartupPath + infomacion.Rows[0]["logo"]; string pathqr = "file:\\" + Application.StartupPath + factura.Rows[0]["QR"].ToString(); parameters[15] = new ReportParameter("Path", @path, true); parameters[0] = new ReportParameter("PathQr", @pathqr, true); parameters[1] = new ReportParameter("empresa", infomacion.Rows[0]["nombre"].ToString()); parameters[2] = new ReportParameter("propietario", infomacion.Rows[0]["nomPropietario"].ToString()); parameters[3] = new ReportParameter("direccion", infomacion.Rows[0]["direccion"].ToString()); parameters[4] = new ReportParameter("nit", infomacion.Rows[0]["nit"].ToString()); parameters[5] = new ReportParameter("nro", factura.Rows[0]["numFactura"].ToString()); parameters[6] = new ReportParameter("autorizacion", codigo.Rows[0]["autorizacion"].ToString()); parameters[7] = new ReportParameter("telefono", infomacion.Rows[0]["telefono"].ToString()); parameters[8] = new ReportParameter("literal", "Son: " + venta2.Rows[0]["montoLiteral"].ToString()); parameters[9] = new ReportParameter("nombre_cliente", cliente.Rows[0]["nombre"].ToString()); parameters[10] = new ReportParameter("ci", cliente.Rows[0]["ci"].ToString()); parameters[11] = new ReportParameter("fecha", venta2.Rows[0]["fecVenta"].ToString()); parameters[12] = new ReportParameter("total", venta2.Rows[0]["montoTotal"].ToString()); parameters[13] = new ReportParameter("codigo_control", factura.Rows[0]["codControl"].ToString()); parameters[14] = new ReportParameter("fecha_limite", codigo.Rows[0]["fecFinal"].ToString()); rdlc.SetParameters(parameters); Impresor imp = new Impresor(); imp.Imprime(rdlc); LocalReport rdlc2 = new LocalReport(); rdlc2.ReportPath = @"..\..\Vistas\Report1.rdlc"; rdlc2.ReportEmbeddedResource = "facturacion.Vistas.Report1.rdlc"; rdlc2.DataSources.Add(new ReportDataSource("DataSet1", customer)); ReportParameter nombre = new ReportParameter("nombre_cliente", cliente.Rows[0]["nombre"].ToString()); ReportParameter fecha = new ReportParameter("fecha", venta2.Rows[0]["fecVenta"].ToString()); ReportParameter numero = new ReportParameter("numero", numero_next.ToString()); rdlc2.SetParameters(new ReportParameter[] { nombre, fecha, numero }); imp.Imprime(rdlc2); limpiar(); } limpiar(); } numero_next++; //retornar el reporte } } else { MessageBox.Show("El CI/Nit no esta registrado.\n Registre el Nombre y guardelo."); btn_guardar.BackColor = System.Drawing.Color.Blue; btn_guardar.Enabled = true; tb_nombreAp.Text = ""; tb_nombreAp.Enabled = true; tb_nombreAp.Focus(); } } }
private void Guardar() { CedulaCompleta = this.cbCedula.Text + this.txtCiPaciente.Text; try { string Rpta = ""; if (NuevoPaciente == false) { Rpta = MPaciente.Insertar(this.txtNombre.Text, Convert.ToDateTime(dtNacimiento.Text), this.txtSexo.Text, (this.cbCedula.Text + this.txtCiPaciente.Text), txtTelefono.Text, ValorFUR); } else { NuevoPaciente = false; } //Si la respuesta fue OK, fue porque se modificó //o insertó el Trabajador //de forma correcta this.Limpiar(); } catch (Exception ex) { MessageBox.Show(ex.Message + ex.StackTrace); } try { string Rpta2 = ""; IDPacienteActual = MPaciente.CedulaUnica(CedulaCompleta)[0].IdPaciente; //terminar lo siguiente, cuando ya tenga todo lo de orden listo. porque hay que ingresar orden antes, para tener la IdOrden var lista = MTurno.Mostrar(""); TimeSpan hora = DateTime.Now.TimeOfDay; bool isbetween; int IDTurno = 0; foreach (var item in lista) { isbetween = item.Comienzo < hora && hora < item.Final; if (isbetween) { IDTurno = item.ID; break; } } if (IDTurno == 0) { IDTurno = 1; } if (txtDescuento.Text == string.Empty) { Descuento = 0; } else { Descuento = Convert.ToDouble(txtDescuento.Text); } if (txtRecEmergencia.Text == string.Empty) { RecargoEmergencia = 0; } else { RecargoEmergencia = Convert.ToDouble(txtRecEmergencia.Text); } if (txtAbonar.Text == string.Empty) { Abonar = 0; } else { Abonar = Convert.ToDouble(txtAbonar.Text); } int EmpresaSeguro, IdBanco; EmpresaSeguro = Convert.ToInt32(cbIdEmpresa.SelectedValue); IdBanco = Convert.ToInt32(this.cbIdBanco.SelectedValue); if (lblExoSi.Checked) { EmpresaSeguro = 4; IdBanco = 1; TipoPagoEoT = "Exonerado"; TotalParcial = 0; lblPrecioTotal.Text = Convert.ToString(TotalParcial); } IDFactura = 0; Rpta2 = MFactura.Facturar(1, id_trabajador, Convert.ToInt32(this.cbMedico.SelectedValue), IDTurno, DateTime.Now.Date, ConjuntoDeIDExamenes, IDPacienteActual, Convert.ToInt32(this.cbTipoPaciente.SelectedValue), EmpresaSeguro, TipoPagoEoT, IdBanco, txtNumCHoT.Text, Exonerado, txtMotivo.Text, Descuento, Subtotal, RecargoEmergencia, Abonar, TotalParcial, ExamenesParaGuardar, ref IDFactura); if (Rpta2.Equals("OK")) { MessageBox.Show("Factura Realizada Correctamente"); Imprimir(); //Si la respuesta fue OK, fue porque se modificó //o insertó el Trabajador //de forma correcta this.Limpiar(); } else { MessageBox.Show("No se pudo Realizar la Factura Correctamente"); } } catch (Exception ex) { MessageBox.Show(ex.Message + ex.StackTrace); } }
private void btn_facturar_Click(object sender, EventArgs e) { if (id_now != 0) { try { if (this.lista_ventas.CurrentRow.Cells["tipo"].Value.ToString() == "factura") { LocalReport rdlc = new LocalReport(); rdlc.ReportPath = @"..\..\Vistas\Report3.rdlc"; rdlc.ReportEmbeddedResource = "facturacion.Vistas.Report3.rdlc"; rdlc.EnableExternalImages = true; DataTable factura = CFactura.MostrarID(id_now); DataTable venta2 = CVenta.MostrarID(id_now); DataTable infomacion = CEmpresa.Mostrar(); DataTable codigo = CCodigo.ultimoID(int.Parse(factura.Rows[0]["idCodigo"].ToString())); DataTable cliente = CCliente.MostrarID(venta2.Rows[0]["idCliente"].ToString()); DataTable customer = CDetalleVenta.Mostrar((int)id_now); rdlc.DataSources.Add(new ReportDataSource("DataSet1", customer)); ReportParameter[] parameters = new ReportParameter[16]; string path = "file:\\" + Application.StartupPath + infomacion.Rows[0]["logo"]; string pathqr = "file:\\" + Application.StartupPath + factura.Rows[0]["QR"].ToString(); parameters[15] = new ReportParameter("Path", @path, true); parameters[0] = new ReportParameter("PathQr", @pathqr, true); parameters[1] = new ReportParameter("empresa", infomacion.Rows[0]["nombre"].ToString()); parameters[2] = new ReportParameter("propietario", infomacion.Rows[0]["nomPropietario"].ToString()); parameters[3] = new ReportParameter("direccion", infomacion.Rows[0]["direccion"].ToString()); parameters[4] = new ReportParameter("nit", infomacion.Rows[0]["nit"].ToString()); parameters[5] = new ReportParameter("nro", factura.Rows[0]["numFactura"].ToString()); parameters[6] = new ReportParameter("autorizacion", codigo.Rows[0]["autorizacion"].ToString()); parameters[7] = new ReportParameter("telefono", infomacion.Rows[0]["telefono"].ToString()); parameters[8] = new ReportParameter("literal", "Son: " + venta2.Rows[0]["montoLiteral"].ToString()); parameters[9] = new ReportParameter("nombre_cliente", cliente.Rows[0]["nombre"].ToString()); parameters[10] = new ReportParameter("ci", cliente.Rows[0]["ci"].ToString()); parameters[11] = new ReportParameter("fecha", venta2.Rows[0]["fecVenta"].ToString()); parameters[12] = new ReportParameter("total", venta2.Rows[0]["montoTotal"].ToString()); parameters[13] = new ReportParameter("codigo_control", factura.Rows[0]["codControl"].ToString()); parameters[14] = new ReportParameter("fecha_limite", codigo.Rows[0]["fecFinal"].ToString()); rdlc.SetParameters(parameters); Impresor imp = new Impresor(); imp.Imprime(rdlc); } else { if (MessageBox.Show("Esta Apunto de Facturar el monto de " + lb_importeTotal.Text + ".", "FACTURAR", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { DataTable aux = CCliente.Buscar("ci", lb_ciNit.Text.ToString()); string ccodigo; if (aux.Rows.Count == 1) { DataRow row_cliente = aux.Rows[0]; Numeracion num = new Numeracion(); MVentas venta = new MVentas(0, int.Parse(row_cliente["id"].ToString()), 1, DateTime.Now, Double.Parse(lb_importeTotal.Text), num.Convertir(lb_importeTotal.Text, true), "factura", "cancelado", 0); CVenta.Editar(int.Parse(id_now.ToString()), venta, this); DataTable cla = CCodigo.ultimo(); DataTable fa = CFactura.ultimo(); int id_fac_last = 0; if (fa.Rows.Count != 0) { id_fac_last = int.Parse(fa.Rows[0]["id"].ToString()); } id_fac_last++; string clave = cla.Rows[0]["clave"].ToString(); Hashid.Hashid hashid = new Hashid.Hashid(); string[] ff = lb_fecVenta.Text.Split(' '); string[] f = ff[0].Split('/'); ccodigo = (String)hashid.calcular(cla.Rows[0]["autorizacion"].ToString(), id_fac_last.ToString(), lb_ciNit.Text.ToString(), f[2] + f[1] + f[0], lb_importeTotal.Text, clave); qr_image = new Gma.QrCodeNet.Encoding.Windows.Forms.QrCodeImgControl(); qr_image.QuietZoneModule = Gma.QrCodeNet.Encoding.Windows.Render.QuietZoneModules.Two; qr_image.Size = new System.Drawing.Size(108, 95); qr_image.Text = lb_nit.Text + "|" + id_fac_last.ToString() + "|" + cla.Rows[0]["autorizacion"].ToString() + "|" + ff[0] + "|" + lb_importeTotal.Text + "|" + lb_importeTotal.Text + "|" + ccodigo + "|" + lb_ciNit.Text.ToString() + "|0|0|0|0|"; string dir = "/img/qrs/" + ccodigo + ".jpg"; qr_image.Image.Save(@"" + Application.StartupPath + dir, ImageFormat.Jpeg); MFactura fact = new MFactura(0, (int)id_now, int.Parse(cla.Rows[0]["id"].ToString()), ccodigo, dir, id_fac_last.ToString(), DateTime.Now); CFactura.Insertar(fact, this); Mostrar(tb_cliente.Text.ToString()); LocalReport rdlc = new LocalReport(); rdlc.ReportPath = @"..\..\Vistas\Report3.rdlc"; rdlc.ReportEmbeddedResource = "facturacion.Vistas.Report3.rdlc"; rdlc.EnableExternalImages = true; DataTable factura = CFactura.MostrarID(id_now); DataTable venta2 = CVenta.MostrarID(id_now); DataTable infomacion = CEmpresa.Mostrar(); DataTable codigo = CCodigo.ultimoID(int.Parse(factura.Rows[0]["idCodigo"].ToString())); DataTable cliente = CCliente.MostrarID(venta2.Rows[0]["idCliente"].ToString()); DataTable customer = CDetalleVenta.Mostrar((int)id_now); rdlc.DataSources.Add(new ReportDataSource("DataSet1", customer)); ReportParameter[] parameters = new ReportParameter[16]; string path = "file:\\" + Application.StartupPath + infomacion.Rows[0]["logo"]; string pathqr = "file:\\" + Application.StartupPath + factura.Rows[0]["QR"].ToString(); parameters[15] = new ReportParameter("Path", @path, true); parameters[0] = new ReportParameter("PathQr", @pathqr, true); parameters[1] = new ReportParameter("empresa", infomacion.Rows[0]["nombre"].ToString()); parameters[2] = new ReportParameter("propietario", infomacion.Rows[0]["nomPropietario"].ToString()); parameters[3] = new ReportParameter("direccion", infomacion.Rows[0]["direccion"].ToString()); parameters[4] = new ReportParameter("nit", infomacion.Rows[0]["nit"].ToString()); parameters[5] = new ReportParameter("nro", factura.Rows[0]["numFactura"].ToString()); parameters[6] = new ReportParameter("autorizacion", codigo.Rows[0]["autorizacion"].ToString()); parameters[7] = new ReportParameter("telefono", infomacion.Rows[0]["telefono"].ToString()); parameters[8] = new ReportParameter("literal", "Son: " + venta2.Rows[0]["montoLiteral"].ToString()); parameters[9] = new ReportParameter("nombre_cliente", cliente.Rows[0]["nombre"].ToString()); parameters[10] = new ReportParameter("ci", cliente.Rows[0]["ci"].ToString()); parameters[11] = new ReportParameter("fecha", venta2.Rows[0]["fecVenta"].ToString()); parameters[12] = new ReportParameter("total", venta2.Rows[0]["montoTotal"].ToString()); parameters[13] = new ReportParameter("codigo_control", factura.Rows[0]["codControl"].ToString()); parameters[14] = new ReportParameter("fecha_limite", codigo.Rows[0]["fecFinal"].ToString()); rdlc.SetParameters(parameters); Impresor imp = new Impresor(); imp.Imprime(rdlc); } else { MessageBox.Show("El CI/Nit no esta registrado.\n Registre el Nombre y guardelo."); } } } }catch (Exception err) { Mostrar(string.Empty); MessageBox.Show("Upp!, algo ha salido mal, por favor vuelva a seleccionar la venta e intentelo de nuevo"); } } else { MessageBox.Show("Seleccione una venta"); } }