コード例 #1
0
 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)
     { }
 }
コード例 #2
0
        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;
            }
        }
コード例 #3
0
        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);
            }
        }