Esempio n. 1
0
        private void CalcularDatosDelPrecioDeVenta(BEImpuesto prm_ImpuestoVTA, MovimientoAux prm_Movimiento, BEComprobanteEmisionDetalle prm_Detalle)
        {
            decimal nUnitPrecioSinIGV;
            decimal nUnitValorDescuento;
            decimal nUnitValorIGVs;

            if (prm_ImpuestoVTA.DiscriminaIGV)
            {
                nUnitValorDescuento = prm_Movimiento.monMontoPagado.Value * (0 / 100);
                nUnitValorIGVs      = (prm_Movimiento.monMontoPagado.Value - nUnitValorDescuento) - ((prm_Movimiento.monMontoPagado.Value - nUnitValorDescuento) / (1 + prm_ImpuestoVTA.Porcentaje));
                nUnitPrecioSinIGV   = ((prm_Movimiento.monMontoPagado.Value - nUnitValorDescuento) - nUnitValorIGVs);
            }
            else
            {
                nUnitValorDescuento = prm_Movimiento.monMontoPagado.Value * (0 / 100);
                nUnitValorIGVs      = (prm_Movimiento.monMontoPagado.Value - nUnitValorDescuento) * prm_ImpuestoVTA.Porcentaje;
                nUnitPrecioSinIGV   = prm_Movimiento.monMontoPagado.Value - nUnitValorDescuento;
            }

            prm_Detalle.UnitDescuento    = nUnitValorDescuento;
            prm_Detalle.UnitValorIGV     = nUnitValorIGVs;
            prm_Detalle.UnitPrecioSinIGV = nUnitPrecioSinIGV;

            decimal nUnitValorDscto = 0;

            if (prm_ImpuestoVTA.DiscriminaIGV)
            {
                nUnitValorDscto = nUnitValorDescuento;
            }
            else
            {
                nUnitValorDscto = nUnitValorDescuento;
            }

            prm_Detalle.UnitValorDscto = nUnitValorDscto;

            decimal nUnitValorVenta    = nUnitPrecioSinIGV;
            decimal nUnitValorIGV      = nUnitValorIGVs;
            decimal nTotItemValorIGV   = Helper.DecimalRound(nUnitValorIGV * 1, 2);
            decimal nTotItemValorBruto = Helper.DecimalRound((nUnitPrecioSinIGV + nUnitValorDscto) * 1, 2);
            decimal nTotItemValorVenta = Helper.DecimalRound(nUnitValorVenta * 1, 2);
            decimal nTotItemValorDscto = Helper.DecimalRound(nUnitValorDscto * 1, 2);
            decimal nTotItemTotalITEM  = (nTotItemValorBruto - nTotItemValorDscto) + nTotItemValorIGV;
            decimal nUnitPeso          = 0;
            decimal nPesoTotal         = Helper.DecimalRound(nUnitPeso * 1, 2);

            prm_Detalle.UnitValorVenta    = nUnitValorVenta;
            prm_Detalle.UnitValorIGV      = nUnitValorIGV;
            prm_Detalle.TotItemValorIGV   = nTotItemValorIGV;
            prm_Detalle.TotItemValorBruto = nTotItemValorBruto;
            prm_Detalle.TotItemValorVenta = nTotItemValorVenta;
            prm_Detalle.TotItemValorDscto = nTotItemValorDscto;
            prm_Detalle.PesoUnitario      = nUnitPeso;
            prm_Detalle.PesoTotal         = nPesoTotal;
        }
Esempio n. 2
0
        /// <summary>
        /// Almacena el registro de una ENTIDAD de registro de Tipo ComprobanteEmisionDetalle
        /// En la BASE de DATO la Tabla : [GestionComercial.ComprobanteEmisionDetalle]
        /// <summary>
        /// <param name = >itemComprobanteEmisionDetalle</param>
        public int?Insert(BEComprobanteEmisionDetalle comprobanteEmisionDetalle)
        {
            int?codigoRetorno = -1;

            try
            {
                using (_GestionComercialDataContext SQLDC = new _GestionComercialDataContext(conexion))
                {
                    SQLDC.omgc_I_DocumRegDetalle(
                        ref codigoRetorno,
                        comprobanteEmisionDetalle.codDocumReg,
                        comprobanteEmisionDetalle.CodigoItemDetalle,
                        comprobanteEmisionDetalle.codProducto,
                        comprobanteEmisionDetalle.CodigoArguUnidadMed,
                        Convert.ToByte(comprobanteEmisionDetalle.CantiDecimales),
                        comprobanteEmisionDetalle.IncluyeIGV,
                        comprobanteEmisionDetalle.CantidadPendente,
                        comprobanteEmisionDetalle.Cantidad,
                        comprobanteEmisionDetalle.UnitDescuento,
                        comprobanteEmisionDetalle.UnitValorCosto,
                        comprobanteEmisionDetalle.UnitPrecioBruto,
                        comprobanteEmisionDetalle.UnitPrecioSinIGV,
                        comprobanteEmisionDetalle.UnitValorDscto,
                        comprobanteEmisionDetalle.UnitValorVenta,
                        comprobanteEmisionDetalle.UnitValorIGV,
                        comprobanteEmisionDetalle.TotItemValorBruto,
                        comprobanteEmisionDetalle.TotItemValorDscto,
                        comprobanteEmisionDetalle.TotItemValorVenta,
                        comprobanteEmisionDetalle.TotItemValorIGV,
                        comprobanteEmisionDetalle.Descripcion,
                        comprobanteEmisionDetalle.CodigoArguTipoProducto,
                        comprobanteEmisionDetalle.EsVerificarStock,
                        comprobanteEmisionDetalle.CodigoCuenta,
                        comprobanteEmisionDetalle.CodigoArguDepositoAlm,
                        comprobanteEmisionDetalle.CodigoArguGarantiaProd == string.Empty ? null : comprobanteEmisionDetalle.CodigoArguGarantiaProd,
                        comprobanteEmisionDetalle.CodigoPartida,
                        comprobanteEmisionDetalle.CodigoCentroCosto,
                        comprobanteEmisionDetalle.CodigoListaPrecio,
                        comprobanteEmisionDetalle.codEmpleadoVendedor,
                        comprobanteEmisionDetalle.Valor_ITC,
                        comprobanteEmisionDetalle.Escanner,
                        comprobanteEmisionDetalle.SegUsuarioCrea,
                        comprobanteEmisionDetalle.PesoUnitario,
                        comprobanteEmisionDetalle.SegMaquina,
                        comprobanteEmisionDetalle.codTipoTributoISC,
                        comprobanteEmisionDetalle.mtoIscItem,
                        comprobanteEmisionDetalle.mtoBaseIscItem,
                        comprobanteEmisionDetalle.codTipoCalculoISC,
                        comprobanteEmisionDetalle.porIscItem,
                        comprobanteEmisionDetalle.codTipoTributoOtro,
                        comprobanteEmisionDetalle.mtoTriOtroItem,
                        comprobanteEmisionDetalle.mtoBaseTriOtroItem,
                        comprobanteEmisionDetalle.porTriOtroItem,
                        comprobanteEmisionDetalle.mtoValorReferencialUnitario,
                        comprobanteEmisionDetalle.gloObservacion);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(codigoRetorno);
        }