- corrección mejora Rev. B

This commit is contained in:
2024-02-10 08:56:16 -07:00
parent d1fc3c4666
commit 1d9f072bec

View File

@@ -9,6 +9,7 @@ Imports System.Reflection
Imports System.Xml Imports System.Xml
Imports System.Xml.Serialization Imports System.Xml.Serialization
Imports Extensiones Imports Extensiones
Imports External.Office
Imports Newtonsoft.Json.Linq Imports Newtonsoft.Json.Linq
Imports Profact.TimbraCFDI33.Complementos Imports Profact.TimbraCFDI33.Complementos
Imports ProfactCartaPorte = Profact.TimbraCFDI33.Complementos.CartaPorte30 Imports ProfactCartaPorte = Profact.TimbraCFDI33.Complementos.CartaPorte30
@@ -2465,36 +2466,36 @@ Public Class Timbrado
'DATOS GENERALES 'DATOS GENERALES
cfdi.ComercioExterior20(ObjCFDITimbre.Complementos.ComercioExterior.MotivoTraslado, cfdi.ComercioExterior20(ObjCFDITimbre.Complementos.ComercioExterior.MotivoTraslado,
ObjCFDITimbre.Complementos.ComercioExterior.ClavedePedimento, ObjCFDITimbre.Complementos.ComercioExterior.ClavedePedimento,
ObjCFDITimbre.Complementos.ComercioExterior.CertificadoOrigen, ObjCFDITimbre.Complementos.ComercioExterior.CertificadoOrigen,
ObjCFDITimbre.Complementos.ComercioExterior.NumCertificadoOrigen, ObjCFDITimbre.Complementos.ComercioExterior.NumCertificadoOrigen,
ObjCFDITimbre.Complementos.ComercioExterior.NumeroExportadorConfiable, ObjCFDITimbre.Complementos.ComercioExterior.NumeroExportadorConfiable,
ObjCFDITimbre.Complementos.ComercioExterior.Incoterm, ObjCFDITimbre.Complementos.ComercioExterior.Incoterm,
ObjCFDITimbre.Complementos.ComercioExterior.Observaciones, ObjCFDITimbre.Complementos.ComercioExterior.Observaciones,
ObjCFDITimbre.Complementos.ComercioExterior.TipoCambioUSD, ObjCFDITimbre.Complementos.ComercioExterior.TipoCambioUSD,
ObjCFDITimbre.Complementos.ComercioExterior.TotalUSD) ObjCFDITimbre.Complementos.ComercioExterior.TotalUSD)
'EMISOR 'EMISOR
cfdi.ComercioExterior20Emisor(If(EmisorRFC.Length >= 12, "", ObjCFDITimbre.Complementos.ComercioExterior.Emisor.CURP)) cfdi.ComercioExterior20Emisor(If(EmisorRFC.Length >= 12, "", ObjCFDITimbre.Complementos.ComercioExterior.Emisor.CURP))
cfdi.ComercioExterior20Domicilio(ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Calle, cfdi.ComercioExterior20Domicilio(ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Calle,
ObjCFDITimbre.Complementos.ComercioExterior.Emisor.NumeroExterior, ObjCFDITimbre.Complementos.ComercioExterior.Emisor.NumeroExterior,
ObjCFDITimbre.Complementos.ComercioExterior.Emisor.NumeroInterior, ObjCFDITimbre.Complementos.ComercioExterior.Emisor.NumeroInterior,
ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Colonia, ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Colonia,
ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Localidad, ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Localidad,
ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Referencia, ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Referencia,
ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Municipio, ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Municipio,
ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Estado, ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Estado,
ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Pais, ObjCFDITimbre.Complementos.ComercioExterior.Emisor.Pais,
ObjCFDITimbre.Complementos.ComercioExterior.Emisor.CP) ObjCFDITimbre.Complementos.ComercioExterior.Emisor.CP)
'RECEPTOR 'RECEPTOR
cfdi.ComercioExterior20Receptor(ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumRegIdTrib) cfdi.ComercioExterior20Receptor(ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumRegIdTrib)
cfdi.ComercioExterior20DomicilioReceptor(ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Calle, cfdi.ComercioExterior20DomicilioReceptor(ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Calle,
ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumeroExterior, ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumeroExterior,
ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumeroInterior, ObjCFDITimbre.Complementos.ComercioExterior.Receptor.NumeroInterior,
ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Colonia, ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Colonia,
ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Localidad, ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Localidad,
ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Referencia, ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Referencia,
ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Municipio, ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Municipio,
ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Estado, ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Estado,
ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Pais, ObjCFDITimbre.Complementos.ComercioExterior.Receptor.Pais,
ObjCFDITimbre.Complementos.ComercioExterior.Receptor.CP) ObjCFDITimbre.Complementos.ComercioExterior.Receptor.CP)
@@ -2520,28 +2521,23 @@ Public Class Timbrado
cfdi.ComercioExterior20Mercancia(concep.NoIdentificacion, concep.FraccionArancelaria, concep.CantidadAduana, concep.UnidadAduana, concep.ValorUnitarioAduana, concep.ValorDolares) cfdi.ComercioExterior20Mercancia(concep.NoIdentificacion, concep.FraccionArancelaria, concep.CantidadAduana, concep.UnidadAduana, concep.ValorUnitarioAduana, concep.ValorDolares)
If concep.DescripcionesEspecificas.Marca <> "" Then If concep.DescripcionesEspecificas.Marca <> "" Then
cfdi.ComercioExterior20MercanciaDescripcionesEspeciales(concep.DescripcionesEspecificas.Marca, cfdi.ComercioExterior20MercanciaDescripcionesEspeciales(concep.DescripcionesEspecificas.Marca,
concep.DescripcionesEspecificas.Modelo, concep.DescripcionesEspecificas.Modelo,
concep.DescripcionesEspecificas.SubModelo, concep.DescripcionesEspecificas.SubModelo,
concep.DescripcionesEspecificas.NumeroSerie) concep.DescripcionesEspecificas.NumeroSerie)
End If End If
Next Next
End If
End If End If
End If End If
End If
#End Region #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" #Region "C O M P L E M E N T O C A R T A P O R T E"
If UsuarioActual.CveEmpresa = 13 Then If UsuarioActual.CveEmpresa = 13 Then
If ObjCFDITimbre.Complementos.CartaPorte IsNot Nothing Then If ObjCFDITimbre.Complementos.CartaPorte IsNot Nothing Then
Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte
''DATOS GENERALES ''DATOS GENERALES
@@ -2555,7 +2551,6 @@ Public Class Timbrado
'cfdi.CartaPorteOrigen(ubica.Origen.IDOrigen, ubica.Origen.RFCRemitente, ubica.Origen.NombreRemitente, ubica.NumRegIdTrib, ubica.Origen.ResidenciaFiscal, ubica.Origen.NumEstacion, ubica.Origen.NombreEstacion, ubica.Origen.NavegacionTrafico, ubica.Origen.FechaHoraSalida) 'cfdi.CartaPorteOrigen(ubica.Origen.IDOrigen, ubica.Origen.RFCRemitente, ubica.Origen.NombreRemitente, ubica.NumRegIdTrib, ubica.Origen.ResidenciaFiscal, ubica.Origen.NumEstacion, ubica.Origen.NombreEstacion, ubica.Origen.NavegacionTrafico, ubica.Origen.FechaHoraSalida)
cfdi.CartaPorteDomicilio(ubica.Domicilio.Calle, ubica.Domicilio.NumeroExterior, ubica.Domicilio.NumeroInterior, ubica.Domicilio.Colonia, ubica.Domicilio.Localidad, ubica.Domicilio.Referencia, ubica.Domicilio.Municipio, ubica.Domicilio.Estado, ubica.Domicilio.Pais, ubica.Domicilio.CP) cfdi.CartaPorteDomicilio(ubica.Domicilio.Calle, ubica.Domicilio.NumeroExterior, ubica.Domicilio.NumeroInterior, ubica.Domicilio.Colonia, ubica.Domicilio.Localidad, ubica.Domicilio.Referencia, ubica.Domicilio.Municipio, ubica.Domicilio.Estado, ubica.Domicilio.Pais, ubica.Domicilio.CP)
Next Next
End If End If
'MERCANCIAS 'MERCANCIAS
@@ -2697,6 +2692,11 @@ Public Class Timbrado
For Each docp As CFDIComplementoPago In ObjCFDITimbre.ComplementoPagos20.ComplementoPagos For Each docp As CFDIComplementoPago In ObjCFDITimbre.ComplementoPagos20.ComplementoPagos
Dim MonDiferente As Integer = (From c In docp.DocumentosRelacionados
Where c.MonedaDR <> docp.MonedaP
Select c.MonedaDR).Count()
If MonDiferente > 0 Then cfdi.ContieneVariasMonedas = True 'consideración adicional Rev. B
cfdi.Pago20(docp.FechaPago.ToString("yyyy-MM-ddTHH:mm:ss"), cfdi.Pago20(docp.FechaPago.ToString("yyyy-MM-ddTHH:mm:ss"),
docp.FormaDePagoP, docp.FormaDePagoP,
docp.MonedaP, docp.MonedaP,
@@ -2727,7 +2727,7 @@ Public Class Timbrado
doc.ImpSaldoInsoluto, doc.ImpSaldoInsoluto,
doc.ObjetoImpuesto) doc.ObjetoImpuesto)
If doc.MonedaDR <> docp.MonedaP Then cfdi.ContieneVariasMonedas = True 'consideración adicional Rev. B 'If doc.MonedaDR <> docp.MonedaP Then cfdi.ContieneVariasMonedas = True 'consideración adicional Rev. B
If doc.Impuestos IsNot Nothing Then If doc.Impuestos IsNot Nothing Then
''retenciones ''retenciones