- mejoras para emitir CCP3.0 con transporte internacional

This commit is contained in:
2024-04-23 18:50:28 -07:00
parent f787f8b855
commit ef09c62929
4 changed files with 39 additions and 10 deletions

View File

@@ -842,6 +842,7 @@ End Class
Public Class CFDICartaPorte Public Class CFDICartaPorte
Public Property TranspInternac As String = "No" Public Property TranspInternac As String = "No"
Public Property EntradaSalidaMercancia As String = "" Public Property EntradaSalidaMercancia As String = ""
Public Property PaisOrigenDestino As String = ""
Public Property ViaEntradaSalida As String = "" Public Property ViaEntradaSalida As String = ""
Public Property RegimenAduanero As String = "" Public Property RegimenAduanero As String = ""
Public Property RegistroISTMO As String = "" Public Property RegistroISTMO As String = ""

View File

@@ -6160,6 +6160,11 @@ Public Class ClsPaginas
Dim nodeCartaPorte As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:CartaPorte", PrefijoCCP), namespaces) Dim nodeCartaPorte As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:CartaPorte", PrefijoCCP), namespaces)
If nodeCartaPorte IsNot Nothing Then If nodeCartaPorte IsNot Nothing Then
TransporteInternacional = ValorXML(nodeCartaPorte, "TranspInternac", "") TransporteInternacional = ValorXML(nodeCartaPorte, "TranspInternac", "")
Dim CveTransporte As String = ValorXML(nodeCartaPorte, "ViaEntradaSalida", "")
'Dim nodeFiguraTransporte As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:FiguraTransporte", "cartaporte20"), namespaces)
'If nodeFiguraTransporte IsNot Nothing Then
MedioTransporte = String.Format("{0} - {1}", CveTransporte, HtTransporte(CveTransporte).ToString())
'End If
End If End If
Dim nodeAutotransporteFederal As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:Autotransporte", PrefijoCCP), namespaces) Dim nodeAutotransporteFederal As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:Autotransporte", PrefijoCCP), namespaces)
@@ -6202,11 +6207,7 @@ Public Class ClsPaginas
End If End If
End If End If
'Dim nodeFiguraTransporte As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:FiguraTransporte", "cartaporte20"), namespaces)
'If nodeFiguraTransporte IsNot Nothing Then
' Dim CveTransporte As String = ValorXML(nodeFiguraTransporte, "TipoFigura", "")
' MedioTransporte = String.Format("{0} - {1}", CveTransporte, HtTransporte(CveTransporte).ToString())
'End If
Dim nodeMercancias As XmlNodeList = nodeComp.SelectNodes(String.Format("//{0}:Mercancia", PrefijoCCP), namespaces) Dim nodeMercancias As XmlNodeList = nodeComp.SelectNodes(String.Format("//{0}:Mercancia", PrefijoCCP), namespaces)
For Each node As XmlNode In nodeMercancias For Each node As XmlNode In nodeMercancias

View File

