private void btnGuardar_Click(object sender, EventArgs e) { try { Entidades.FacturaCompra _factura = CargarEntidad(); bool Exito = ComprasNeg.GuardarFacturaCompra(_factura, cuitCliente); if (Exito == true) { ProgressBar(); const string message2 = "Se registro la factura de compra exitosamente."; const string caption2 = "Éxito"; var result2 = MessageBox.Show(message2, caption2, MessageBoxButtons.OK, MessageBoxIcon.Asterisk); LimpiarCampos(); } else { } } catch (Exception ex) { } }
private void Calculos(List <FacturaCompra> listaSubCliente) { DataTable data = new DataTable(); PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(typeof(FacturaCompra)); DataTable table = new DataTable(); foreach (PropertyDescriptor prop in properties) { table.Columns.Add(prop.Name, Nullable.GetUnderlyingType(prop.PropertyType) ?? prop.PropertyType); } foreach (FacturaCompra item in listaSubCliente) { DataRow row = table.NewRow(); foreach (PropertyDescriptor prop in properties) { row[prop.Name] = prop.GetValue(item) ?? DBNull.Value; } table.Rows.Add(row); } //foreach (var item in listaSubCliente) //{ // data.Rows.Add(item); //} if (data.Rows.Count > 0) { foreach (DataRow item in data.Rows) { string VARImpNetoGravado = ""; string VARImpNetoNoGravado = ""; string VARImpOpExentas = ""; double ImpNetoGravado; double ImpNetoNoGravado; double ImpOpExentas; decimal Iva; Entidades.FacturaCompra list = new Entidades.FacturaCompra(); list.Fecha = item[0].ToString(); if (list.Fecha == "Fecha") { continue; } list.TipoComprobante = item[1].ToString(); if (list.TipoComprobante == "6 - Factura B" || list.TipoComprobante == "1 - Factura A") { list.NroFactura = item[2].ToString() + "|" + item[3].ToString(); } if (list.TipoComprobante == "8 - Nota de Crédito B" || list.TipoComprobante == "003 - Nota de Crédito A") { list.NroFacturaNotaDeCredtio = item[2].ToString() + "|" + item[3].ToString(); } if (list.TipoComprobante == "11 - Factura C") { list.NroFactura = item[2].ToString() + "|" + item[3].ToString(); } if (list.TipoComprobante == "13 - Nota de Crédito C") { list.NroFacturaNotaDeCredtio = item[2].ToString() + "|" + item[3].ToString(); } list.CodigoDocumento = item[6].ToString(); if (list.CodigoDocumento == "CUIT") { list.CodigoDocumento = "80"; } if (list.CodigoDocumento == "DNI") { list.CodigoDocumento = "96"; } list.Cuit = item[7].ToString(); list.NombreProveedor = item[8].ToString(); list.TipoDeCambio = item[9].ToString(); list.CodigoMoneda = item[10].ToString(); if (list.CodigoMoneda == "$") { list.CodigoMoneda = "PES - PesosArgentinos"; } if (item[11].ToString() != "") { double varImpNetoGravado = Convert.ToDouble(item[11].ToString()); VARImpNetoGravado = string.Format("{0:n2}", (Math.Truncate(varImpNetoGravado * 100) / 100)); ImpNetoGravado = Math.Round(Convert.ToDouble(VARImpNetoGravado), 2); } else { VARImpNetoGravado = "0"; ImpNetoGravado = 0; } if (item[12].ToString() != "") { double varImpNetoNoGravado = Convert.ToDouble(item[12].ToString()); VARImpNetoNoGravado = string.Format("{0:n2}", (Math.Truncate(varImpNetoNoGravado * 100) / 100)); ImpNetoNoGravado = Convert.ToDouble(VARImpNetoNoGravado); } else { VARImpNetoNoGravado = "0"; ImpNetoNoGravado = 0; } if (item[13].ToString() != "") { double varImpOpExentas = Convert.ToDouble(item[13].ToString()); VARImpOpExentas = string.Format("{0:n2}", (Math.Truncate(varImpOpExentas * 100) / 100)); ImpOpExentas = Convert.ToDouble(VARImpOpExentas); } else { VARImpOpExentas = "0"; ImpOpExentas = 0; } if (item[14].ToString() != "") { double varIVA = Convert.ToDouble(item[14].ToString()); string IVA = string.Format("{0:n2}", (Math.Truncate(varIVA * 100) / 100)); Iva = Convert.ToDecimal(IVA); } else { Iva = 0; } if (item[15].ToString() != "") { double varMon = Convert.ToDouble(item[15].ToString()); string Mont = string.Format("{0:n2}", (Math.Truncate(varMon * 100) / 100)); list.Monto = Convert.ToDecimal(Mont); } else { list.Monto = 0; } if (ImpNetoGravado > 0) { ///// Calculo al %10,5 string Valor1 = Convert.ToString(Math.Round((ImpNetoGravado * 0.105), 2)); decimal resultado1 = Convert.ToDecimal(Valor1); if (resultado1 == Iva) { list.Total1 = Convert.ToDecimal(list.Monto); list.Iva1 = Convert.ToDecimal(Iva); list.Neto1 = Convert.ToDecimal(ImpNetoGravado); } ///// Calculo al %21 string Valor2 = Convert.ToString(Math.Round((ImpNetoGravado * 0.21), 2)); decimal resultado2 = Convert.ToDecimal(Valor2); if (resultado2 == Iva) { list.Total2 = Convert.ToDecimal(list.Monto); list.Iva2 = Convert.ToDecimal(Iva); list.Neto2 = Convert.ToDecimal(ImpNetoGravado); } ///// Calculo al %27 string Valor3 = Convert.ToString(Math.Round((ImpNetoGravado * 0.27), 2)); decimal resultado3 = Convert.ToDecimal(Valor3); if (resultado3 == Iva) { list.Total3 = Convert.ToDecimal(list.Monto); list.Iva3 = Convert.ToDecimal(Iva); list.Neto3 = Convert.ToDecimal(ImpNetoGravado); } else { ///// Calculo al %10,5 var trncateCalculo1 = ImpNetoGravado * 0.105; trncateCalculo1 = Math.Truncate(trncateCalculo1 * 100) / 100; decimal TruncateResultado1 = Convert.ToDecimal(trncateCalculo1); if (TruncateResultado1 == Iva) { list.Total1 = Convert.ToDecimal(list.Monto); list.Iva1 = Convert.ToDecimal(Iva); list.Neto1 = Convert.ToDecimal(ImpNetoGravado); } ///// Calculo al %21 var trncateCalculo2 = ImpNetoGravado * 0.21; trncateCalculo2 = Math.Truncate(trncateCalculo2 * 100) / 100; decimal TruncateResultado2 = Convert.ToDecimal(trncateCalculo2); if (TruncateResultado2 == Iva) { list.Total2 = Convert.ToDecimal(list.Monto); list.Iva2 = Convert.ToDecimal(Iva); list.Neto2 = Convert.ToDecimal(ImpNetoGravado); } ///// Calculo al %27 var trncateCalculo3 = ImpNetoGravado * 0.27; trncateCalculo3 = Math.Truncate(trncateCalculo3); decimal TruncateResultado3 = Convert.ToDecimal(trncateCalculo3); if (TruncateResultado3 == Iva) { list.Total3 = Convert.ToDecimal(list.Monto); list.Iva3 = Convert.ToDecimal(Iva); list.Neto3 = Convert.ToDecimal(ImpNetoGravado); } } } ////// Agrego Percepcionj Iva e Ingresos Brutos list.PercepIva = 0; list.PercepIngBrutos = 0; dataGridView1.Visible = true; listaSubCliente.Add(list); var contadortotal = listaSubCliente.Count; label4.Visible = true; label5.Visible = true; label4.Text = Convert.ToString(contadortotal); //ListaPrecargada = listaSubCliente; dataGridView1.Rows.Add(list.Fecha, list.TipoComprobante, list.NroFactura, list.TipoComprobante, list.Cuit, list.NombreProveedor, list.TipoDeCambio, list.CodigoMoneda, VARImpNetoGravado, VARImpNetoNoGravado, VARImpOpExentas, list.PercepIva, list.PercepIngBrutos, Iva, list.Monto); } ListaStatic = listaSubCliente; ValidarDiseñoGrilla(); btnCargaMasiva.Visible = true; } }
private void Datos() { string RutaCargada = txtRuta.Text; //Hoja desde donde obtendremos los datos string hoja = "Sheet1"; //Cadena de conexión // Modifico la version para computadora de Arbi. Sino va 12.0 string conexion = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + RutaCargada + ";Extended Properties='Excel 12.0;HDR=YES;';"; OleDbConnection con = new OleDbConnection(conexion); //Consulta contra la hoja de Excel OleDbCommand cmd = new OleDbCommand("Select * From [" + hoja + "$]", con); try { //Conectarse al archivo de Excel con.Open(); OleDbDataAdapter sda = new OleDbDataAdapter(cmd); DataTable data = new DataTable(); //Cargar los datos sda.Fill(data); List <Entidades.FacturaCompra> listaSubCliente = new List <Entidades.FacturaCompra>(); if (data.Rows.Count > 0) { foreach (DataRow item in data.Rows) { string VARImpNetoGravado = ""; string VARImpNetoNoGravado = ""; string VARImpOpExentas = ""; double ImpNetoGravado; double ImpNetoNoGravado; double ImpOpExentas; decimal Iva; Entidades.FacturaCompra list = new Entidades.FacturaCompra(); list.Fecha = item[0].ToString(); if (list.Fecha == "Fecha") { continue; } list.TipoComprobante = item[1].ToString(); if (list.TipoComprobante == "6 - Factura B" || list.TipoComprobante == "1 - Factura A" || list.TipoComprobante == "11 - Factura C") { list.NroFactura = item[2].ToString() + "|" + item[3].ToString(); } if (list.TipoComprobante == "4 - Recibo A" || list.TipoComprobante == "9 - Recibo B" || list.TipoComprobante == "15 - Recibo C") { list.NroFactura = item[2].ToString() + "|" + item[3].ToString(); } if (list.TipoComprobante == "2 - Nota de Débito A" || list.TipoComprobante == "7 - Nota de Débito B" || list.TipoComprobante == "12 - Nota de Débito C") { list.NroFactura = item[2].ToString() + "|" + item[3].ToString(); } if (list.TipoComprobante == "8 - Nota de Crédito B" || list.TipoComprobante == "3 - Nota de Crédito A" || list.TipoComprobante == "13 - Nota de Crédito C") { list.NroFacturaNotaDeCredtio = item[2].ToString() + "|" + item[3].ToString(); } list.CodigoDocumento = item[6].ToString(); if (list.CodigoDocumento == "CUIT") { list.CodigoDocumento = "80"; } if (list.CodigoDocumento == "DNI") { list.CodigoDocumento = "96"; } list.Cuit = item[7].ToString(); list.NombreProveedor = item[8].ToString(); list.TipoDeCambio = item[9].ToString(); list.CodigoMoneda = item[10].ToString(); if (list.CodigoMoneda == "$") { list.CodigoMoneda = "PES - PesosArgentinos"; } if (item[11].ToString() != "") { double varImpNetoGravado = Convert.ToDouble(item[11].ToString()); VARImpNetoGravado = string.Format("{0:n2}", (Math.Truncate(varImpNetoGravado * 100) / 100)); ImpNetoGravado = Math.Round(Convert.ToDouble(VARImpNetoGravado), 2); } else { VARImpNetoGravado = "0"; ImpNetoGravado = 0; } if (item[12].ToString() != "") { double varImpNetoNoGravado = Convert.ToDouble(item[12].ToString()); VARImpNetoNoGravado = string.Format("{0:n2}", (Math.Truncate(varImpNetoNoGravado * 100) / 100)); ImpNetoNoGravado = Convert.ToDouble(VARImpNetoNoGravado); } else { VARImpNetoNoGravado = "0"; ImpNetoNoGravado = 0; } if (item[13].ToString() != "") { double varImpOpExentas = Convert.ToDouble(item[13].ToString()); VARImpOpExentas = string.Format("{0:n2}", (Math.Truncate(varImpOpExentas * 100) / 100)); ImpOpExentas = Convert.ToDouble(VARImpOpExentas); } else { VARImpOpExentas = "0"; ImpOpExentas = 0; } if (item[14].ToString() != "") { double varIVA = Convert.ToDouble(item[14].ToString()); string IVA = string.Format("{0:n2}", (Math.Truncate(varIVA * 100) / 100)); Iva = Convert.ToDecimal(IVA); } else { Iva = 0; } if (item[15].ToString() != "") { double varMon = Convert.ToDouble(item[15].ToString()); string Mont = string.Format("{0:n2}", (Math.Truncate(varMon * 100) / 100)); list.Monto = Convert.ToDecimal(Mont); } else { list.Monto = 0; } if (ImpNetoGravado > 0) { ///// Calculo al %10,5 string Valor1 = Convert.ToString(Math.Round((ImpNetoGravado * 0.105), 2)); decimal resultado1 = Convert.ToDecimal(Valor1); if (resultado1 == Iva) { list.Total1 = Convert.ToDecimal(list.Monto); list.Iva1 = Convert.ToDecimal(Iva); list.Neto1 = Convert.ToDecimal(ImpNetoGravado); } ///// Calculo al %21 string Valor2 = Convert.ToString(Math.Round((ImpNetoGravado * 0.21), 2)); decimal resultado2 = Convert.ToDecimal(Valor2); if (resultado2 == Iva) { list.Total2 = Convert.ToDecimal(list.Monto); list.Iva2 = Convert.ToDecimal(Iva); list.Neto2 = Convert.ToDecimal(ImpNetoGravado); } ///// Calculo al %27 string Valor3 = Convert.ToString(Math.Round((ImpNetoGravado * 0.27), 2)); decimal resultado3 = Convert.ToDecimal(Valor3); if (resultado3 == Iva) { list.Total3 = Convert.ToDecimal(list.Monto); list.Iva3 = Convert.ToDecimal(Iva); list.Neto3 = Convert.ToDecimal(ImpNetoGravado); } else { ///// Calculo al %10,5 var trncateCalculo1 = ImpNetoGravado * 0.105; trncateCalculo1 = Math.Truncate(trncateCalculo1 * 100) / 100; decimal TruncateResultado1 = Convert.ToDecimal(trncateCalculo1); if (TruncateResultado1 == Iva) { list.Total1 = Convert.ToDecimal(list.Monto); list.Iva1 = Convert.ToDecimal(Iva); list.Neto1 = Convert.ToDecimal(ImpNetoGravado); } ///// Calculo al %21 var trncateCalculo2 = ImpNetoGravado * 0.21; trncateCalculo2 = Math.Truncate(trncateCalculo2 * 100) / 100; decimal TruncateResultado2 = Convert.ToDecimal(trncateCalculo2); if (TruncateResultado2 == Iva) { list.Total2 = Convert.ToDecimal(list.Monto); list.Iva2 = Convert.ToDecimal(Iva); list.Neto2 = Convert.ToDecimal(ImpNetoGravado); } ///// Calculo al %27 var trncateCalculo3 = ImpNetoGravado * 0.27; trncateCalculo3 = Math.Truncate(trncateCalculo3); decimal TruncateResultado3 = Convert.ToDecimal(trncateCalculo3); if (TruncateResultado3 == Iva) { list.Total3 = Convert.ToDecimal(list.Monto); list.Iva3 = Convert.ToDecimal(Iva); list.Neto3 = Convert.ToDecimal(ImpNetoGravado); } } } ////// Agrego Percepcionj Iva e Ingresos Brutos list.PercepIva = 0; list.PercepIngBrutos = 0; dataGridView1.Visible = true; listaSubCliente.Add(list); var contadortotal = listaSubCliente.Count; label4.Visible = true; label5.Visible = true; label4.Text = Convert.ToString(contadortotal); //ListaPrecargada = listaSubCliente; dataGridView1.Rows.Add(list.Fecha, list.TipoComprobante, list.NroFactura, list.TipoComprobante, list.Cuit, list.NombreProveedor, list.TipoDeCambio, list.CodigoMoneda, VARImpNetoGravado, VARImpNetoNoGravado, VARImpOpExentas, list.PercepIva, list.PercepIngBrutos, Iva, list.Monto); } ListaStatic = listaSubCliente; ValidarDiseñoGrilla(); btnCargaMasiva.Visible = true; Calculos(listaSubCliente); } } catch (Exception ex) { string message2 = ex.Message; const string caption2 = "Atención"; var result2 = MessageBox.Show(message2, caption2, MessageBoxButtons.OK, MessageBoxIcon.Exclamation); // MessageBox.Show(ex.Message); } }