private void btnEliminar_Click(object sender, EventArgs e) { var confirm = MessageBox.Show("¿Está seguro que desea eliminar el cliente: " + txtDNIDet.Text + " - " + txtNombreDet.Text + " " + txtApellidos.Text + "?.", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (confirm == DialogResult.Yes) { string id = txtID.Text; try { string result = BL_Clientes.eliminarCliente(id); if (result == "1") { MessageBox.Show("¡Cliente eliminado exitosamente!", "Eliminar cliente", MessageBoxButtons.OK, MessageBoxIcon.Information); fillClientes(); } else { MessageBox.Show("¡Ocurrió un error al eliminar el cliente!", "Eliminar cliente", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { MessageBox.Show("Error: " + ex.Message, "Eliminar cliente", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
private void btnObtener_Click(object sender, EventArgs e) { int res = 0; BE_clientes pBE_clientes = new BE_clientes(); pBE_clientes.ID = Convert.ToInt32(0); pBE_clientes.oBE_Tipo_Documento.ID = (this.txtRucDNI.Text.Length == 8) ? 1 : 6; pBE_clientes.Str_num_documento = txtRucDNI.Text; pBE_clientes.Str_nom_cliente = txtNombre.Text; pBE_clientes.Str_direccion_cliente = null; pBE_clientes.oBE_Departamento.ID = null; pBE_clientes.oBE_Provincia.ID = null; pBE_clientes.oBE_Distrito.ID = null; pBE_clientes.Str_v_ubigeo = null; pBE_clientes.Int_chk_promo_vigentes = 0; pBE_clientes.Dcm_linea_credito = 0; pBE_clientes.Dcm_credito_utilizado = 0; pBE_clientes.Dcm_credito_disponible = 0; pBE_clientes.IDUsuarioCreacion = 1; res = BL_Clientes.Registrar_clientes(pBE_clientes); this.txtRucDNI.Clear(); this.txtNombre.Clear(); txt_buscar.Text = pBE_Clientes.Str_num_documento; this.pnlBusquedaSunat.Visible = false; }
private void showDetallesDoc(DataGridViewCellEventArgs e) { reiniciarCotizacion(); string id = dgvDocumentos.Rows[e.RowIndex].Cells["ID_CAB"].Value.ToString(); id_cab = id; fillDetalles(id); tipo = dgvDocumentos.Rows[e.RowIndex].Cells["TIPO_VENTA"].Value.ToString(); lblTipo.Text = dgvDocumentos.Rows[e.RowIndex].Cells["TIPO_VENTA"].Value.ToString() == "CO" ? "Compra" : "Alquiler"; lblFecha.Text = dgvDocumentos.Rows[e.RowIndex].Cells["FECHA"].Value.ToString(); lblUsuario.Text = dgvDocumentos.Rows[e.RowIndex].Cells["USUARIO"].Value.ToString(); lblDNI.Text = dgvDocumentos.Rows[e.RowIndex].Cells["DNI"].Value.ToString(); lblNombre.Text = dgvDocumentos.Rows[e.RowIndex].Cells["NOMBRE"].Value.ToString(); lblTotal.Text = dgvDocumentos.Rows[e.RowIndex].Cells["MONEDA"].Value.ToString() + " " + String.Format("{0:f2}", dgvDocumentos.Rows[e.RowIndex].Cells["MONTO_TOTAL"].Value); gbDetalle.Visible = true; btnConfirmar.Enabled = true; cotizacion.id_cab = Convert.ToInt32(id_cab); cotizacion.cliente = lblNombre.Text; cotizacion.cliente_doc = lblDNI.Text; Ent_Clientes cliente = BL_Clientes.getCliente(lblDNI.Text); cotizacion.direccion = cliente.direccion; cotizacion.tipo_cotizacion = tipo; cotizacion.dias_alquiler = Convert.ToInt32(dgvDocumentos.Rows[e.RowIndex].Cells["DIAS_ALQUILER"].Value.ToString()); cotizacion.monto_total = Convert.ToDouble(lblTotal.Text.Split(' ')[1]); cotizacion.monto_subtotal = Convert.ToDouble(cotizacion.monto_total / (0.18 + 1)); cotizacion.monto_igv = (cotizacion.monto_total - Convert.ToDouble(cotizacion.monto_subtotal)); cotizacion.moneda = dgvDocumentos.Rows[e.RowIndex].Cells["MONEDA"].Value.ToString(); }
private void BuscarCliente() { dgvClientes.AutoGenerateColumns = false; if (dgvClientes.Rows.Count > 0) { dgvClientes.Rows.Clear(); } string input = txtCliente.Text.Trim(); List <Ent_Clientes> lstClientes; if (tipo == "dni") { lstClientes = BL_Clientes.getClientesxDNI(input, tipo_cliente); } else { lstClientes = BL_Clientes.getClientesxNombre(input, tipo_cliente); } var bindingList = new BindingList <Ent_Clientes>(lstClientes); var source = new BindingSource(bindingList, null); dgvClientes.DataSource = source; }
private void txt_buscar_TextChanged(object sender, EventArgs e) { if (this._tipo == 1) { var BE_clienteTmp = BL_Clientes.Listar_Clientes(new BE_clientes() { Str_texto_buscar = this.txt_buscar.Text }); this.gv_Clientes_Lista.DataSource = BE_clienteTmp; } }
private void fillMediosContacto() { List <Ent_MediosContacto> items = new List <Ent_MediosContacto>(); var medios = BL_Clientes.getMediosContacto(); items.AddRange(medios); cboMedio.DataSource = items; cboMedio.ValueMember = "id"; cboMedio.DisplayMember = "descripcion"; }
public void Listar_Clientes() { List <BE_clientes> Listar_Clientes = new List <BE_clientes>(); pBE_Clientes = new BE_clientes(); pBL_Clientes = new BL_Clientes(); pBE_Clientes.Str_texto_buscar = Convert.ToString(txt_buscar.Text); Listar_Clientes = BL_Clientes.Listar_Clientes(pBE_Clientes); gv_Clientes_Lista.AutoGenerateColumns = false; gv_Clientes_Lista.DataSource = Listar_Clientes; gv_Clientes_Lista.ClearSelection(); }
private void btn_Clientes_Buscar_Sunat_Click(object sender, EventArgs e) { var cliente = BL_Clientes.Listar_Clientes_x_NumDoc(new BE_clientes() { Str_num_documento = txtRucDNI.Text }); if (cliente.Count > 0) { MessageBox.Show("Nro. Documento ya esta registrado."); } else { try { if (txt_buscar.Text.Length == 8) { string html = string.Empty; string url = @"http://informaticaperuana.com/ukupacha/katariq.php?usr=iperuana&pwd=ip2017!&dni=" + this.txt_buscar.Text; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.AutomaticDecompression = DecompressionMethods.GZip; using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) using (Stream stream = response.GetResponseStream()) using (StreamReader reader = new StreamReader(stream)) { html = reader.ReadToEnd(); } this.txtRucDNI.Text = txt_buscar.Text; this.txtNombre.Text = html; this.pnlBusquedaSunat.Visible = true; } else if (txt_buscar.Text.Length == 11) { MessageBox.Show("En estos momentos no se puede obtener la información solicitada, por favor verifique su conexión a internet."); } } catch (Exception es) { MessageBox.Show("En estos momentos no se puede obtener la información solicitada, por favor verifique su conexión a internet."); } } }
private void gv_Clientes_Lista_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { if (this._tipo == 1) { DataGridViewRow row = gv_Clientes_Lista.CurrentRow; int valor = Convert.ToInt32(row.Cells["ID"].Value); var clienteTmp = BL_Clientes.Listar_Clientes_x_ID(new BE_clientes() { ID = valor }); if (clienteTmp.Count > 0) { pBE_Clientes = clienteTmp[0]; this.Close(); } } }
private void fillClientes() { string dni = txtDNI.Text; string nombre = txtNombre.Text; dgvClientes.AutoGenerateColumns = false; if (dgvClientes.Rows.Count > 0) { dgvClientes.Rows.Clear(); } List <Ent_Clientes> lstClientes = BL_Clientes.getClientesRegistrados(dni, nombre); var bindingList = new BindingList <Ent_Clientes>(lstClientes); var source = new BindingSource(bindingList, null); dgvClientes.DataSource = source; }
private void fillReporte() { DataTable dt = new DataTable(); DataSet ds = new DataSet(); BL_Clientes.getReporteClientes(txtDNI.Text, txtNombres.Text, cboTipo.SelectedValue.ToString(), ref ds, ref dt); rpvClientes.ProcessingMode = ProcessingMode.Local; rpvClientes.LocalReport.ReportPath = "Reportes/Clientes.rdlc"; rpvClientes.LocalReport.DataSources.Clear(); ReportDataSource source = new ReportDataSource("ClientesDS", dt); source.Value = ds.Tables[0]; rpvClientes.LocalReport.DataSources.Add(source); rpvClientes.RefreshReport(); }
public void Listar_Clientes_x_ID() { List <BE_clientes> Listar_Clientes_x_ID = new List <BE_clientes>(); pBE_clientes = new BE_clientes(); pBL_clientes = new BL_Clientes(); pBE_clientes.ID = Convert.ToInt32(txt_Codigo_Cliente.Text); Listar_Clientes_x_ID = BL_Clientes.Listar_Clientes_x_ID(pBE_clientes); txt_Codigo_Cliente.Text = Convert.ToString(Listar_Clientes_x_ID[0].ID); cbo_Clientes_Documento.Text = Convert.ToString(Listar_Clientes_x_ID[0].oBE_Tipo_Documento.Str_abrev_tipo_documento); txt_Documento_Cliente.Text = Convert.ToString(Listar_Clientes_x_ID[0].Str_num_documento); txt_Clientes_RazonSocial.Text = Convert.ToString(Listar_Clientes_x_ID[0].Str_nom_cliente); txt_Clientes_Direccion.Text = Convert.ToString(Listar_Clientes_x_ID[0].Str_direccion_cliente); cbo_Clientes_Departamento.Text = Convert.ToString(Listar_Clientes_x_ID[0].oBE_Departamento.Str_Departamento); cbo_Clientes_Provincia.Text = Convert.ToString(Listar_Clientes_x_ID[0].oBE_Provincia.Str_Provincia); cbo_Clientes_Distrito.Text = Convert.ToString(Listar_Clientes_x_ID[0].oBE_Distrito.Str_Distrito); txt_Clientes_Ubigeo.Text = Convert.ToString(Listar_Clientes_x_ID[0].Str_v_ubigeo); if (Listar_Clientes_x_ID[0].Int_chk_promo_vigentes == 1) { chk_Clientes_ProVigentes.Checked = true; } else { chk_Clientes_ProVigentes.Checked = false; } if (Listar_Clientes_x_ID[0].Int_chk_aceptar_vtas_credito == 1) { chk_Clientes_VentaCredito.Checked = true; } else { chk_Clientes_VentaCredito.Checked = false; } txt_Clientes_LineaCredito.Text = Convert.ToString(Listar_Clientes_x_ID[0].Dcm_linea_credito); txt_Clientes_CreditoUtilizado.Text = Convert.ToString(Listar_Clientes_x_ID[0].Dcm_credito_utilizado); txt_Clientes_CreditoDisponible.Text = Convert.ToString(Listar_Clientes_x_ID[0].Dcm_credito_disponible); this.Listar_Nivel_Dcto_x_Cliente(); }
private void btn_Clientes_Eliminar_Click(object sender, EventArgs e) { try { if (gv_Clientes_Lista.RowCount > 0) { int ID = Convert.ToInt16(label2.Text); if (ID == 0) { MessageBox.Show("Seleccione fila"); } else { label2.Text = Convert.ToString(0); if (MessageBox.Show("Estas seguro de eliminar este registro ?", "Eliminar registro", MessageBoxButtons.YesNo) == DialogResult.Yes) { pBE_Clientes = new BE_clientes(); pBL_Clientes = new BL_Clientes(); pBE_Clientes.ID = ID; pBE_Clientes.IDUsuarioModificacion = 1; BL_Clientes.ActualizarEstadoclientes(pBE_Clientes); Listar_Clientes(); MessageBox.Show("Registro eliminado"); } } } else { MessageBox.Show("No hay registros, lista vacia"); } } catch { } }
private void btnGuardar_Click_1(object sender, EventArgs e) { if (txtNombreDet.Text.Equals(String.Empty)) { MessageBox.Show("El nombre no puede estar vacío.", "Agregar cliente", MessageBoxButtons.OK, MessageBoxIcon.Error); txtNombreDet.Focus(); return; } if (txtApellidos.Text.Equals(String.Empty) && cboTipo.SelectedValue.ToString().Equals("N")) { MessageBox.Show("El apellido no puede estar vacío.", "Agregar cliente", MessageBoxButtons.OK, MessageBoxIcon.Error); txtApellidos.Focus(); return; } if (txtDireccion.Text.Equals(String.Empty)) { MessageBox.Show("La dirección no puede estar vacía.", "Agregar cliente", MessageBoxButtons.OK, MessageBoxIcon.Error); txtDireccion.Focus(); return; } if (txtTelefono.Text.Equals(String.Empty)) { MessageBox.Show("El teléfono no puede estar vacío.", "Agregar cliente", MessageBoxButtons.OK, MessageBoxIcon.Error); txtApellidos.Focus(); return; } var confirm = MessageBox.Show("¿Está seguro que desea agregar al cliente?.", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (confirm == DialogResult.Yes) { Ent_Clientes cliente = new Ent_Clientes(); cliente.dni = txtDNIDet.Text; cliente.nombres = txtNombreDet.Text; cliente.apellidos = txtApellidos.Text; cliente.direccion = txtDireccion.Text; cliente.telefono = txtTelefono.Text; cliente.email = txtEmail.Text; cliente.tipo = cboTipo.SelectedValue.ToString(); cliente.medio = cboMedio.SelectedValue.ToString(); cliente.otro_medio = txtRecomendado.Text; try { string result = BL_Clientes.insertarCliente(cliente); if (result == "1") { MessageBox.Show("¡Cliente agregado exitosamente!", "Agregar cliente", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show("¡Ocurrió un error al agregar el cliente!", "Agregar cliente", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { MessageBox.Show("Error: " + ex.Message, "Agregar cliente", MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
private void procesarCotizacion() { Ent_Venta venta = new Ent_Venta(); venta.cod_tienda = cod_tienda; venta.tipo_venta = tipo_venta; venta.cantidad = sumarCantidad(); venta.cliente_doc = txtDesRuc.Text; venta.emision = DateTime.Now.ToString("dd/MM/yyyy"); venta.cliente = txtDesCliente.Text; venta.email = txtEmail.Text; venta.usuario = usuario; venta.tipo_cotizacion = cboTipo.SelectedValue.ToString(); venta.dias_alquiler = int.Parse(txtDias.Text); venta.monto_subtotal = double.Parse(txtSubTotal.Text); venta.monto_igv = double.Parse(txtIGV.Text); venta.monto_total = total; venta.denominacion = txtDenominación.Text; venta.observacion = txtObservacion.Text; venta.moneda = cboMoneda.SelectedValue.ToString(); bool existe_cliente = BL_Clientes.existeCliente(venta.cliente_doc); //save customer if doesnt exists if (!existe_cliente) { var confirm = MessageBox.Show("¿Desea guardar el cliente en el sistema?", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (confirm == DialogResult.Yes) { Ent_Clientes nuevo_cliente = new Ent_Clientes(); nuevo_cliente.dni = txtDesRuc.Text; nuevo_cliente.nombres = txtDesCliente.Text; nuevo_cliente.apellidos = ""; nuevo_cliente.direccion = ""; nuevo_cliente.telefono = ""; nuevo_cliente.email = txtEmail.Text; nuevo_cliente.tipo = (nuevo_cliente.dni.Length > 8) ? "E" : "N"; nuevo_cliente.posible = "1"; try { string _result = BL_Clientes.insertarCliente(nuevo_cliente); } catch (Exception ex) { MessageBox.Show("Ocurrió un error al grabar al cliente, sin embargo, el proceso de compra continuará.\n\n" + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { } } foreach (DataGridViewRow row in dgvProductos.Rows) { Ent_Productos prd = new Ent_Productos(); prd.cod_producto = row.Cells["CODIGO"].Value.ToString(); prd.id = int.Parse(row.Cells["ID"].Value.ToString()); prd.nombre = row.Cells["DESCRIPCION"].Value.ToString(); prd.cantidad = int.Parse(row.Cells["CANTIDAD"].Value.ToString()); prd.precio = float.Parse(row.Cells["PU"].Value.ToString()); prd.monto_total = float.Parse(row.Cells["IMPORTE"].Value.ToString()); venta.lstProductos.Add(prd); } try { string id_cab = ""; string result = BL_Ventas.procesarCotizacion(venta, out id_cab); venta.id_cab = Convert.ToInt32(id_cab); Email email = new Email(); email.Send_Email(venta, _ent_tienda, ent_configuracion, txtObservacion.Text, adjunto); if (result == "1") { MessageBox.Show("Cotización Realizada con Éxito!.", "Cotización", MessageBoxButtons.OK, MessageBoxIcon.Information); InvoicePDF pdf = new InvoicePDF(); pdf.createCotizacion(ent_configuracion, venta); reiniciarVenta(); } else { MessageBox.Show(result, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { MessageBox.Show("Error en el proceso de cotización.\n\n" + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void Registrar_Clientes() { int res = 0; pBE_clientes = new BE_clientes(); pBL_clientes = new BL_Clientes(); pBE_clientes.ID = Convert.ToInt32(txt_Codigo_Cliente.Text); pBE_clientes.oBE_Tipo_Documento.ID = Convert.ToInt32(cbo_Clientes_Documento.SelectedValue); pBE_clientes.Str_num_documento = txt_Documento_Cliente.Text; pBE_clientes.Str_nom_cliente = txt_Clientes_RazonSocial.Text; pBE_clientes.Str_direccion_cliente = txt_Clientes_Direccion.Text; pBE_clientes.oBE_Departamento.ID = Convert.ToInt16(cbo_Clientes_Departamento.SelectedValue); pBE_clientes.oBE_Provincia.ID = Convert.ToInt32(cbo_Clientes_Provincia.SelectedValue); pBE_clientes.oBE_Distrito.ID = Convert.ToInt32(cbo_Clientes_Distrito.SelectedValue); pBE_clientes.Str_v_ubigeo = txt_Clientes_Ubigeo.Text; if (chk_Clientes_ProVigentes.Checked == true) { pBE_clientes.Int_chk_promo_vigentes = 1; } else { pBE_clientes.Int_chk_promo_vigentes = 0; } if (chk_Clientes_VentaCredito.Checked == true) { pBE_clientes.Int_chk_aceptar_vtas_credito = 1; } else { pBE_clientes.Int_chk_aceptar_vtas_credito = 0; } if (txt_Clientes_LineaCredito.Text.Length == 0) { pBE_clientes.Dcm_linea_credito = 0; } else { pBE_clientes.Dcm_linea_credito = Convert.ToDecimal(txt_Clientes_LineaCredito.Text.Replace(".", ",")); } if (txt_Clientes_CreditoUtilizado.Text.Length == 0) { pBE_clientes.Dcm_credito_utilizado = 0; } else { pBE_clientes.Dcm_credito_utilizado = Convert.ToDecimal(txt_Clientes_CreditoUtilizado.Text.Replace(".", ",")); } if (txt_Clientes_CreditoDisponible.Text.Length == 0) { pBE_clientes.Dcm_credito_disponible = 0; } else { pBE_clientes.Dcm_credito_disponible = Convert.ToDecimal(txt_Clientes_CreditoDisponible.Text.Replace(".", ",")); } if (Convert.ToInt32(txt_Codigo_Cliente.Text) == 0) { pBE_clientes.IDUsuarioCreacion = 1; res = BL_Clientes.Registrar_clientes(pBE_clientes); } else { pBE_clientes.IDUsuarioModificacion = 1; res = BL_Clientes.Actualizar_clientes(pBE_clientes); } }
private void procesarCompra() { forma_pago = cboFormaPago.SelectedValue.ToString(); Ent_Venta venta = new Ent_Venta(); venta.nro_doc = int.Parse(correlativo); venta.nro_doc_str = lblSerie.Text; venta.cod_tienda = cod_tienda; venta.tipo_venta = tipo_venta; venta.forma_pago = forma_pago; venta.cantidad = sumarCantidad(); venta.monto_total = total; venta.monto_subtotal = double.Parse(txtSubTotal.Text); venta.monto_igv = double.Parse(txtIGV.Text); venta.monto_recibido = double.Parse(txtRecibido.Text); venta.monto_vuelto = double.Parse(txtVuelto.Text); venta.monto_descuento = double.Parse(txtDescuento.Text); venta.cliente_doc = txtDNI.Text; venta.cliente = txtNombres.Text + " " + txtApellidos.Text; venta.direccion = txtDireccion.Text; venta.usuario = ent_usuario.username; venta.fecha_inicio = dtpFechaInicio.Value.ToShortDateString(); venta.fecha_fin = dtpFechaEntrega.Value.ToShortDateString(); venta.moneda = cboMoneda.SelectedValue.ToString(); bool existe_cliente = BL_Clientes.existeCliente(venta.cliente_doc); //save customer if doesnt exists if (!existe_cliente) { log.Info("Cliente " + txtDNI.Text + " no existe en la base de datos.", System.Reflection.MethodBase.GetCurrentMethod().Name); var confirm = MessageBox.Show("¿Desea guardar el cliente en el sistema?", "Atención", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (confirm == DialogResult.Yes) { Ent_Clientes nuevo_cliente = new Ent_Clientes(); nuevo_cliente.dni = txtDNI.Text; nuevo_cliente.nombres = txtNombres.Text; nuevo_cliente.apellidos = txtApellidos.Text; nuevo_cliente.direccion = txtDireccion.Text; nuevo_cliente.telefono = txtTelefono.Text; nuevo_cliente.email = txtEmail.Text; nuevo_cliente.tipo = (tipo_venta == "FA") ? "E" : "N"; nuevo_cliente.posible = "1"; try { string _result = BL_Clientes.insertarCliente(nuevo_cliente); if (_result == "1") { log.Info("Cliente " + nuevo_cliente.dni + " grabado con éxito.", System.Reflection.MethodBase.GetCurrentMethod().Name); } else { log.Error("Error al grabar cliente: " + _result, System.Reflection.MethodBase.GetCurrentMethod().Name); } } catch (Exception ex) { MessageBox.Show("Ocurrió un error al grabar al cliente, sin embargo, el proceso de compra continuará.\n\n" + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); log.Error("Error al grabar cliente: " + ex.Message, System.Reflection.MethodBase.GetCurrentMethod().Name); } } else { log.Info("Cliente " + txtDNI.Text + " no se guardará en la base de datos.", System.Reflection.MethodBase.GetCurrentMethod().Name); } } foreach (DataGridViewRow row in dgvProductos.Rows) { Ent_Productos prd = new Ent_Productos(); prd.id = int.Parse(row.Cells["ID"].Value.ToString()); prd.nombre = row.Cells["DESCRIPCION"].Value.ToString(); prd.cantidad = int.Parse(row.Cells["CANTIDAD"].Value.ToString()); prd.precio = float.Parse(row.Cells["PU"].Value.ToString()); venta.lstProductos.Add(prd); } try { string result = BL_Ventas.procesarVenta(venta); if (result == "1") { MessageBox.Show("Venta Realizada con Éxito!.", "Venta", MessageBoxButtons.OK, MessageBoxIcon.Information); InvoicePDF pdf = new InvoicePDF(); if (venta.tipo_venta == "BO") { pdf.createBoleta(ent_configuracion, venta); } else { pdf.createFactura(ent_configuracion, venta); } log.Info("Venta " + lblSerie.Text + " realizada con éxito.", System.Reflection.MethodBase.GetCurrentMethod().Name); string resumen = "\n-----------------------------------\n" + "Resumen Venta:\n" + "Serie: " + lblSerie.Text + "\n" + "Tipo Venta: " + tipo_venta + "\n" + "Forma de Pago: " + cboFormaPago.Text + "\n" + "Cliente: " + txtDNI.Text + "\n" + "Productos:\n"; foreach (DataGridViewRow item in dgvProductos.Rows) { resumen += " - " + item.Cells["CODIGO"].Value.ToString() + " | " + item.Cells["DESCRIPCION"].Value.ToString() + " | " + item.Cells["CANTIDAD"].Value.ToString() + " | " + item.Cells["PU"].Value.ToString() + " | " + item.Cells["IMPORTE"].Value.ToString() + "\n"; } resumen += "Subtotal: " + txtSubTotal.Text + "\n" + "IGV: " + txtIGV.Text + "\n" + "TOTAL: " + txtTotal.Text + "\n" + "Recibido: " + txtRecibido.Text + "\n" + "Vuelto: " + txtVuelto.Text + "\n" + "-----------------------------------\n\n"; log.Info(resumen, System.Reflection.MethodBase.GetCurrentMethod().Name); reiniciarVenta(); } else { MessageBox.Show(result, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { MessageBox.Show("Error en el proceso de compra.\n\n" + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); log.Error("Error en el proceso de compra: " + ex.Message, System.Reflection.MethodBase.GetCurrentMethod().Name); } }