@@ -1711,8 +1711,19 @@ Public Class Timbrado
Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte
Dim ComCartaPorte As ProfactCartaPorte.CartaPorte = New ProfactCartaPorte.CartaPorte Dim ComCartaPorte As ProfactCartaPorte.CartaPorte = New ProfactCartaPorte.CartaPorte
ComCartaPorte.TranspInternac = CType([Enum].Parse(GetType(ProfactCartaPorte.CartaPorteTranspInternac), Carta.TranspInternac), ProfactCartaPorte.CartaPorteTranspInternac) ComCartaPorte.TranspInternac = CType([Enum].Parse(GetType(ProfactCartaPorte.CartaPorteTranspInternac), Carta.TranspInternac), ProfactCartaPorte.CartaPorteTranspInternac)
ComCartaPorte.EntradaSalidaMercSpecified = False
ComCartaPorte.ViaEntradaSalidaSpecified = False ComCartaPorte.RegimenAduaneroSpecified = Carta.RegimenAduanero <> ""
If Carta.RegimenAduanero <> "" Then ComCartaPorte.RegimenAduanero = ProfactCartaPorte.c_RegimenAduanero.EXD
ComCartaPorte.EntradaSalidaMercSpecified = Carta.EntradaSalidaMercancia <> ""
If Carta.EntradaSalidaMercancia <> "" Then ComCartaPorte.EntradaSalidaMerc = ProfactCartaPorte.CartaPorteEntradaSalidaMerc.Salida
ComCartaPorte.ViaEntradaSalidaSpecified = Carta.ViaEntradaSalida <> ""
If Carta.ViaEntradaSalida <> "" Then ComCartaPorte.ViaEntradaSalida = ProfactCartaPorte.c_CveTransporte.Item01
ComCartaPorte.PaisOrigenDestinoSpecified = Carta.PaisOrigenDestino <> ""
If Carta.PaisOrigenDestino <> "" Then ComCartaPorte.PaisOrigenDestino = ProfactCartaPorte.c_Pais.USA
ComCartaPorte.TotalDistRecSpecified = True ComCartaPorte.TotalDistRecSpecified = True
ComCartaPorte.TotalDistRec = Carta.TotalDistanciaRecorrida ComCartaPorte.TotalDistRec = Carta.TotalDistanciaRecorrida
@@ -1794,6 +1805,11 @@ Public Class Timbrado
ComCartaPorte.Mercancias.Mercancia(i).MonedaSpecified = False ComCartaPorte.Mercancias.Mercancia(i).MonedaSpecified = False
ComCartaPorte.Mercancias.Mercancia(i).FraccionArancelariaSpecified = False ComCartaPorte.Mercancias.Mercancia(i).FraccionArancelariaSpecified = False
If concep.UUIDComercioExt <> "" Then ComCartaPorte.Mercancias.Mercancia(i).UUIDComercioExt = concep.UUIDComercioExt If concep.UUIDComercioExt <> "" Then ComCartaPorte.Mercancias.Mercancia(i).UUIDComercioExt = concep.UUIDComercioExt
If concep.TipoMateria <> "" Then
ComCartaPorte.Mercancias.Mercancia(i).TipoMateriaSpecified = True
ComCartaPorte.Mercancias.Mercancia(i).TipoMateria = ProfactCartaPorte.c_TipoMateria.Item01
If concep.TipoMateria = "05" Then ComCartaPorte.Mercancias.Mercancia(i).DescripcionMateria = concep.TipoMateriaDescripcion
End If
If concep.SectorCOFEPRIS <> "" Then If concep.SectorCOFEPRIS <> "" Then
'ComCartaPorte.Mercancias.Mercancia(i).SectorCOFEPRIS = concep.SectorCOFEPRIS 'ComCartaPorte.Mercancias.Mercancia(i).SectorCOFEPRIS = concep.SectorCOFEPRIS
@@ -2267,7 +2283,7 @@ Public Class Timbrado
Dim sbMsgLog As New StringBuilder Dim sbMsgLog As New StringBuilder
sbMsgLog.Append(xmlPrevio) sbMsgLog.Append(xmlPrevio)
sbMsgLog.Append("------------") sbMsgLog.Append("------------")
For Each msg As JProperty In Resultados For Each msg As JObject In Resultados
sbMsg.AppendFormat("{0}.<br/>", msg("Value")) sbMsg.AppendFormat("{0}.<br/>", msg("Value"))
sbMsgLog.AppendFormat("{0}-{1}<br/>", msg("Key"), msg("Value")) sbMsgLog.AppendFormat("{0}-{1}<br/>", msg("Key"), msg("Value"))
Next Next
@@ -2537,7 +2553,7 @@ concep.DescripcionesEspecificas.NumeroSerie)
Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte
''DATOS GENERALES ''DATOS GENERALES
cfdi.CartaPorte30("", Carta.TranspInternac, Carta.RegimenAduanero, Carta.EntradaSalidaMercancia, "", Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida, Carta.RegistroISTMO, Carta.UbicacionPoloOrigen, Carta.UbicacionPoloDestino) cfdi.CartaPorte30("", Carta.TranspInternac, Carta.RegimenAduanero, Carta.EntradaSalidaMercancia, Carta.PaisOrigenDestino, Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida, Carta.RegistroISTMO, Carta.UbicacionPoloOrigen, Carta.UbicacionPoloDestino)
'UBICACIONES 'UBICACIONES
If Carta.Ubicaciones IsNot Nothing AndAlso Carta.Ubicaciones.Count > 0 Then If Carta.Ubicaciones IsNot Nothing AndAlso Carta.Ubicaciones.Count > 0 Then
@@ -2558,7 +2574,7 @@ concep.DescripcionesEspecificas.NumeroSerie)
cfdi.CartaPorte30Mercancia(concep.BienesTransp, concep.ClaveSTCC, concep.Descripción, concep.Cantidad, concep.ClaveUnidad, concep.Unidad, concep.Dimensiones, concep.MaterialPeligroso, concep.ClaveMaterialPeligroso, If(concep.ClaveMaterialPeligroso <> "", concep.Embalaje, ""), If(concep.ClaveMaterialPeligroso <> "", concep.DescripEmbalaje, ""), cfdi.CartaPorte30Mercancia(concep.BienesTransp, concep.ClaveSTCC, concep.Descripción, concep.Cantidad, concep.ClaveUnidad, concep.Unidad, concep.Dimensiones, concep.MaterialPeligroso, concep.ClaveMaterialPeligroso, If(concep.ClaveMaterialPeligroso <> "", concep.Embalaje, ""), If(concep.ClaveMaterialPeligroso <> "", concep.DescripEmbalaje, ""),
concep.SectorCOFEPRIS, concep.NombreIngredienteActivo, concep.NomQuimico, concep.DenominacionGenericaProd, concep.DenominacionDistintivaProd, concep.Fabricante, concep.FechaCaducidad, concep.LoteMedicamento, concep.FormaFarmaceutica, concep.CondicionesEspTransp, concep.RegistroSanitarioFolioAutorizacion, concep.SectorCOFEPRIS, concep.NombreIngredienteActivo, concep.NomQuimico, concep.DenominacionGenericaProd, concep.DenominacionDistintivaProd, concep.Fabricante, concep.FechaCaducidad, concep.LoteMedicamento, concep.FormaFarmaceutica, concep.CondicionesEspTransp, concep.RegistroSanitarioFolioAutorizacion,
If(Carta.TranspInternac <> "No", concep.PermisoImportacion, ""), If(Carta.TranspInternac <> "No", concep.FolioImpoVUCEM, ""), concep.NumCAS, If(Carta.TranspInternac <> "No", concep.RazonSocialEmpImp, ""), concep.NumRegSanPlagCOFEPRIS, concep.DatosFabricante, concep.DatosFormulador, concep.DatosMaquilador, concep.UsoAutorizado, If(Carta.TranspInternac <> "No", concep.PermisoImportacion, ""), If(Carta.TranspInternac <> "No", concep.FolioImpoVUCEM, ""), concep.NumCAS, If(Carta.TranspInternac <> "No", concep.RazonSocialEmpImp, ""), concep.NumRegSanPlagCOFEPRIS, concep.DatosFabricante, concep.DatosFormulador, concep.DatosMaquilador, concep.UsoAutorizado,
concep.PesoenKg, concep.ValorMercancia, concep.Moneda, concep.FraccionArrancelaria, concep.UUIDComercioExt) concep.PesoenKg, concep.ValorMercancia, concep.Moneda, concep.FraccionArrancelaria, concep.UUIDComercioExt, concep.TipoMateria, If(concep.TipoMateria = "05", concep.TipoMateriaDescripcion, ""))
For Each transp As CFDICartaPorteMercanciaTransporta In concep.MercanciasCantidadTransporta For Each transp As CFDICartaPorteMercanciaTransporta In concep.MercanciasCantidadTransporta
cfdi.CartaPorte30CantidadTransporta(transp.Cantidad, transp.IDOrigen, transp.IDDestino, transp.CvesTransportes) cfdi.CartaPorte30CantidadTransporta(transp.Cantidad, transp.IDOrigen, transp.IDDestino, transp.CvesTransportes)
Next Next

