mejora en timbrado con impuestos a tasa cero

This commit is contained in:
2022-01-27 13:17:04 -07:00
parent 54116a4073
commit b6b5b4f2df
2 changed files with 68 additions and 61 deletions

View File

@@ -33,6 +33,13 @@ Public Class CFDITimbre
End Get End Get
End Property End Property
Public ReadOnly Property AplicaImpuestosTraslados As Boolean 'detecte si va la etiqueta de impuestos, aunque sea en cero
Get
Return (From c In Conceptos
Select c.Impuestos.Where(Function(tra) tra.TrasladooRetencion = "T" And tra.TipoFactor = "Tasa")).Count() > 0
End Get
End Property
Public ReadOnly Property Retenciones As List(Of CFDIRetenciones) Public ReadOnly Property Retenciones As List(Of CFDIRetenciones)
Get Get
Dim tRetorno As New List(Of CFDIRetenciones) Dim tRetorno As New List(Of CFDIRetenciones)

View File

@@ -868,7 +868,7 @@ Public Class Timbrado
Timbre.Comprobante.FormadePago = "" Timbre.Comprobante.FormadePago = ""
Timbre.Comprobante.CondicionesdePago = "" Timbre.Comprobante.CondicionesdePago = ""
Timbre.Comprobante.MetodoPago = "" Timbre.Comprobante.MetodoPago = ""
Timbre.Comprobante.Subtotal = 0 Timbre.Comprobante.SubTotal = 0
Timbre.Comprobante.Descuentos = 0 Timbre.Comprobante.Descuentos = 0
Timbre.Comprobante.Moneda = "XXX" Timbre.Comprobante.Moneda = "XXX"
Timbre.Comprobante.TipoCambio = "" Timbre.Comprobante.TipoCambio = ""
@@ -1094,7 +1094,7 @@ Public Class Timbrado
ObjCFDITimbre.Comprobante.Fecha, ObjCFDITimbre.Comprobante.Fecha,
ObjCFDITimbre.Comprobante.FormadePago, ObjCFDITimbre.Comprobante.FormadePago,
ObjCFDITimbre.Comprobante.CondicionesdePago, ObjCFDITimbre.Comprobante.CondicionesdePago,
ObjCFDITimbre.Comprobante.Subtotal, ObjCFDITimbre.Comprobante.SubTotal,
ObjCFDITimbre.Comprobante.Descuentos, ObjCFDITimbre.Comprobante.Descuentos,
ObjCFDITimbre.Comprobante.TipoCambio.ToDecimal, ObjCFDITimbre.Comprobante.TipoCambio.ToDecimal,
ObjCFDITimbre.Comprobante.Moneda, ObjCFDITimbre.Comprobante.Moneda,
@@ -1513,7 +1513,7 @@ Public Class Timbrado
ObjCFDITimbre.Comprobante.Fecha.ToString("yyyy-MM-ddTHH:mm:ss"), ObjCFDITimbre.Comprobante.Fecha.ToString("yyyy-MM-ddTHH:mm:ss"),
ObjCFDITimbre.Comprobante.FormadePago, ObjCFDITimbre.Comprobante.FormadePago,
ObjCFDITimbre.Comprobante.CondicionesdePago, ObjCFDITimbre.Comprobante.CondicionesdePago,
ObjCFDITimbre.Comprobante.Subtotal, ObjCFDITimbre.Comprobante.SubTotal,
ObjCFDITimbre.Comprobante.Descuentos, ObjCFDITimbre.Comprobante.Descuentos,
ObjCFDITimbre.Comprobante.Moneda, ObjCFDITimbre.Comprobante.Moneda,
ObjCFDITimbre.Comprobante.TipoCambio.ToString, ObjCFDITimbre.Comprobante.TipoCambio.ToString,
@@ -2106,7 +2106,7 @@ Public Class Timbrado
ObjCFDITimbre.Comprobante.Fecha.ToString("yyyy-MM-ddTHH:mm:ss"), ObjCFDITimbre.Comprobante.Fecha.ToString("yyyy-MM-ddTHH:mm:ss"),
ObjCFDITimbre.Comprobante.FormadePago, ObjCFDITimbre.Comprobante.FormadePago,
ObjCFDITimbre.Comprobante.CondicionesdePago, ObjCFDITimbre.Comprobante.CondicionesdePago,
ObjCFDITimbre.Comprobante.Subtotal, ObjCFDITimbre.Comprobante.SubTotal,
ObjCFDITimbre.Comprobante.Descuentos, ObjCFDITimbre.Comprobante.Descuentos,
ObjCFDITimbre.Comprobante.Moneda, ObjCFDITimbre.Comprobante.Moneda,
ObjCFDITimbre.Comprobante.TipoCambio.ToString, ObjCFDITimbre.Comprobante.TipoCambio.ToString,
@@ -2161,7 +2161,7 @@ Public Class Timbrado
#Region "Impuestos" #Region "Impuestos"
'SI NO ES FACTURA EN 0 AGREGA LOS IMPUESTOS 'SI NO ES FACTURA EN 0 AGREGA LOS IMPUESTOS
If Ventas.Total <> 0 And (ObjCFDITimbre.TotalImpuestosRetenidos > 0 OrElse ObjCFDITimbre.TotalImpuestosTrasladados > 0) Then If Ventas.Total <> 0 And (ObjCFDITimbre.TotalImpuestosRetenidos > 0 OrElse ObjCFDITimbre.AplicaImpuestosTraslados) Then
cfdi.Impuestos(ObjCFDITimbre.TotalImpuestosRetenidos, ObjCFDITimbre.TotalImpuestosTrasladados) cfdi.Impuestos(ObjCFDITimbre.TotalImpuestosRetenidos, ObjCFDITimbre.TotalImpuestosTrasladados)
End If End If
#End Region #End Region
@@ -2175,8 +2175,8 @@ Public Class Timbrado
Next Next
End If End If
'' si el importe de impuestos es mayor a cero o si es tasa con importe = 0, debe de ir el atributo
If ObjCFDITimbre.Traslados.Sum(Function(x) x.Importe) > 0 Then If ObjCFDITimbre.AplicaImpuestosTraslados Then
''se acumulan los importes ''se acumulan los importes
For Each Tras In ObjCFDITimbre.Traslados For Each Tras In ObjCFDITimbre.Traslados
cfdi.Traslado(Tras.Impuesto, Tras.TipoFactor, Tras.TasaOCuota, Tras.Importe) cfdi.Traslado(Tras.Impuesto, Tras.TipoFactor, Tras.TasaOCuota, Tras.Importe)