Ajustes en aplicación de anticipos
This commit is contained in:
@@ -11239,8 +11239,15 @@ Partial Class Ventas
|
|||||||
|
|
||||||
Dim tTipoAmortizacion As Integer = If(DdlTipoAmortizacionAnticipo.SelectedValue = "2", 1, 2)
|
Dim tTipoAmortizacion As Integer = If(DdlTipoAmortizacionAnticipo.SelectedValue = "2", 1, 2)
|
||||||
|
|
||||||
|
Dim ForzarAjuste As Boolean = False
|
||||||
|
|
||||||
DtImpuestos = CargaDtImpuestosNC(gvrt.DataKey("CveVenta").ToString().ToEntero(), gvrt.FCTextBox(String.Format("TxtAnticipo{0}", gvrt.RowIndex)).Text.ToDecimal, AplicaImpuestosLocales:=True, NCDescuento:=False, NivelTotal:=tTipoAmortizacion)
|
'EL IMPORTE DE NC NO PUEDE SER MAYOR AL DE LA FACTURA
|
||||||
|
If UsuarioActual.Empresa.Funcionalidad(558) = "1" AndAlso (tTipoAmortizacion = 1) Then
|
||||||
|
ForzarAjuste = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
'SI LA APLICACION DE ANTICIPO SE HACE A NIVEL TOTAL, FORZAR EL AJUSTE POR REDONDEO
|
||||||
|
DtImpuestos = CargaDtImpuestosNC(gvrt.DataKey("CveVenta").ToString().ToEntero(), gvrt.FCTextBox(String.Format("TxtAnticipo{0}", gvrt.RowIndex)).Text.ToDecimal, AplicaImpuestosLocales:=True, NCDescuento:=False, NivelTotal:=tTipoAmortizacion, ForzarAjuste:=ForzarAjuste)
|
||||||
|
|
||||||
Dim query = From ddr In DtImpuestos
|
Dim query = From ddr In DtImpuestos
|
||||||
Group By PorcentajeIVA = ddr("PorcentajeIVA").ToString().ToDecimal,
|
Group By PorcentajeIVA = ddr("PorcentajeIVA").ToString().ToDecimal,
|
||||||
@@ -11251,9 +11258,9 @@ Partial Class Ventas
|
|||||||
Select ImportePU = x.Sum(Function(s) s("ImportePU").ToString().ToDecimal),
|
Select ImportePU = x.Sum(Function(s) s("ImportePU").ToString().ToDecimal),
|
||||||
ImporteTotal = x.Sum(Function(s) s("ImporteTotal").ToString().ToDecimal),
|
ImporteTotal = x.Sum(Function(s) s("ImporteTotal").ToString().ToDecimal),
|
||||||
ImporteIVA = x.Sum(Function(s) (s("ImporteIVA").ToString().ToDecimal)).RoundSQL(2), ' Math.Round(s("ImporteIVA").ToString().ToDecimal, 2)) * (1 + PorcentajeIEPS) * PorcentajeIVA,
|
ImporteIVA = x.Sum(Function(s) (s("ImporteIVA").ToString().ToDecimal)).RoundSQL(2), ' Math.Round(s("ImporteIVA").ToString().ToDecimal, 2)) * (1 + PorcentajeIEPS) * PorcentajeIVA,
|
||||||
ImporteRetIVA = x.Sum(Function(s) Math.Round(s("ImporteRetIVA").ToString().ToDecimal, 2)),' Math.Round(s("ImportePU").ToString().ToDecimal, 2)) * PorcentajeRetIVA,
|
ImporteRetIVA = x.Sum(Function(s) s("ImporteRetIVA").ToString().ToDecimal()).RoundSQL(2),' Math.Round(s("ImportePU").ToString().ToDecimal, 2)) * PorcentajeRetIVA,
|
||||||
ImporteRetISR = x.Sum(Function(s) Math.Round(s("ImporteRetISR").ToString().ToDecimal, 2)),' Math.Round(s("ImportePU").ToString().ToDecimal, 2)) * PorcentajeRetISR,
|
ImporteRetISR = x.Sum(Function(s) s("ImporteRetISR").ToString().ToDecimal()).RoundSQL(2),' Math.Round(s("ImportePU").ToString().ToDecimal, 2)) * PorcentajeRetISR,
|
||||||
ImporteIEPS = x.Sum(Function(s) Math.Round(s("ImporteIEPS").ToString().ToDecimal, 2)), 'Math.Round(s("ImportePU").ToString().ToDecimal, 2)) * PorcentajeIEPS,
|
ImporteIEPS = x.Sum(Function(s) s("ImporteIEPS").ToString().ToDecimal()).RoundSQL(2), 'Math.Round(s("ImportePU").ToString().ToDecimal, 2)) * PorcentajeIEPS,
|
||||||
PorcentajeIVA = PorcentajeIVA,
|
PorcentajeIVA = PorcentajeIVA,
|
||||||
PorcentajeRetIVA = PorcentajeRetIVA,
|
PorcentajeRetIVA = PorcentajeRetIVA,
|
||||||
PorcentajeRetISR = PorcentajeRetISR,
|
PorcentajeRetISR = PorcentajeRetISR,
|
||||||
@@ -11303,13 +11310,13 @@ Partial Class Ventas
|
|||||||
'**** IMPUESTOS LOCALES
|
'**** IMPUESTOS LOCALES
|
||||||
|
|
||||||
factura.DtDetalle = tmpcon
|
factura.DtDetalle = tmpcon
|
||||||
Dim TotalSubTotal As Decimal = tmpcon.SUM("TotalImporte").ToDecimal
|
Dim TotalSubTotal As Decimal = tmpcon.SUMD("TotalImporte").RoundSQL(2)
|
||||||
Dim TotalDescuentos As Decimal = tmpcon.SUM("Descuento").ToDecimal
|
Dim TotalDescuentos As Decimal = tmpcon.SUMD("Descuento")
|
||||||
|
|
||||||
Dim TotalIVA As Decimal = tmpcon.SUM("ImporteIVA").ToDecimal
|
Dim TotalIVA As Decimal = tmpcon.SUMD("ImporteIVA")
|
||||||
Dim TotalIEPS As Decimal = tmpcon.SUM("ImporteIEPS").ToDecimal
|
Dim TotalIEPS As Decimal = tmpcon.SUMD("ImporteIEPS")
|
||||||
Dim TotalRetIVA As Decimal = tmpcon.SUM("ImporteRetIVA").ToDecimal
|
Dim TotalRetIVA As Decimal = tmpcon.SUMD("ImporteRetIVA")
|
||||||
Dim TotalRetISR As Decimal = tmpcon.SUM("ImporteRetISR").ToDecimal
|
Dim TotalRetISR As Decimal = tmpcon.SUMD("ImporteRetISR")
|
||||||
Dim Total As Decimal = 0
|
Dim Total As Decimal = 0
|
||||||
Dim TotalImpuestosLocales As Decimal = factura.TotalImpuestoLocal.ToString().ToDecimal
|
Dim TotalImpuestosLocales As Decimal = factura.TotalImpuestoLocal.ToString().ToDecimal
|
||||||
Total = (TotalSubTotal - TotalDescuentos + TotalIVA + TotalIEPS - TotalRetIVA - TotalRetISR - TotalImpuestosLocales)
|
Total = (TotalSubTotal - TotalDescuentos + TotalIVA + TotalIEPS - TotalRetIVA - TotalRetISR - TotalImpuestosLocales)
|
||||||
@@ -11343,6 +11350,9 @@ Partial Class Ventas
|
|||||||
|
|
||||||
Else
|
Else
|
||||||
ErrorList.Add("No se encontró un producto para generar la nota de crédito")
|
ErrorList.Add("No se encontró un producto para generar la nota de crédito")
|
||||||
|
If DtVentasNC IsNot Nothing AndAlso DtVentasNC.Rows.Count > 0 Then
|
||||||
|
DtVentasNC.Rows.Clear()
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@@ -23659,8 +23669,9 @@ Partial Class Ventas
|
|||||||
End If
|
End If
|
||||||
End Using
|
End Using
|
||||||
|
|
||||||
|
'SI TIENE UN ANTICIPO RELACIONADO O VIENE DE UNA REFACTURACION
|
||||||
If RowVentas IsNot Nothing Then
|
If RowVentas IsNot Nothing Then
|
||||||
If RowVentas("TipoDocto").ToString().Contiene("Ing") AndAlso DdlTipoComprobante.SelectedValue = "Ing" Then
|
If RowVentas("TipoDocto").ToString().Contiene("Ing", "Ant") AndAlso DdlTipoComprobante.SelectedValue = "Ing" Then
|
||||||
CargaInventario(Me.CveVenta)
|
CargaInventario(Me.CveVenta)
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
@@ -29997,7 +30008,7 @@ Partial Class Ventas
|
|||||||
|
|
||||||
Next
|
Next
|
||||||
End Sub
|
End Sub
|
||||||
Private Function CargaDtImpuestosNC(CveVentaNC As Integer, Importe As Decimal, Optional NCDescuento As Boolean = False, Optional AplicaImpuestosLocales As Boolean = True, Optional NivelTotal As Integer = 1, Optional AplicaNCUsado As Boolean = False) As DataTable
|
Private Function CargaDtImpuestosNC(CveVentaNC As Integer, Importe As Decimal, Optional NCDescuento As Boolean = False, Optional AplicaImpuestosLocales As Boolean = True, Optional NivelTotal As Integer = 1, Optional AplicaNCUsado As Boolean = False, Optional ForzarAjuste As Boolean = False) As DataTable
|
||||||
Dim Total As Decimal = 0, SubTotal As Decimal = 0, Saldo As Decimal = 0
|
Dim Total As Decimal = 0, SubTotal As Decimal = 0, Saldo As Decimal = 0
|
||||||
|
|
||||||
Dim TmpDT As DataTable = Nothing
|
Dim TmpDT As DataTable = Nothing
|
||||||
@@ -30115,6 +30126,24 @@ Partial Class Ventas
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
'SI LA DIFERENCIA ES MENOR O IGUAL A 1 CENTAVO, AJUSTAR EL TOTAL
|
||||||
|
If ForzarAjuste Then
|
||||||
|
'ASUSTO LA DIFERENCIA EN LOS IMPUESTOS
|
||||||
|
Dim difTmp As Decimal = Importe - importeNC
|
||||||
|
If Math.Abs(difTmp) > 0.00D AndAlso Math.Abs(difTmp) <= 0.01D Then
|
||||||
|
'SI TIENE IVA, AJUSTAR AQUI
|
||||||
|
If DtImpuestosLocal.Rows(DtImpuestosLocal.Rows.Count - 1)("ImporteIVA").ToString().ToDecimal() > 0 Then
|
||||||
|
Dim ImporteIVAAjustado As Decimal = DtImpuestosLocal.Rows(DtImpuestosLocal.Rows.Count - 1)("ImporteIVA").ToString().ToDecimal + difTmp
|
||||||
|
DtImpuestosLocal.Rows(DtImpuestosLocal.Rows.Count - 1)("ImporteIVA") = ImporteIVAAjustado
|
||||||
|
Else
|
||||||
|
Dim ImporteAjustado As Decimal = DtImpuestosLocal.Rows(DtImpuestosLocal.Rows.Count - 1)("ImporteTotal").ToString().ToDecimal + difTmp
|
||||||
|
DtImpuestosLocal.Rows(DtImpuestosLocal.Rows.Count - 1)("ImporteTotal") = ImporteAjustado
|
||||||
|
DtImpuestosLocal.Rows(DtImpuestosLocal.Rows.Count - 1)("ImportePU") = ImporteAjustado
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
If Not NCDescuento Then
|
If Not NCDescuento Then
|
||||||
Me.TmpDT = TmpDT
|
Me.TmpDT = TmpDT
|
||||||
End If
|
End If
|
||||||
|
|||||||
Reference in New Issue
Block a user