View File

@@ -105,6 +105,7 @@ Public Class Timbres
Dim CartaPorte As New CFDICartaPorte Dim CartaPorte As New CFDICartaPorte
CartaPorte.TranspInternac = "No" CartaPorte.TranspInternac = "No"
CartaPorte.RegimenAduanero = ""
CartaPorte.EntradaSalidaMercancia = "" CartaPorte.EntradaSalidaMercancia = ""
CartaPorte.ViaEntradaSalida = "" CartaPorte.ViaEntradaSalida = ""
@@ -125,6 +126,16 @@ Public Class Timbres
Dim DtMovimientos As DataTable = Nothing Dim DtMovimientos As DataTable = Nothing
Dim drT As DataRow = ObjGrales.DtResultados.Rows(0) Dim drT As DataRow = ObjGrales.DtResultados.Rows(0)
CartaPorte.TranspInternac = drT("TranspInternacional").ToString
If CartaPorte.TranspInternac = "Sí" Then
CartaPorte.RegimenAduanero = drT("RegimenAduanero").ToString
CartaPorte.EntradaSalidaMercancia = drT("EntradaSalidaMercancia").ToString
CartaPorte.ViaEntradaSalida = drT("ViaEntradaSalida").ToString
CartaPorte.PaisOrigenDestino = drT("DirDesClaveSATPais").ToString
End If
Timbre.Receptor.RFC = drT("EmpresaRFC").ToString Timbre.Receptor.RFC = drT("EmpresaRFC").ToString
Timbre.Receptor.Nombre = drT("EmpresaNombre").ToString Timbre.Receptor.Nombre = drT("EmpresaNombre").ToString
Timbre.Receptor.DomicilioFiscalReceptor = drT("DomicilioFiscalReceptor").ToString Timbre.Receptor.DomicilioFiscalReceptor = drT("DomicilioFiscalReceptor").ToString