-- mejora en el caso de material peligroso, que no valla etiqueta seguro medio ambiente

This commit is contained in:
2022-05-07 13:42:34 -07:00
parent 53275c2388
commit 61e54bb9bc

View File

@@ -122,8 +122,8 @@ 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)
Timbre.Receptor.RFC = drT("RemitenteRFC").ToString Timbre.Receptor.RFC = drT("EmpresaRFC").ToString
Timbre.Receptor.Nombre = drT("RemitenteNombre").ToString Timbre.Receptor.Nombre = drT("EmpresaNombre").ToString
Timbre.Receptor.DomicilioFiscalReceptor = drT("DirDesCP").ToString Timbre.Receptor.DomicilioFiscalReceptor = drT("DirDesCP").ToString
Timbre.Receptor.RegimenFiscalReceptor = drT("CodigoRegimenFiscalReceptor").ToString Timbre.Receptor.RegimenFiscalReceptor = drT("CodigoRegimenFiscalReceptor").ToString
@@ -166,8 +166,14 @@ Public Class Timbres
CartaPorte.FiguraTransporte.AutoTransporte.NumPermisoSCT = drT("NumPermisoSCT").ToString CartaPorte.FiguraTransporte.AutoTransporte.NumPermisoSCT = drT("NumPermisoSCT").ToString
CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroResponsabilidadCivil = drT("NombreAseguradora").ToString CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroResponsabilidadCivil = drT("NombreAseguradora").ToString
CartaPorte.FiguraTransporte.AutoTransporte.PolizaSeguroResponsabilidadCivil = drT("NumPolizaSeguro").ToString CartaPorte.FiguraTransporte.AutoTransporte.PolizaSeguroResponsabilidadCivil = drT("NumPolizaSeguro").ToString
CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente = drT("NombreAseguradoraMedioAmbiente").ToString
CartaPorte.FiguraTransporte.AutoTransporte.PolizaSeguroMedioAmbiente = drT("NumPolizaSeguroMedioAmbiente").ToString If Obj.DtDetalle IsNot Nothing AndAlso Obj.DtDetalle.Rows.Count > 0 Then
If Obj.DtDetalle.MAX("ClaveMaterialPeligroso") <> "" Then
CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente = drT("NombreAseguradoraMedioAmbiente").ToString
CartaPorte.FiguraTransporte.AutoTransporte.PolizaSeguroMedioAmbiente = drT("NumPolizaSeguroMedioAmbiente").ToString
End If
End If
CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroCarga = drT("NombreAseguradoraCarga").ToString CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroCarga = drT("NombreAseguradoraCarga").ToString
CartaPorte.FiguraTransporte.AutoTransporte.PolizaSeguroCarga = drT("NumPolizaSeguroCarga").ToString CartaPorte.FiguraTransporte.AutoTransporte.PolizaSeguroCarga = drT("NumPolizaSeguroCarga").ToString
CartaPorte.FiguraTransporte.AutoTransporte.Vehiculo.ConfigVehicular = drT("ConfigCartaPorte").ToString CartaPorte.FiguraTransporte.AutoTransporte.Vehiculo.ConfigVehicular = drT("ConfigCartaPorte").ToString
@@ -204,104 +210,109 @@ Public Class Timbres
.Municipio = drT("DirDesClaveSATMunicipio").ToString, .Municipio = drT("DirDesClaveSATMunicipio").ToString,
.Localidad = drT("DirDesClaveSATLocalidad").ToString} .Localidad = drT("DirDesClaveSATLocalidad").ToString}
Dim NumRegIdTrib As String = ""
If drT("DestinatarioRFC").ToString.Contiene("XEXX010101000") Then ' cuando es Extranjero, debe de llevar un numregidtrib
NumRegIdTrib = "121585958"
End If
Dim Ubica As New CFDICartaPorteUbicacion Dim Ubica As New CFDICartaPorteUbicacion
Ubica.TipoEstacion = "" Ubica.TipoEstacion = ""
Ubica = New CFDICartaPorteUbicacion With {.TipoUbicacion = "Origen", .IDUbicacion = "OR000001", .RFCRemitenteDestinatario = drT("RemitenteRFC").ToString, Ubica = New CFDICartaPorteUbicacion With {.TipoUbicacion = "Origen", .IDUbicacion = "OR000001", .RFCRemitenteDestinatario = drT("RemitenteRFC").ToString,
.FechaHoraSalidaLlegada = FechaSalida.ToString("yyyy-MM-ddTHH:mm:ss"),' "2021-08-23T11:13:01", .FechaHoraSalidaLlegada = FechaSalida.ToString("yyyy-MM-ddTHH:mm:ss"),' "2021-08-23T11:13:01",
.NombreRemitenteDestinatario = drT("RemitenteNombre").ToString, .NombreRemitenteDestinatario = drT("RemitenteNombre").ToString,
.Domicilio = DomOrigen} .Domicilio = DomOrigen}
CartaPorte.Ubicaciones.Add(Ubica) CartaPorte.Ubicaciones.Add(Ubica)
Ubica = New CFDICartaPorteUbicacion With {.TipoUbicacion = "Destino", .IDUbicacion = "DE000001", .RFCRemitenteDestinatario = drT("DestinatarioRFC").ToString, Ubica = New CFDICartaPorteUbicacion With {.TipoUbicacion = "Destino", .IDUbicacion = "DE000001", .RFCRemitenteDestinatario = drT("DestinatarioRFC").ToString,
.FechaHoraSalidaLlegada = FechaLlegada.ToString("yyyy-MM-ddTHH:mm:ss"), .FechaHoraSalidaLlegada = FechaLlegada.ToString("yyyy-MM-ddTHH:mm:ss"),
.NombreRemitenteDestinatario = drT("DestinatarioNombre").ToString, .NombreRemitenteDestinatario = drT("DestinatarioNombre").ToString,
.Domicilio = DomDestino, .Domicilio = DomDestino,
.DistanciaRecorrida = Distancia} .DistanciaRecorrida = Distancia,
.NumRegIdTrib = NumRegIdTrib}
CartaPorte.Ubicaciones.Add(Ubica) CartaPorte.Ubicaciones.Add(Ubica)
CartaPorte.FiguraTransporte.ClaveTransporte = "01" CartaPorte.FiguraTransporte.ClaveTransporte = "01"
Dim DomicilioOperador As New CFDICartaPorteDomicilio With {.Calle = drT("FiguraDomicilio").ToString, Dim DomicilioOperador As New CFDICartaPorteDomicilio With {.Calle = drT("FiguraDomicilio").ToString,
.NumeroExterior = drT("FiguraNumeroExterior").ToString, .NumeroExterior = drT("FiguraNumeroExterior").ToString,
.NumeroInterior = drT("FiguraNumeroInterior").ToString, .NumeroInterior = drT("FiguraNumeroInterior").ToString,
.Colonia = drT("FiguraClaveSATColonia").ToString, .Colonia = drT("FiguraClaveSATColonia").ToString,
.Municipio = drT("FiguraClaveSATMunicipio").ToString, .Municipio = drT("FiguraClaveSATMunicipio").ToString,
.Estado = drT("FiguraClaveSATEstado").ToString, .Estado = drT("FiguraClaveSATEstado").ToString,
.CP = drT("FiguraCP").ToString} .CP = drT("FiguraCP").ToString}
CartaPorte.FiguraTransporte.Operadores.Add(New CFDICartaPorteOperador With { CartaPorte.FiguraTransporte.Operadores.Add(New CFDICartaPorteOperador With {
.RFCFigura = drT("FiguraRFC").ToString, .RFCFigura = drT("FiguraRFC").ToString,
.NombreFigura = drT("FiguraChofer").ToString, .NombreFigura = drT("FiguraChofer").ToString,
.NumLicencia = drT("FiguraLicencia").ToString, .NumLicencia = drT("FiguraLicencia").ToString,
.NumRegidTribFigura = drT("FiguraNumRegidTribFigura").ToString, .NumRegidTribFigura = drT("FiguraNumRegidTribFigura").ToString,
.ResidenciaFiscalFigura = drT("FiguraResidenciaFiscalFigura").ToString, .ResidenciaFiscalFigura = drT("FiguraResidenciaFiscalFigura").ToString,
.Domicilio = DomicilioOperador}) .Domicilio = DomicilioOperador})
'concepto único 'concepto único
Dim concepto As New CFDIConceptos With {.Cantidad = 1, Dim concepto As New CFDIConceptos With {.Cantidad = 1,
.Descripcion = "Traslado", .Descripcion = "Traslado",
.ValorUnitario = 0, .ValorUnitario = 0,
.Importe = 0, .Importe = 0,
.Descuento = 0, .Descuento = 0,
.Unidad = "Servicio", .Unidad = "Servicio",
.ClaveUnidad = "E48", .ClaveUnidad = "E48",
.ClaveProdServ = "78101802", .ClaveProdServ = "78101802",
.Noidentificacion = "", .Noidentificacion = "",
.CuentaPredial = ""} .CuentaPredial = ""}
Timbre.Conceptos.Add(concepto) Timbre.Conceptos.Add(concepto)
For Each drr As DataRow In Obj.DtDetalle.Rows For Each drr As DataRow In Obj.DtDetalle.Rows
If drr("PS").ToString.Length = 1 Then If drr("PS").ToString.Length = 1 Then
tPS = drr("Obs").ToString tPS = drr("Obs").ToString
Else
If drr("PS").ToString.Length = 0 Then
tPS = ""
Else Else
tPS = String.Format("{0} {1}", drr("PS"), drr("Obs")) If drr("PS").ToString.Length = 0 Then
tPS = ""
Else
tPS = String.Format("{0} {1}", drr("PS"), drr("Obs"))
End If
End If End If
End If Dim conceptoCarta As New CFDICartaPorteMercancia With {
Dim conceptoCarta As New CFDICartaPorteMercancia With { .BienesTransp = drr("SATClaveProdServ").ToString,
.BienesTransp = drr("SATClaveProdServ").ToString, .ClaveSTCC = "", 'para metodo ferroviario
.ClaveSTCC = "", 'para metodo ferroviario .Cantidad = drr("Cantidad").ToString.ToDecimal,
.Cantidad = drr("Cantidad").ToString.ToDecimal, .Descripción = tPS,
.Descripción = tPS, .ClaveUnidad = drr("SATClaveUM").ToString,
.ClaveUnidad = drr("SATClaveUM").ToString, .Unidad = drr("UM").ToString,
.Unidad = drr("UM").ToString, .Dimensiones = drr("Dimensiones").ToString,
.Dimensiones = drr("Dimensiones").ToString, .PesoenKg = drr("PesoKg").ToString.ToDecimal * drr("Cantidad").ToString.ToDecimal,
.PesoenKg = drr("PesoKg").ToString.ToDecimal * drr("Cantidad").ToString.ToDecimal, .MaterialPeligroso = If(drr("ClaveMaterialPeligroso").ToString <> "", "Sí", ""),
.MaterialPeligroso = If(drr("ClaveMaterialPeligroso").ToString <> "", "Sí", ""), .ClaveMaterialPeligroso = drr("ClaveMaterialPeligroso").ToString,
.ClaveMaterialPeligroso = drr("ClaveMaterialPeligroso").ToString, .Embalaje = drr("ClaveEmbalaje").ToString,
.Embalaje = drr("ClaveEmbalaje").ToString, .DescripEmbalaje = drr("Embalaje").ToString,
.DescripEmbalaje = drr("Embalaje").ToString, .ValorMercancia = drr("PU").ToString.ToDecimal,
.ValorMercancia = drr("PU").ToString.ToDecimal, .Moneda = "MXN", 'temporal
.Moneda = "MXN", 'temporal .FraccionArrancelaria = "",
.FraccionArrancelaria = "", .UUIDComercioExt = ""
.UUIDComercioExt = "" }
}
Dim DetalleMercancia As New CFDICartaPorteMercanciaDetalleMercancia With {.PesoNeto = drr("PesoKg").ToString.ToDecimal * drr("Cantidad").ToString.ToDecimal, .NumPiezas = drr("Cantidad").ToString.ToDecimal} Dim DetalleMercancia As New CFDICartaPorteMercanciaDetalleMercancia With {.PesoNeto = drr("PesoKg").ToString.ToDecimal * drr("Cantidad").ToString.ToDecimal, .NumPiezas = drr("Cantidad").ToString.ToDecimal}
conceptoCarta.DetalleMercancia = DetalleMercancia conceptoCarta.DetalleMercancia = DetalleMercancia
Dim MercanciaTransporta As New CFDICartaPorteMercanciaTransporta With {.Cantidad = drr("Cantidad").ToString.ToDecimal, .IDOrigen = "OR000001", .IDDestino = "DE000001"} Dim MercanciaTransporta As New CFDICartaPorteMercanciaTransporta With {.Cantidad = drr("Cantidad").ToString.ToDecimal, .IDOrigen = "OR000001", .IDDestino = "DE000001"}
conceptoCarta.MercanciasCantidadTransporta.Add(MercanciaTransporta) conceptoCarta.MercanciasCantidadTransporta.Add(MercanciaTransporta)
totSubTotal = totSubTotal - concepto.Importe totSubTotal = totSubTotal - concepto.Importe
CartaPorte.Mercancias.Mercancias.Add(conceptoCarta) CartaPorte.Mercancias.Mercancias.Add(conceptoCarta)
i += 1 i += 1
Next Next
Timbre.Complementos.CartaPorte = CartaPorte Timbre.Complementos.CartaPorte = CartaPorte
Else Else
'' T R A S L A D O S '' T R A S L A D O S
'DETALLES 'DETALLES
If Obj.DtDetalle IsNot Nothing Then If Obj.DtDetalle IsNot Nothing Then
For Each drr As DataRow In Obj.DtDetalle.Rows For Each drr As DataRow In Obj.DtDetalle.Rows
If drr("PS").ToString.Length = 1 Then If drr("PS").ToString.Length = 1 Then