-- correcciónes
This commit is contained in:
@@ -240,576 +240,6 @@ Partial Class PopUpVerFactura
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
'temporal
|
||||
|
||||
Protected Sub ImprimeFormatoCartaPorteTimbrado(CveTimbre As Integer)
|
||||
Dim resp As Modelos.MSubReportData = PreParaImpresionCartaPorte(CveTimbre)
|
||||
If resp.DataSources.Count > 0 AndAlso resp.Parametros.Count > 0 Then
|
||||
ImprimirPDF("Empresas/Grales/Formatos/CartaPorteTimbrado.rdlc", resp.DataSources, resp.Parametros, resp.SerieFolio)
|
||||
End If
|
||||
End Sub
|
||||
Private Function PreParaImpresionCartaPorte(CveTimbre As Integer, Optional AplicaSubReporte As Boolean = False) As Modelos.MSubReportData
|
||||
Dim retorno As New Modelos.MSubReportData
|
||||
retorno.Nombre = "CartaPorte"
|
||||
Try
|
||||
If CveTimbre > 0 Then
|
||||
Dim params As New List(Of ReportParameter)
|
||||
'01 Autotransporte Federal
|
||||
'02 Transporte Marítimo
|
||||
'03 Transporte Aéreo
|
||||
'04 Transporte Ferroviario
|
||||
'05 Ducto
|
||||
Dim HtTransporte As New Hashtable()
|
||||
HtTransporte.Add("01", "Autotransporte Federal")
|
||||
HtTransporte.Add("02", "Transporte Marítimo")
|
||||
HtTransporte.Add("03", "Transporte Aéreo")
|
||||
HtTransporte.Add("04", "Transporte Ferroviario")
|
||||
HtTransporte.Add("05", "Ducto")
|
||||
|
||||
'EMISOR
|
||||
Dim LugarExpedicion As String = ""
|
||||
Dim ImgCBB As String = ""
|
||||
Dim ImgCCP As String = ""
|
||||
'COMPROBANTE
|
||||
Dim SerieFolio As String = ""
|
||||
Dim Telefono As String = ""
|
||||
Dim SubTotal As Decimal = 0
|
||||
Dim Descuentos As Decimal = 0
|
||||
Dim Total As Decimal = 0
|
||||
'DATOS DEL CLIENTE
|
||||
Dim ClienteRFC As String = ""
|
||||
Dim ClienteNombre As String = ""
|
||||
Dim ClienteUsoCFDi As String = ""
|
||||
|
||||
'TRANSPORTE
|
||||
Dim MedioTransporte As String = ""
|
||||
Dim TransporteInternacional As String = ""
|
||||
Dim PermisoSTCC As String = ""
|
||||
Dim NumPermiso As String = ""
|
||||
Dim AseguradoraRespCivil As String = ""
|
||||
Dim NumPolizaSeguroRespCivil As String = ""
|
||||
Dim NombreAseguradoraMedioAmbiente As String = ""
|
||||
Dim NumPolizaSeguroMedioAmbiente As String = ""
|
||||
Dim NombreAseguradoraCarga As String = ""
|
||||
Dim NumPolizaSeguroCarga As String = ""
|
||||
|
||||
Dim RemolquePlaca1 As String = ""
|
||||
Dim RemolquePlaca2 As String = ""
|
||||
Dim RemolqueSubtimo1 As String = ""
|
||||
Dim RemolqueSubtimo2 As String = ""
|
||||
|
||||
Dim PlacaVM As String = ""
|
||||
Dim AnioModeloVM As String = ""
|
||||
Dim PesoBrutoVehicular As String = ""
|
||||
'TIMBRADO
|
||||
Dim FolioFiscal As String = ""
|
||||
Dim NoCertificadoSAT As String = ""
|
||||
Dim CadenaOriginal As String = ""
|
||||
Dim NoSerieCertificado As String = ""
|
||||
Dim FechaCertificacion As DateTime = Nothing
|
||||
Dim SelloCFDi As String = ""
|
||||
Dim SelloSAT As String = ""
|
||||
Dim TipoDocto As String = ""
|
||||
Dim PermisoSCTR1 As String = ""
|
||||
Dim PermisoSCTR2 As String = ""
|
||||
Dim ConfATR1 As String = ""
|
||||
Dim ConfATR2 As String = ""
|
||||
Dim ObjInv As New ClsGenerales
|
||||
|
||||
If ObjInv.GetGralTimbre(CveTimbre, "-1", MinFecha, MaxFecha, -1, UsuarioActual.CveEmpresa, -1) Then
|
||||
If ObjInv.DtResultados.Rows.Count > 0 Then
|
||||
Dim Dr As DataRow = ObjInv.DtResultados.Rows(0)
|
||||
If Dr IsNot Nothing Then
|
||||
SerieFolio = Dr("SerieFolio").ToString
|
||||
Telefono = Dr("FiguraTelefono").ToString
|
||||
TipoDocto = Dr("TipoDocto").ToString
|
||||
|
||||
If UsuarioActual.CveEmpresa = 13 Then
|
||||
PermisoSCTR1 = Dr("PermisoSCTR1").ToString
|
||||
PermisoSCTR2 = Dr("PermisoSCTR2").ToString
|
||||
ConfATR1 = Dr("ConfATR1").ToString
|
||||
ConfATR2 = Dr("ConfATR2").ToString
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
ObjInv.Dispose()
|
||||
|
||||
retorno.SerieFolio = SerieFolio
|
||||
|
||||
Dim DtConceptos As New DataTable()
|
||||
DtConceptos.Columns.Add(New DataColumn("Cantidad", GetType(Decimal)))
|
||||
DtConceptos.Columns.Add(New DataColumn("Unidad", GetType(String)))
|
||||
DtConceptos.Columns.Add(New DataColumn("Descripcion", GetType(String)))
|
||||
DtConceptos.Columns.Add(New DataColumn("ValorUnitario", GetType(Decimal)))
|
||||
DtConceptos.Columns.Add(New DataColumn("Importe", GetType(Decimal)))
|
||||
|
||||
Dim DtUbicaciones As New DataTable()
|
||||
DtUbicaciones.Columns.Add(New DataColumn("Distancia", GetType(String)))
|
||||
DtUbicaciones.Columns.Add(New DataColumn("TipoUbicacion", GetType(String)))
|
||||
DtUbicaciones.Columns.Add(New DataColumn("RFC", GetType(String)))
|
||||
DtUbicaciones.Columns.Add(New DataColumn("Nombre", GetType(String)))
|
||||
DtUbicaciones.Columns.Add(New DataColumn("FechaHoraSalida", GetType(DateTime)))
|
||||
DtUbicaciones.Columns.Add(New DataColumn("Direccion", GetType(String)))
|
||||
|
||||
Dim DtMercancias As New DataTable()
|
||||
DtMercancias.Columns.Add(New DataColumn("Cantidad", GetType(Decimal)))
|
||||
DtMercancias.Columns.Add(New DataColumn("UnidadMedida", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("Descripcion", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("PesoEnKg", GetType(String)))
|
||||
|
||||
DtMercancias.Columns.Add(New DataColumn("CveMaterialPeligroso", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("Embalaje", GetType(String)))
|
||||
|
||||
DtMercancias.Columns.Add(New DataColumn("SectorCOFEPRIS", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("NombreIngredienteActivo", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("NomQuimico", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("DenominacionGenerica", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("DenominacionDistintiva", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("Fabricante", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("FormaFarmaceutica", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("CondicionesTransporte", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("RegistroSanitarioAutorizacion", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("PermisoImportacion", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("FolioImportacionVUCEM", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("NumCAS", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("RazonSocialEmpImportacion", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("NumRegistroPlagCOFEPRIS", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("DatosFabricante", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("DatosFormulador", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("DatosMaquilador", GetType(String)))
|
||||
DtMercancias.Columns.Add(New DataColumn("UsoAutorizado", GetType(String)))
|
||||
|
||||
|
||||
Dim DtOperadores As New DataTable()
|
||||
DtOperadores.Columns.Add(New DataColumn("RFC", GetType(String)))
|
||||
DtOperadores.Columns.Add(New DataColumn("NumLicencia", GetType(String)))
|
||||
DtOperadores.Columns.Add(New DataColumn("NombreOperador", GetType(String)))
|
||||
|
||||
Dim DTRelacionados As New DataTable()
|
||||
DTRelacionados.Columns.Add(New DataColumn("Relacion", GetType(String)))
|
||||
DTRelacionados.Columns.Add(New DataColumn("UUID", GetType(String)))
|
||||
|
||||
Dim XMLDoc As New XmlDocument
|
||||
Dim Path As String = String.Format("{0}\{1}\{2}\{3}.{4}", UsuarioActual.Empresa.Ruta, "XML", TipoDocto, String.Format("{0}", SerieFolio), "xml")
|
||||
Dim Archivo As New System.IO.FileInfo(Path)
|
||||
|
||||
If Archivo.Exists Then
|
||||
Try
|
||||
XMLDoc.Load(Path)
|
||||
Catch ex As Exception
|
||||
Try
|
||||
Dim oReader As New StreamReader(Path, Encoding.GetEncoding("ISO-8859-1"))
|
||||
XMLDoc.Load(oReader)
|
||||
oReader.Dispose()
|
||||
Catch ex2 As Exception
|
||||
GuardaLog("Error al intentar leer el XML del SAT. Error:" & ex2.ToString())
|
||||
End Try
|
||||
End Try
|
||||
End If
|
||||
|
||||
If XMLDoc IsNot Nothing AndAlso Archivo.Exists Then
|
||||
|
||||
Dim RutaCBB As String = String.Format("{0}\CBB\{1}.jpg", UsuarioActual.Empresa.Ruta, SerieFolio)
|
||||
Dim ImagenCBB As New System.IO.FileInfo(RutaCBB)
|
||||
|
||||
Dim RutaCCP As String = String.Format("{0}\CBB\{1}_CCP.jpg", UsuarioActual.Empresa.Ruta, SerieFolio)
|
||||
Dim ImagenCCP As New System.IO.FileInfo(RutaCCP)
|
||||
|
||||
Dim Prefijo As String = If(XMLDoc.DocumentElement.Prefix = "", "cfd", XMLDoc.DocumentElement.Prefix)
|
||||
Dim cfdVer As String = "http://www.sat.gob.mx/cfd/3"
|
||||
Dim namespaces As New XmlNamespaceManager(XMLDoc.NameTable)
|
||||
Dim Version As String = ValorXML(XMLDoc.DocumentElement, "version")
|
||||
Dim VersionCCP As String = ""
|
||||
Dim PrefijoCCP As String = ""
|
||||
|
||||
If Version = "3.3" Then
|
||||
cfdVer = "http://www.sat.gob.mx/cfd/3"
|
||||
Else ' se considera que es la version 4.0
|
||||
cfdVer = "http://www.sat.gob.mx/cfd/4"
|
||||
End If
|
||||
|
||||
params.Add(New ReportParameter("CFDIVersion", Version))
|
||||
|
||||
namespaces.AddNamespace(Prefijo, cfdVer)
|
||||
namespaces.AddNamespace("tfd", "http://www.sat.gob.mx/TimbreFiscalDigital")
|
||||
namespaces.AddNamespace("implocal", "http://www.sat.gob.mx/implocal")
|
||||
namespaces.AddNamespace("registrofiscal", "http://www.sat.gob.mx/registrofiscal")
|
||||
namespaces.AddNamespace("cartaporte", "http://www.sat.gob.mx/CartaPorte")
|
||||
namespaces.AddNamespace("cartaporte20", "http://www.sat.gob.mx/CartaPorte20")
|
||||
namespaces.AddNamespace("cartaporte30", "http://www.sat.gob.mx/CartaPorte30")
|
||||
|
||||
Dim Nodos30 As XmlNode = XMLDoc.SelectSingleNode("//cartaporte30:CartaPorte", namespaces)
|
||||
Dim Nodos20 As XmlNode = XMLDoc.SelectSingleNode("//cartaporte20:CartaPorte", namespaces)
|
||||
|
||||
If Nodos30 IsNot Nothing Then
|
||||
VersionCCP = "3.0"
|
||||
PrefijoCCP = "cartaporte30"
|
||||
End If
|
||||
|
||||
If Nodos20 IsNot Nothing Then
|
||||
VersionCCP = "2.0"
|
||||
PrefijoCCP = "cartaporte20"
|
||||
End If
|
||||
|
||||
params.Add(New ReportParameter("CartaPorteVersion", VersionCCP))
|
||||
|
||||
Dim nodeComprobante As XmlNode = XMLDoc.SelectSingleNode(String.Format("//{0}:Comprobante", Prefijo), namespaces)
|
||||
If nodeComprobante IsNot Nothing Then
|
||||
LugarExpedicion = ValorXML(nodeComprobante, "LugarExpedicion")
|
||||
SubTotal = ValorXML(nodeComprobante, "SubTotal").ToDecimal()
|
||||
Total = ValorXML(nodeComprobante, "Total").ToDecimal()
|
||||
End If
|
||||
|
||||
Dim nodeCliente As XmlNode = XMLDoc.SelectSingleNode(String.Format("//{0}:Receptor", Prefijo), namespaces)
|
||||
|
||||
If nodeCliente IsNot Nothing Then
|
||||
ClienteRFC = ValorXML(nodeCliente, "RFC")
|
||||
ClienteNombre = ValorXML(nodeCliente, "Nombre")
|
||||
Dim UsoCFDI As String = ValorXML(nodeCliente, "UsoCFDI")
|
||||
ClienteUsoCFDi = String.Format("{0} - {1}", UsoCFDI, GlobalDTSATUsosCFDI().FiltroPrimeroValor("Descripcion", String.Format("UsoCFDI = '{0}'", UsoCFDI)))
|
||||
End If
|
||||
|
||||
Dim nodeConceptos As XmlNode = XMLDoc.SelectSingleNode(String.Format("//{0}:Conceptos", Prefijo), namespaces)
|
||||
|
||||
If nodeConceptos IsNot Nothing Then
|
||||
For Each node As XmlNode In nodeConceptos.ChildNodes
|
||||
Dim Row As DataRow = DtConceptos.NewRow
|
||||
|
||||
Row("Cantidad") = ValorXML(node, "Cantidad", "")
|
||||
Row("Unidad") = ValorXML(node, "Unidad", "")
|
||||
Row("Descripcion") = ValorXML(node, "Descripcion", "")
|
||||
Row("ValorUnitario") = ValorXML(node, "ValorUnitario", "")
|
||||
Row("Importe") = ValorXML(node, "Importe", "")
|
||||
DtConceptos.Rows.Add(Row)
|
||||
Next
|
||||
End If
|
||||
Dim nodeComp As XmlNode = XMLDoc.SelectSingleNode(String.Format("//{0}:Comprobante/{0}:Complemento", Prefijo), namespaces)
|
||||
|
||||
Dim nodeCartaPorte As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:CartaPorte", PrefijoCCP), namespaces)
|
||||
If nodeCartaPorte IsNot Nothing Then
|
||||
TransporteInternacional = ValorXML(nodeCartaPorte, "TranspInternac", "")
|
||||
Dim CveTransporte As String = ValorXML(nodeCartaPorte, "ViaEntradaSalida", "")
|
||||
'Dim nodeFiguraTransporte As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:FiguraTransporte", "cartaporte20"), namespaces)
|
||||
If CveTransporte <> "" Then MedioTransporte = String.Format("{0} - {1}", CveTransporte, HtTransporte(CveTransporte).ToString())
|
||||
End If
|
||||
|
||||
Dim nodeAutotransporteFederal As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:Autotransporte", PrefijoCCP), namespaces)
|
||||
If nodeAutotransporteFederal IsNot Nothing Then
|
||||
PermisoSTCC = ValorXML(nodeAutotransporteFederal, "PermSCT", "")
|
||||
NumPermiso = ValorXML(nodeAutotransporteFederal, "NumPermisoSCT", "")
|
||||
End If
|
||||
|
||||
Dim nodeIdentificacionVehicular As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:IdentificacionVehicular", PrefijoCCP), namespaces)
|
||||
If nodeIdentificacionVehicular IsNot Nothing Then
|
||||
PlacaVM = ValorXML(nodeIdentificacionVehicular, "PlacaVM", "")
|
||||
AnioModeloVM = ValorXML(nodeIdentificacionVehicular, "AnioModeloVM", "")
|
||||
PesoBrutoVehicular = ValorXML(nodeIdentificacionVehicular, "PesoBrutoVehicular", "")
|
||||
End If
|
||||
|
||||
Dim nodeSeguros As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:Seguros", PrefijoCCP), namespaces)
|
||||
If nodeIdentificacionVehicular IsNot Nothing Then
|
||||
AseguradoraRespCivil = ValorXML(nodeSeguros, "AseguraRespCivil", "")
|
||||
NumPolizaSeguroRespCivil = ValorXML(nodeSeguros, "PolizaRespCivil", "")
|
||||
|
||||
'Por Definir de donde sale
|
||||
NombreAseguradoraMedioAmbiente = ValorXML(nodeSeguros, "AseguraMedAmbiente", "")
|
||||
NumPolizaSeguroMedioAmbiente = ValorXML(nodeSeguros, "PolizaMedAmbiente", "")
|
||||
NombreAseguradoraCarga = ValorXML(nodeSeguros, "AseguraCarga", "")
|
||||
NumPolizaSeguroCarga = ValorXML(nodeSeguros, "PolizaCarga", "")
|
||||
End If
|
||||
|
||||
|
||||
Dim nodeRemolques As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:Remolques", PrefijoCCP), namespaces)
|
||||
|
||||
If nodeRemolques IsNot Nothing Then
|
||||
If nodeRemolques.ChildNodes.Count = 1 Then
|
||||
RemolquePlaca1 = ValorXML(nodeRemolques.ChildNodes(0), "Placa", "")
|
||||
RemolqueSubtimo1 = ValorXML(nodeRemolques.ChildNodes(0), "SubTipoRem", "")
|
||||
ElseIf nodeRemolques.ChildNodes.Count > 1 Then
|
||||
RemolquePlaca1 = ValorXML(nodeRemolques.ChildNodes(0), "Placa", "")
|
||||
RemolqueSubtimo1 = ValorXML(nodeRemolques.ChildNodes(0), "SubTipoRem", "")
|
||||
RemolquePlaca2 = ValorXML(nodeRemolques.ChildNodes(1), "Placa", "")
|
||||
RemolqueSubtimo2 = ValorXML(nodeRemolques.ChildNodes(1), "SubTipoRem", "")
|
||||
End If
|
||||
End If
|
||||
|
||||
Dim nodeMercancias As XmlNodeList = nodeComp.SelectNodes(String.Format("//{0}:Mercancia", PrefijoCCP), namespaces)
|
||||
For Each node As XmlNode In nodeMercancias
|
||||
Dim Row As DataRow = DtMercancias.NewRow
|
||||
|
||||
Row("Cantidad") = ValorXML(node, "Cantidad", "")
|
||||
Row("UnidadMedida") = ValorXML(node, "Unidad", "")
|
||||
Row("Descripcion") = ValorXML(node, "Descripcion", "")
|
||||
Row("PesoEnKg") = ValorXML(node, "PesoEnKg", "")
|
||||
|
||||
Row("CveMaterialPeligroso") = ValorXML(node, "CveMaterialPeligroso", "")
|
||||
Row("Embalaje") = ValorXML(node, "Embalaje", "")
|
||||
|
||||
Row("SectorCOFEPRIS") = ValorXML(node, "SectorCOFEPRIS", "")
|
||||
Row("NombreIngredienteActivo") = ValorXML(node, "NombreIngredienteActivo", "")
|
||||
Row("NomQuimico") = ValorXML(node, "NomQuimico", "")
|
||||
Row("DenominacionGenerica") = ValorXML(node, "DenominacionGenerica", "")
|
||||
Row("DenominacionDistintiva") = ValorXML(node, "DenominacionDistintiva", "")
|
||||
Row("Fabricante") = ValorXML(node, "Fabricante", "")
|
||||
Row("FormaFarmaceutica") = ValorXML(node, "FormaFarmaceutica", "")
|
||||
Row("CondicionesTransporte") = ValorXML(node, "CondicionesTransporte", "")
|
||||
Row("RegistroSanitarioAutorizacion") = ValorXML(node, "RegistroSanitarioAutorizacion", "")
|
||||
Row("PermisoImportacion") = ValorXML(node, "PermisoImportacion", "")
|
||||
Row("FolioImportacionVUCEM") = ValorXML(node, "FolioImportacionVUCEM", "")
|
||||
Row("NumCAS") = ValorXML(node, "NumCAS", "")
|
||||
Row("RazonSocialEmpImportacion") = ValorXML(node, "RazonSocialEmpImportacion", "")
|
||||
Row("NumRegistroPlagCOFEPRIS") = ValorXML(node, "NumRegistroPlagCOFEPRIS", "")
|
||||
Row("DatosFabricante") = ValorXML(node, "DatosFabricante", "")
|
||||
Row("DatosFormulador") = ValorXML(node, "DatosFormulador", "")
|
||||
Row("DatosMaquilador") = ValorXML(node, "DatosMaquilador", "")
|
||||
Row("UsoAutorizado") = ValorXML(node, "UsoAutorizado", "")
|
||||
|
||||
DtMercancias.Rows.Add(Row)
|
||||
Next
|
||||
|
||||
Dim nodeMercanciaPadre As XmlNodeList = nodeComp.SelectNodes(String.Format("//{0}:Mercancias", PrefijoCCP), namespaces)
|
||||
If UsuarioActual.CveEmpresa = 13 AndAlso nodeMercanciaPadre IsNot Nothing Then
|
||||
Dim PesoNetoTotal As String = ValorXML(nodeMercanciaPadre(0), "PesoNetoTotal", "")
|
||||
Dim UnidadPeso As String = ValorXML(nodeMercanciaPadre(0), "UnidadPeso", "")
|
||||
Dim NumTotalMercancias As String = ValorXML(nodeMercanciaPadre(0), "NumTotalMercancias", "")
|
||||
|
||||
params.Add(New ReportParameter("PesoNetoTotal", PesoNetoTotal))
|
||||
params.Add(New ReportParameter("UnidadPeso", UnidadPeso))
|
||||
params.Add(New ReportParameter("NumTotalMercancias", NumTotalMercancias))
|
||||
End If
|
||||
|
||||
Dim nodeOperadores As XmlNodeList = nodeComp.SelectNodes(String.Format("//{0}:TiposFigura", PrefijoCCP), namespaces)
|
||||
For Each node As XmlNode In nodeOperadores
|
||||
Dim Row As DataRow = DtOperadores.NewRow
|
||||
|
||||
Row("RFC") = ValorXML(node, "RFCFigura", "")
|
||||
Row("NumLicencia") = ValorXML(node, "NumLicencia", "")
|
||||
Row("NombreOperador") = ValorXML(node, "NombreFigura", "")
|
||||
|
||||
DtOperadores.Rows.Add(Row)
|
||||
Next
|
||||
|
||||
Dim DistanciaTotal As Decimal = 0
|
||||
Dim nodeUbicaciones As XmlNodeList = nodeComp.SelectNodes(String.Format("//{0}:Ubicacion", PrefijoCCP), namespaces)
|
||||
For Each node As XmlNode In nodeUbicaciones
|
||||
Dim Row As DataRow = DtUbicaciones.NewRow
|
||||
|
||||
Row("Distancia") = ValorXML(node, "DistanciaRecorrida", "")
|
||||
DistanciaTotal += Row("Distancia").ToString().ToDecimal()
|
||||
Row("TipoUbicacion") = ValorXML(node, "TipoUbicacion", "")
|
||||
Row("FechaHoraSalida") = ValorXML(node, "FechaHoraSalidaLlegada", "")
|
||||
Row("RFC") = ValorXML(node, "RFCRemitenteDestinatario", "")
|
||||
Row("Nombre") = ValorXML(node, "NombreRemitenteDestinatario", "")
|
||||
|
||||
Dim nodeDomicilio As XmlNode = node.ChildNodes.Cast(Of XmlNode).FirstOrDefault(Function(x) x.Name = $"{PrefijoCCP}:Domicilio") 'node.SelectSingleNode(String.Format("//{0}:Domicilio", "cartaporte"), namespaces)
|
||||
If nodeDomicilio IsNot Nothing Then
|
||||
|
||||
Dim Estado As String = ""
|
||||
Dim Municipio As String = ""
|
||||
Dim Colonia As String = ""
|
||||
Dim calle As String = ValorXML(nodeDomicilio, "Calle", "")
|
||||
Dim CP As String = ValorXML(nodeDomicilio, "CodigoPostal", "")
|
||||
|
||||
Dim dr As DataRow = GlobalDTGralColonias(ValorXML(nodeDomicilio, "Estado", ""), ValorXML(nodeDomicilio, "Municipio", ""), ValorXML(nodeDomicilio, "Colonia", "")).FiltroPrimero("")
|
||||
If dr IsNot Nothing Then
|
||||
Estado = dr("NombreEstado").ToString
|
||||
Municipio = dr("NombreMunicipio").ToString
|
||||
Colonia = dr("NombreAsentamiento").ToString
|
||||
End If
|
||||
Row("Direccion") = String.Format("{0} Col.{1},{2},{3}. CP {4}", calle, Colonia, Municipio, Estado, CP)
|
||||
End If
|
||||
DtUbicaciones.Rows.Add(Row)
|
||||
Next
|
||||
|
||||
If UsuarioActual.CveEmpresa = 13 Then
|
||||
params.Add(New ReportParameter("DistanciaTotal", DistanciaTotal.ToString()))
|
||||
End If
|
||||
|
||||
Dim nodeRelacion As XmlNode = XMLDoc.SelectSingleNode(String.Format("//{0}:CfdiRelacionados", Prefijo), namespaces)
|
||||
|
||||
If nodeRelacion IsNot Nothing Then
|
||||
Dim RelacionCodigo As String = ValorXML(nodeRelacion, "TipoRelacion")
|
||||
Dim Relacion As String = ""
|
||||
|
||||
Select Case RelacionCodigo
|
||||
Case "01"
|
||||
Relacion = "01 - Nota de crédito de los documentos relacionados"
|
||||
Case "02"
|
||||
Relacion = "02 - Nota de débito de los documentos relacionados"
|
||||
Case "03"
|
||||
Relacion = "03 - Devolución de mercancía sobre facturas o traslados previos"
|
||||
Case "04"
|
||||
Relacion = "04 - Sustitución de los CFDI previos"
|
||||
Case "05"
|
||||
Relacion = "05 - Traslados de mercancias facturados previamente"
|
||||
Case "06"
|
||||
Relacion = "06 - Factura generada por los traslados previos"
|
||||
Case "07"
|
||||
Relacion = "07 - CFDI por aplicación de anticipo"
|
||||
Case "08"
|
||||
Relacion = "08 - Factura generada por pagos en parcialidades"
|
||||
Case "09"
|
||||
Relacion = "09 - Factura generada por pagos diferidos"
|
||||
End Select
|
||||
|
||||
Dim nodoDocumentosRelacionados As XmlNodeList = XMLDoc.SelectNodes(String.Format("//{0}:CfdiRelacionados", Prefijo), namespaces)
|
||||
For Each node As XmlNode In nodoDocumentosRelacionados
|
||||
|
||||
Dim nRow As DataRow = DTRelacionados.NewRow
|
||||
nRow("Relacion") = Relacion
|
||||
|
||||
Try
|
||||
Dim nodoUUID As XmlNode = node.ChildNodes.Cast(Of XmlNode).FirstOrDefault(Function(x) x.Name = "cfdi:CfdiRelacionado")
|
||||
nRow("UUID") = ValorXML(nodoUUID, "UUID", "")
|
||||
Catch ex As Exception
|
||||
nRow("UUID") = ""
|
||||
End Try
|
||||
|
||||
DTRelacionados.Rows.Add(nRow)
|
||||
Next
|
||||
End If
|
||||
|
||||
Dim nodeTFD As XmlNode = nodeComp.SelectSingleNode(String.Format("//{0}:TimbreFiscalDigital", "tfd"), namespaces)
|
||||
If nodeTFD IsNot Nothing Then
|
||||
FolioFiscal = ValorXML(nodeTFD, "UUID", "")
|
||||
NoSerieCertificado = ValorXML(nodeTFD, "NoCertificadoSAT", "")
|
||||
FechaCertificacion = ValorXML(nodeTFD, "FechaTimbrado", "").ToDateTime
|
||||
SelloCFDi = ValorXML(nodeTFD, "SelloCFD", "")
|
||||
SelloSAT = ValorXML(nodeTFD, "SelloSAT", "")
|
||||
NoCertificadoSAT = ValorXML(nodeTFD, "NoCertificadoSAT", "")
|
||||
|
||||
CadenaOriginal = "||1.0|" + FolioFiscal + "|" + FechaCertificacion.ToString("yyyy-MM-dd") + "T" + FechaCertificacion.ToString("HH:mm:ss") + "|" + SelloCFDi + "|" + NoSerieCertificado + "||"
|
||||
End If
|
||||
|
||||
If Not ImagenCBB.Exists Then GeneraQRSAT(UsuarioActual.Empresa.RFC, ClienteRFC, Total, FolioFiscal, RutaGuardado:=RutaCBB)
|
||||
ImagenCBB = New System.IO.FileInfo(RutaCBB)
|
||||
If ImagenCBB.Exists Then
|
||||
ImgCBB = String.Format("file://{0}", ImagenCBB.FullName)
|
||||
Else
|
||||
ImgCBB = ""
|
||||
End If
|
||||
|
||||
ImagenCCP = New System.IO.FileInfo(RutaCCP)
|
||||
If ImagenCCP.Exists Then
|
||||
ImgCCP = String.Format("file://{0}", ImagenCCP.FullName)
|
||||
Else
|
||||
ImgCCP = ""
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
If DtConceptos.Rows.Count > 0 Then
|
||||
|
||||
params.Add(New ReportParameter("LogoPath", RutaImagenLogo))
|
||||
'EMPRESA
|
||||
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
|
||||
params.Add(New ReportParameter("RegimenFiscal", UsuarioActual.Empresa.Regimen))
|
||||
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
|
||||
params.Add(New ReportParameter("FechaImpresion", NowADS().ToDateTime.ToShortDateString))
|
||||
params.Add(New ReportParameter("DomicilioFiscal", $"{UsuarioActual.Empresa.Direccion}, {UsuarioActual.Empresa.Colonia}, {UsuarioActual.Empresa.Localidad}, {UsuarioActual.Empresa.Estado}, Tel. {Telefono}"))
|
||||
params.Add(New ReportParameter("SerieFolio", SerieFolio))
|
||||
params.Add(New ReportParameter("RFC", UsuarioActual.Empresa.RFC))
|
||||
params.Add(New ReportParameter("DomicilioExpedicion", LugarExpedicion))
|
||||
'CLIENTE
|
||||
params.Add(New ReportParameter("ClienteNombre", ClienteNombre))
|
||||
params.Add(New ReportParameter("ClienteRFC", ClienteRFC))
|
||||
params.Add(New ReportParameter("UsoCFDi", ClienteUsoCFDi))
|
||||
'TRANSPORTE
|
||||
params.Add(New ReportParameter("MedioTransporte", MedioTransporte))
|
||||
params.Add(New ReportParameter("TransporteInternacional", TransporteInternacional))
|
||||
params.Add(New ReportParameter("PermisoSTCC", PermisoSTCC))
|
||||
params.Add(New ReportParameter("NumPermiso", NumPermiso))
|
||||
|
||||
params.Add(New ReportParameter("Aseguradora", AseguradoraRespCivil))
|
||||
params.Add(New ReportParameter("NumPoliza", NumPolizaSeguroRespCivil))
|
||||
|
||||
params.Add(New ReportParameter("NombreAseguradoraMedioAmbiente", NombreAseguradoraMedioAmbiente))
|
||||
params.Add(New ReportParameter("NumPolizaSeguroMedioAmbiente", NumPolizaSeguroMedioAmbiente))
|
||||
|
||||
params.Add(New ReportParameter("NombreAseguradoraCarga", NombreAseguradoraCarga))
|
||||
params.Add(New ReportParameter("NumPolizaSeguroCarga", NumPolizaSeguroCarga))
|
||||
|
||||
params.Add(New ReportParameter("PlacaVM", PlacaVM))
|
||||
params.Add(New ReportParameter("AnioVM", AnioModeloVM))
|
||||
params.Add(New ReportParameter("PesoBrutoVehicular", PesoBrutoVehicular))
|
||||
|
||||
'TIMBRADO
|
||||
params.Add(New ReportParameter("FolioFiscal", FolioFiscal))
|
||||
params.Add(New ReportParameter("QR", ImgCBB))
|
||||
params.Add(New ReportParameter("QRCCP", ImgCCP))
|
||||
params.Add(New ReportParameter("SelloCFDI", SelloCFDi))
|
||||
params.Add(New ReportParameter("CertificadoContribuyente", NoCertificadoSAT))
|
||||
params.Add(New ReportParameter("CadenaOriginal", CadenaOriginal))
|
||||
params.Add(New ReportParameter("SerieCertificadoSAT", NoSerieCertificado))
|
||||
params.Add(New ReportParameter("FechaCertificacion", FechaCertificacion.ToString("dd/MM/yyyy HH:mm:ss")))
|
||||
params.Add(New ReportParameter("SelloSAT", SelloSAT))
|
||||
'TOTALES
|
||||
params.Add(New ReportParameter("SubTotal", SubTotal.ToString()))
|
||||
params.Add(New ReportParameter("Descuentos", Descuentos.ToString()))
|
||||
params.Add(New ReportParameter("Total", Total.ToString()))
|
||||
|
||||
params.Add(New ReportParameter("RemolquePlaca1", RemolquePlaca1))
|
||||
params.Add(New ReportParameter("RemolqueSubtimo1", RemolqueSubtimo1))
|
||||
|
||||
params.Add(New ReportParameter("RemolquePlaca2", RemolquePlaca2))
|
||||
params.Add(New ReportParameter("RemolqueSubtimo2", RemolqueSubtimo2))
|
||||
|
||||
If UsuarioActual.CveEmpresa = 13 Then
|
||||
params.Add(New ReportParameter("PermisoSCTRemolque1", PermisoSCTR1))
|
||||
params.Add(New ReportParameter("PermisoSCTRemolque2", PermisoSCTR2))
|
||||
params.Add(New ReportParameter("ConfATR1", ConfATR1))
|
||||
params.Add(New ReportParameter("ConfATR2", ConfATR2))
|
||||
End If
|
||||
|
||||
Dim lrds As New List(Of ReportDataSource)
|
||||
|
||||
Dim rds As New ReportDataSource
|
||||
rds.Name = "DataSet1"
|
||||
rds.Value = DtConceptos
|
||||
lrds.Add(rds)
|
||||
|
||||
Dim rds2 As New ReportDataSource
|
||||
rds2.Name = "DataSet2"
|
||||
rds2.Value = DtUbicaciones
|
||||
lrds.Add(rds2)
|
||||
|
||||
Dim rds3 As New ReportDataSource
|
||||
rds3.Name = "DataSet3"
|
||||
rds3.Value = DtMercancias
|
||||
lrds.Add(rds3)
|
||||
|
||||
Dim rds4 As New ReportDataSource
|
||||
rds4.Name = "DataSet4"
|
||||
rds4.Value = DtOperadores
|
||||
lrds.Add(rds4)
|
||||
|
||||
|
||||
Dim rds5 As New ReportDataSource
|
||||
rds5.Name = "DataSet5"
|
||||
rds5.Value = DTRelacionados
|
||||
lrds.Add(rds5)
|
||||
|
||||
If AplicaSubReporte Then
|
||||
For Each parametro As ReportParameter In params
|
||||
retorno.Parametros.Add(New ReportParameter($"SRP_{parametro.Name}", parametro.Values.Item(0)))
|
||||
Next
|
||||
retorno.Parametros.Add(New ReportParameter($"TieneCartaPorte", "True"))
|
||||
Else
|
||||
retorno.Parametros.AddRange(params)
|
||||
End If
|
||||
|
||||
retorno.DataSources.AddRange(lrds)
|
||||
End If
|
||||
End If
|
||||
Catch ex As Exception
|
||||
OnError("Ocurrió un error al generar el pdf de la carta porte", ex)
|
||||
End Try
|
||||
Return retorno
|
||||
End Function
|
||||
|
||||
Private Sub DescargaArchivoDirecto(RutaArchivo As String)
|
||||
If RutaArchivo <> "" Then
|
||||
|
||||
@@ -1088,7 +518,6 @@ Partial Class PopUpVerFactura
|
||||
params.Add(New ReportParameter("CAAT", CAAT))
|
||||
params.Add(New ReportParameter("NumeroTrailer", NumeroTrailer))
|
||||
|
||||
|
||||
params.Add(New ReportParameter("NoFactura", NoFactura))
|
||||
params.Add(New ReportParameter("Mercado", Mercado))
|
||||
params.Add(New ReportParameter("NoBultos", NoBultos))
|
||||
@@ -1096,11 +525,6 @@ Partial Class PopUpVerFactura
|
||||
params.Add(New ReportParameter("NoKgManifiesto", NoKgManifiesto))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Dim lrds As New List(Of ReportDataSource)
|
||||
Dim rds As New ReportDataSource With {.Name = "DataSet1", .Value = tablaReporte}
|
||||
lrds.Add(rds)
|
||||
@@ -1164,15 +588,15 @@ Partial Class PopUpVerFactura
|
||||
NoEmbarque = row("NoEmbarque").ToString()
|
||||
Cliente = row("Cliente").ToString()
|
||||
Direccion = row("Direccion").ToString()
|
||||
Fecha = String.Format("{0dd/MM/yyyy}", row("Fecha"))
|
||||
DivisoresdeCarton = String.Format("{0N0}", row("DivisoresdeCarton"))
|
||||
BolsasdePlastico = String.Format("{0N0}", row("BolsasdePlastico"))
|
||||
TapaderasdeCarton = String.Format("{0N0}", row("TapaderasdeCarton"))
|
||||
CAJASDECARTON = String.Format("{0N0}", row("CAJASDECARTON"))
|
||||
RPC = String.Format("{0N0}", row("RPC"))
|
||||
BINSDECARTON = String.Format("{0N0}", row("BINSDECARTON"))
|
||||
BinsPrecio = String.Format("{0N0}", row("BINSDECARTON").ToString().ToDecimal() * 5)
|
||||
TotalDlls = String.Format("{0N0}", row("TotalDlls"))
|
||||
Fecha = String.Format("{0:dd/MM/yyyy}", row("Fecha"))
|
||||
DivisoresdeCarton = String.Format("{0:N0}", row("DivisoresdeCarton"))
|
||||
BolsasdePlastico = String.Format("{0:N0}", row("BolsasdePlastico"))
|
||||
TapaderasdeCarton = String.Format("{0:N0}", row("TapaderasdeCarton"))
|
||||
CAJASDECARTON = String.Format("{0:N0}", row("CAJASDECARTON"))
|
||||
RPC = String.Format("{0:N0}", row("RPC"))
|
||||
BINSDECARTON = String.Format("{0:N0}", row("BINSDECARTON"))
|
||||
BinsPrecio = String.Format("{0:N0}", row("BINSDECARTON").ToString().ToDecimal() * 5)
|
||||
TotalDlls = String.Format("{0:N0}", row("TotalDlls"))
|
||||
|
||||
|
||||
|
||||
@@ -1180,7 +604,7 @@ Partial Class PopUpVerFactura
|
||||
AgenciaAduanalUSA = row("AgenciaAduanalUSA").ToString()
|
||||
AgenciaAduanalMEX = row("AgenciaAduanalMEX").ToString()
|
||||
Temperatura = row("Temperatura").ToString()
|
||||
Hora = String.Format("{0hh }:{0:mm }:{0:ss tt}:", row("FechaIng"))
|
||||
Hora = String.Format("{0:hh }:{0:mm }:{0:ss tt}:", row("FechaIng"))
|
||||
Chofer = row("Chofer").ToString()
|
||||
CamPlaca = row("CamPlaca").ToString()
|
||||
Camion = String.Format("{0} {1}", row("CamEspecificacion"), row("CamAnio"))
|
||||
@@ -1320,13 +744,13 @@ Partial Class PopUpVerFactura
|
||||
Direccion = row("Direccion").ToString()
|
||||
Correo = row("Correo").ToString()
|
||||
Fecha = String.Format("{0dd/MM/yyyy}", row("Fecha"))
|
||||
DivisoresdeCarton = String.Format("{0N0}", row("DivisoresdeCarton"))
|
||||
BolsasdePlastico = String.Format("{0N0}", row("BolsasdePlastico"))
|
||||
TapaderasdeCarton = String.Format("{0N0}", row("TapaderasdeCarton"))
|
||||
CAJASDECARTON = String.Format("{0N0}", row("CAJASDECARTON"))
|
||||
RPC = String.Format("{0N0}", row("RPC"))
|
||||
BINSDECARTON = String.Format("{0N0}", row("BINSDECARTON"))
|
||||
TotalDlls = String.Format("{0N0}", row("TotalDlls"))
|
||||
DivisoresdeCarton = String.Format("{0:N0}", row("DivisoresdeCarton"))
|
||||
BolsasdePlastico = String.Format("{0:N0}", row("BolsasdePlastico"))
|
||||
TapaderasdeCarton = String.Format("{0:N0}", row("TapaderasdeCarton"))
|
||||
CAJASDECARTON = String.Format("{0:N0}", row("CAJASDECARTON"))
|
||||
RPC = String.Format("{0:N0}", row("RPC"))
|
||||
BINSDECARTON = String.Format("{0:N0}", row("BINSDECARTON"))
|
||||
TotalDlls = String.Format("{0:N0}", row("TotalDlls"))
|
||||
|
||||
|
||||
|
||||
@@ -1456,7 +880,7 @@ Partial Class PopUpVerFactura
|
||||
Cultivo = row("Cultivo").ToString()
|
||||
noPallet = row("Codigo").ToString()
|
||||
Variedad = row("CultivoVariedad").ToString()
|
||||
NoCajas = String.Format("{0N0}", row("NoCajas"))
|
||||
NoCajas = String.Format("{0:N0}", row("NoCajas"))
|
||||
|
||||
End If
|
||||
|
||||
@@ -1537,7 +961,7 @@ Partial Class PopUpVerFactura
|
||||
NoCajas = row("NoCajas").ToString()
|
||||
Fecha = String.Format("{0:MMM dd}", row("Fecha")).Replace(".", "").ToUpper()
|
||||
CvetypeImpresion = row("CvetypeImpresion").ToString().ToEntero()
|
||||
NumberOfCode = String.Format("(00)00000000000000(00){1ddMMyy}(00){0}00", Right(String.Format("0{0}", Regex.Match(row("Cuadro").ToString(), "\d+")), 2), row("Fecha"))
|
||||
NumberOfCode = String.Format("(00)00000000000000(00){1:ddMMyy}(00){0}00", Right(String.Format("0{0}", Regex.Match(row("Cuadro").ToString(), "\d+")), 2), row("Fecha"))
|
||||
'NumberSmall = String.Format("{000}", noPallet.ToEntero())
|
||||
'NumberBig = String.Format("{000}", row("Consecutivo").ToString().ToEntero()) ' String.Format("{0:dd}", row("Fecha"))
|
||||
|
||||
@@ -1662,7 +1086,7 @@ Partial Class PopUpVerFactura
|
||||
NoCajas = row("NoCajas").ToString()
|
||||
Fecha = String.Format("{0:MMM dd}", row("Fecha")).Replace(".", "").ToUpper()
|
||||
CvetypeImpresion = row("CvetypeImpresion").ToString().ToEntero()
|
||||
NumberOfCode = String.Format("(00)00000000000000(00){1ddMMyy}(00){0}00", Right(String.Format("0{0}", Regex.Match(row("Cuadro").ToString(), "\d+")), 2), row("Fecha"))
|
||||
NumberOfCode = String.Format("(00)00000000000000(00){1:ddMMyy}(00){0}00", Right(String.Format("0{0}", Regex.Match(row("Cuadro").ToString(), "\d+")), 2), row("Fecha"))
|
||||
NumberSmall = String.Format("{000}", noPallet.ToEntero())
|
||||
NumberBig = String.Format("{000}", row("Consecutivo").ToString().ToEntero()) ' String.Format("{0:dd}", row("Fecha"))
|
||||
End If
|
||||
|
||||
Reference in New Issue
Block a user