Página 1 de 1
Leer XML CFDi desde algun lenguaje
Publicado: Vie May 18, 2012 9:26 am
por mchanona
Hola, alguien tendra o sabra donde puedo consultar un codigo fuente para poder leer un archivo XML desde VB .NET, VB 6.0, C++ o algun lenguaje, o en si cual es el procedimiento para leer un archivo XML.
Saludos. Gracias de antemano.
Re: Leer XML CFDi desde algun lenguaje
Publicado: Jue May 24, 2012 1:33 pm
por jevangelista
Te paso un extracto en Visual Basic .Net, por supuesto tu lo debes completar, pero te sirve para iniciar
Código: Seleccionar todo
Imports System.Xml
Private Function VarXml(ByRef xAtt As XmlElement, ByVal strVar As String) As String
VarXml = xAtt.GetAttribute(strVar)
If VarXml = Nothing Then VarXml = ""
End Function
Private Sub ExtraerVariables(ByVal strXML)
Dim xDoc As XmlDocument
Dim xNodo As XmlNodeList
Dim xAtt As XmlElement
Dim intConsecutivo As Integer
xDoc = New XmlDocument
xDoc.Load(strXML)
xNodo = xDoc.GetElementsByTagName("cfdi:Comprobante")
If xNodo.Count > 0 Then
For Each xAtt In xNodo
strTipoComprobante = VarXml(xAtt, "tipoDeComprobante")
strSerie = VarXml(xAtt, "serie")
strFolio = VarXml(xAtt, "folio")
strFechaEmision = VarXml(xAtt, "fecha")
strSello = VarXml(xAtt, "sello")
strNoCertificado = VarXml(xAtt, "noCertificado")
strSubtotal = VarXml(xAtt, "subTotal")
strTotal = VarXml(xAtt, "total")
strMoneda = VarXml(xAtt, "Moneda")
strCondiciones = VarXml(xAtt, "condicionesDePago")
strFormaPago = VarXml(xAtt, "formaDePago")
strMetodoPago = (VarXml(xAtt, "metodoDePago") + " " + VarXml(xAtt, "NumCtaPago")).Trim
strLugarExpedicion = VarXml(xAtt, "LugarExpedicion")
Next
End If
xNodo = xDoc.GetElementsByTagName("cfdi:Emisor")
If xNodo.Count > 0 Then
For Each xAtt In xNodo
strEmisorRfc = VarXml(xAtt, "rfc")
strEmisorNombre = VarXml(xAtt, "nombre")
Next
For Each xAtt In xNodo.Item(0)
If xAtt.LocalName Like "*DomicilioFiscal*" Then
strEmisorCalle = VarXml(xAtt, "calle")
strEmisorNoExterior = VarXml(xAtt, "noExterior")
strEmisorNoInterior = VarXml(xAtt, "noInterior")
strEmisorColonia = VarXml(xAtt, "colonia")
strEmisorReferencia = VarXml(xAtt, "referencia")
strEmisorMunicipio = VarXml(xAtt, "municipio")
strEmisorEstado = VarXml(xAtt, "estado")
strEmisorPais = VarXml(xAtt, "pais")
strEmisorCodigoPostal = VarXml(xAtt, "codigoPostal")
End If
If xAtt.LocalName Like "*RegimenFiscal*" Then
strRegimen = VarXml(xAtt, "Regimen")
End If
Next
End If
End Sub
Re: Leer XML CFDi desde algun lenguaje
Publicado: Jue May 24, 2012 2:36 pm
por mchanona
Muchas gracias amigo, ya habia encontrado otro, pero al parecer el tuyo esta mas estilizado y mejor, de hecho ya practicamente tengo la representacion impresa. Saludos. Muchas gracias.