mejora en timbrado con impuestos a tasa cero
This commit is contained in:
@@ -33,6 +33,13 @@ Public Class CFDITimbre
|
||||
End Get
|
||||
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)
|
||||
Get
|
||||
Dim tRetorno As New List(Of CFDIRetenciones)
|
||||
|
||||
@@ -868,7 +868,7 @@ Public Class Timbrado
|
||||
Timbre.Comprobante.FormadePago = ""
|
||||
Timbre.Comprobante.CondicionesdePago = ""
|
||||
Timbre.Comprobante.MetodoPago = ""
|
||||
Timbre.Comprobante.Subtotal = 0
|
||||
Timbre.Comprobante.SubTotal = 0
|
||||
Timbre.Comprobante.Descuentos = 0
|
||||
Timbre.Comprobante.Moneda = "XXX"
|
||||
Timbre.Comprobante.TipoCambio = ""
|
||||
@@ -1094,7 +1094,7 @@ Public Class Timbrado
|
||||
ObjCFDITimbre.Comprobante.Fecha,
|
||||
ObjCFDITimbre.Comprobante.FormadePago,
|
||||
ObjCFDITimbre.Comprobante.CondicionesdePago,
|
||||
ObjCFDITimbre.Comprobante.Subtotal,
|
||||
ObjCFDITimbre.Comprobante.SubTotal,
|
||||
ObjCFDITimbre.Comprobante.Descuentos,
|
||||
ObjCFDITimbre.Comprobante.TipoCambio.ToDecimal,
|
||||
ObjCFDITimbre.Comprobante.Moneda,
|
||||
@@ -1513,7 +1513,7 @@ Public Class Timbrado
|
||||
ObjCFDITimbre.Comprobante.Fecha.ToString("yyyy-MM-ddTHH:mm:ss"),
|
||||
ObjCFDITimbre.Comprobante.FormadePago,
|
||||
ObjCFDITimbre.Comprobante.CondicionesdePago,
|
||||
ObjCFDITimbre.Comprobante.Subtotal,
|
||||
ObjCFDITimbre.Comprobante.SubTotal,
|
||||
ObjCFDITimbre.Comprobante.Descuentos,
|
||||
ObjCFDITimbre.Comprobante.Moneda,
|
||||
ObjCFDITimbre.Comprobante.TipoCambio.ToString,
|
||||
@@ -2106,7 +2106,7 @@ Public Class Timbrado
|
||||
ObjCFDITimbre.Comprobante.Fecha.ToString("yyyy-MM-ddTHH:mm:ss"),
|
||||
ObjCFDITimbre.Comprobante.FormadePago,
|
||||
ObjCFDITimbre.Comprobante.CondicionesdePago,
|
||||
ObjCFDITimbre.Comprobante.Subtotal,
|
||||
ObjCFDITimbre.Comprobante.SubTotal,
|
||||
ObjCFDITimbre.Comprobante.Descuentos,
|
||||
ObjCFDITimbre.Comprobante.Moneda,
|
||||
ObjCFDITimbre.Comprobante.TipoCambio.ToString,
|
||||
@@ -2161,7 +2161,7 @@ Public Class Timbrado
|
||||
|
||||
#Region "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)
|
||||
End If
|
||||
#End Region
|
||||
@@ -2175,8 +2175,8 @@ Public Class Timbrado
|
||||
Next
|
||||
End If
|
||||
|
||||
|
||||
If ObjCFDITimbre.Traslados.Sum(Function(x) x.Importe) > 0 Then
|
||||
'' si el importe de impuestos es mayor a cero o si es tasa con importe = 0, debe de ir el atributo
|
||||
If ObjCFDITimbre.AplicaImpuestosTraslados Then
|
||||
''se acumulan los importes
|
||||
For Each Tras In ObjCFDITimbre.Traslados
|
||||
cfdi.Traslado(Tras.Impuesto, Tras.TipoFactor, Tras.TasaOCuota, Tras.Importe)
|
||||
@@ -2189,45 +2189,45 @@ Public Class Timbrado
|
||||
|
||||
If ObjCFDITimbre.RetencionesLocales.Sum(Function(x) x.Importe) > 0 OrElse ObjCFDITimbre.TrasladosLocales.Sum(Function(x) x.Importe) > 0 Then
|
||||
|
||||
cfdi.ImpuestosLocales(ObjCFDITimbre.RetencionesLocales.Sum(Function(x) x.Importe), ObjCFDITimbre.TrasladosLocales.Sum(Function(x) x.Importe))
|
||||
cfdi.ImpuestosLocales(ObjCFDITimbre.RetencionesLocales.Sum(Function(x) x.Importe), ObjCFDITimbre.TrasladosLocales.Sum(Function(x) x.Importe))
|
||||
|
||||
For Each ret As CFDIRetencionesLocales In ObjCFDITimbre.RetencionesLocales
|
||||
If ret.Importe > 0 Then
|
||||
cfdi.RetencionLocal(ret.ImpuestoLocalRetenido, ret.TasaRetencion, ret.Importe)
|
||||
End If
|
||||
Next
|
||||
For Each ret As CFDIRetencionesLocales In ObjCFDITimbre.RetencionesLocales
|
||||
If ret.Importe > 0 Then
|
||||
cfdi.RetencionLocal(ret.ImpuestoLocalRetenido, ret.TasaRetencion, ret.Importe)
|
||||
End If
|
||||
Next
|
||||
|
||||
For Each ret As CFDITrasladosLocales In ObjCFDITimbre.TrasladosLocales
|
||||
If ret.Importe > 0 Then
|
||||
cfdi.TrasladoLocal(ret.ImpuestoLocalTraslado, ret.TasaTraslado, ret.Importe)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
For Each ret As CFDITrasladosLocales In ObjCFDITimbre.TrasladosLocales
|
||||
If ret.Importe > 0 Then
|
||||
cfdi.TrasladoLocal(ret.ImpuestoLocalTraslado, ret.TasaTraslado, ret.Importe)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
|
||||
If Ventas.CveComplementoTimbrado > 0 Then
|
||||
If Ventas.CveComplementoTimbrado > 0 Then
|
||||
|
||||
Select Case Ventas.CveComplementoTimbrado
|
||||
Case 5 'INE Proceso Ordinario Directivo Estatal"
|
||||
cfdi.Ine11("Ordinario", "Directivo Estatal", "0")
|
||||
Select Case Ventas.CveComplementoTimbrado
|
||||
Case 5 'INE Proceso Ordinario Directivo Estatal"
|
||||
cfdi.Ine11("Ordinario", "Directivo Estatal", "0")
|
||||
|
||||
cfdi.IneEntidad(Ventas.ComplementoINE.INEEntidad, "")
|
||||
cfdi.IneContabilidad(Ventas.ComplementoINE.INEIdContabilidad)
|
||||
Case 6 'INE Proceso Ordinario Ejecutivo Estatal"
|
||||
cfdi.Ine11("Ordinario", "Ejecutivo Estatal", "0")
|
||||
cfdi.IneEntidad(Ventas.ComplementoINE.INEEntidad, "")
|
||||
cfdi.IneContabilidad(Ventas.ComplementoINE.INEIdContabilidad)
|
||||
Case 6 'INE Proceso Ordinario Ejecutivo Estatal"
|
||||
cfdi.Ine11("Ordinario", "Ejecutivo Estatal", "0")
|
||||
|
||||
cfdi.IneEntidad(Ventas.ComplementoINE.INEEntidad, "")
|
||||
cfdi.IneContabilidad(Ventas.ComplementoINE.INEIdContabilidad)
|
||||
Case 7 'INE Proceso Ordinario Ejecutivo Nacional"
|
||||
cfdi.IneEntidad(Ventas.ComplementoINE.INEEntidad, "")
|
||||
cfdi.IneContabilidad(Ventas.ComplementoINE.INEIdContabilidad)
|
||||
Case 7 'INE Proceso Ordinario Ejecutivo Nacional"
|
||||
|
||||
cfdi.Ine11("Ordinario", "Ejecutivo Nacional", Ventas.ComplementoINE.INEIdContabilidad.ToString)
|
||||
Case 8 'INE PreCampaña
|
||||
cfdi.Ine11(Ventas.ComplementoINE.INETipoProceso, "", "0")
|
||||
cfdi.Ine11("Ordinario", "Ejecutivo Nacional", Ventas.ComplementoINE.INEIdContabilidad.ToString)
|
||||
Case 8 'INE PreCampaña
|
||||
cfdi.Ine11(Ventas.ComplementoINE.INETipoProceso, "", "0")
|
||||
|
||||
cfdi.IneEntidad(Ventas.ComplementoINE.INEEntidad, Ventas.ComplementoINE.INETipoComite)
|
||||
cfdi.IneContabilidad(Ventas.ComplementoINE.INEIdContabilidad)
|
||||
End Select
|
||||
cfdi.IneEntidad(Ventas.ComplementoINE.INEEntidad, Ventas.ComplementoINE.INETipoComite)
|
||||
cfdi.IneContabilidad(Ventas.ComplementoINE.INEIdContabilidad)
|
||||
End Select
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
@@ -2236,11 +2236,11 @@ Public Class Timbrado
|
||||
|
||||
#Region "Comercio Exterior"
|
||||
|
||||
If Ventas.Cliente.AplicaComercioExterior And ObjCFDITimbre.Complementos.ComercioExterior11.AplicaComercioExteriorSubProyecto Then
|
||||
If ObjCFDITimbre.Complementos.ComercioExterior11 IsNot Nothing Then
|
||||
If Ventas.Cliente.AplicaComercioExterior And ObjCFDITimbre.Complementos.ComercioExterior11.AplicaComercioExteriorSubProyecto Then
|
||||
If ObjCFDITimbre.Complementos.ComercioExterior11 IsNot Nothing Then
|
||||
|
||||
'DATOS GENERALES
|
||||
cfdi.ComercioExterior11(ObjCFDITimbre.Complementos.ComercioExterior11.MotivoTraslado,
|
||||
'DATOS GENERALES
|
||||
cfdi.ComercioExterior11(ObjCFDITimbre.Complementos.ComercioExterior11.MotivoTraslado,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.TipoOperacion,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.ClavedePedimento,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.CertificadoOrigen,
|
||||
@@ -2251,9 +2251,9 @@ Public Class Timbrado
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Observaciones,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.TipoCambioUSD,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.TotalUSD)
|
||||
'EMISOR
|
||||
cfdi.ComercioExterior11Emisor(If(EmisorRFC.Length >= 12, "", ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.CURP))
|
||||
cfdi.ComercioExterior11Domicilio(ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Calle,
|
||||
'EMISOR
|
||||
cfdi.ComercioExterior11Emisor(If(EmisorRFC.Length >= 12, "", ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.CURP))
|
||||
cfdi.ComercioExterior11Domicilio(ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Calle,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroExterior,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.NumeroInterior,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Colonia,
|
||||
@@ -2263,9 +2263,9 @@ Public Class Timbrado
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Estado,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.Pais,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Emisor.CP)
|
||||
'RECEPTOR
|
||||
cfdi.ComercioExterior11Receptor(ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumRegIdTrib)
|
||||
cfdi.ComercioExterior11DomicilioReceptor(ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Calle,
|
||||
'RECEPTOR
|
||||
cfdi.ComercioExterior11Receptor(ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumRegIdTrib)
|
||||
cfdi.ComercioExterior11DomicilioReceptor(ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Calle,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroExterior,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.NumeroInterior,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Colonia,
|
||||
@@ -2275,7 +2275,7 @@ Public Class Timbrado
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Estado,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.Pais,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Receptor.CP)
|
||||
cfdi.ComercioExterior11Destinatario(ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib,
|
||||
cfdi.ComercioExterior11Destinatario(ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumRegIdTrib,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Nombre,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Calle,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.NumeroExterior,
|
||||
@@ -2287,35 +2287,35 @@ Public Class Timbrado
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Estado,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.Pais,
|
||||
ObjCFDITimbre.Complementos.ComercioExterior11.Destinatario.CP)
|
||||
'MERCANCIAS
|
||||
If ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias IsNot Nothing AndAlso ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias.Count > 0 Then
|
||||
For Each concep As CFDIComercioExterior11Mercancias In ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias
|
||||
cfdi.ComercioExterior11Mercancia(concep.NoIdentificacion, concep.FraccionArancelaria, concep.CantidadAduana, concep.UnidadAduana, concep.ValorUnitarioAduana, concep.ValorDolares)
|
||||
If concep.DescripcionesEspecificas.Marca <> "" Then
|
||||
cfdi.ComercioExterior11MercanciaDescripcionesEspeciales(concep.DescripcionesEspecificas.Marca,
|
||||
'MERCANCIAS
|
||||
If ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias IsNot Nothing AndAlso ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias.Count > 0 Then
|
||||
For Each concep As CFDIComercioExterior11Mercancias In ObjCFDITimbre.Complementos.ComercioExterior11.Mercancias
|
||||
cfdi.ComercioExterior11Mercancia(concep.NoIdentificacion, concep.FraccionArancelaria, concep.CantidadAduana, concep.UnidadAduana, concep.ValorUnitarioAduana, concep.ValorDolares)
|
||||
If concep.DescripcionesEspecificas.Marca <> "" Then
|
||||
cfdi.ComercioExterior11MercanciaDescripcionesEspeciales(concep.DescripcionesEspecificas.Marca,
|
||||
concep.DescripcionesEspecificas.Modelo,
|
||||
concep.DescripcionesEspecificas.SubModelo,
|
||||
concep.DescripcionesEspecificas.NumeroSerie)
|
||||
End If
|
||||
Next
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
Next
|
||||
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
#End Region
|
||||
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
#Region "C O M P L E M E N T O C A R T A P O R T E"
|
||||
|
||||
|
||||
If ObjCFDITimbre.Complementos.CartaPorte IsNot Nothing Then
|
||||
If ObjCFDITimbre.Complementos.CartaPorte IsNot Nothing Then
|
||||
|
||||
Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte
|
||||
|
||||
|
||||
Reference in New Issue
Block a user