Como se lee y escribe un XML para la Facturacion Electronica del Peru

300 views
Skip to first unread message

ZeRoberto

unread,
Mar 10, 2018, 11:54:10 PM3/10/18
to publicesvfoxpro
Hola amigos me encontré este código pero aparentemente solo es para leer y quería saber como se le asigna valores y cuales solo las propiedades que hay que grabar.

Public loDom

loDom = CreateObject("MSXML2.DomDocument")
If Vartype(loDom) == "O"
   loDom.Load("xml\archivo.xml")
EndIf

If loDom.parseError.errorCode > 0
   MessageBox(rtrim(loDom.parseError.Reason)
   Return
EndIf

*   Clear
*   loNodes = loDom.selectNodes("//UBLExtensions/UBLExtension/ExtensionContent/AdditionalInformation")
*   For i = 0 To loNodes.length - 1
*       For j = 0 To loNodes.Item(i).Attributes.length - 1
*           sAtributeName = loNodes.Item(i).Attributes.Item(j).nodeName 
*           sAtributeValues = loNodes.Item(i).Attributes.Item(j).text 
*           ? i, j, sAtributeName + "=" + sAtributeValues 
*       Next j
*   Next i

*   Return

Clear 

*!* Llamamos a la función LeerDatos pasándole el nodo raíz
LeerDatos(loDom.documentElement.childNodes)

Function LeerDatos
Lparameters toRoot As MSXML2.IXMLDOMNode
Local loChild As MSXML2.IXMLDOMNode
   For Each loChild In toRoot
       ? loChild.nodeType, loChild.nodeName
       If loChild.nodeType <> 3
          For Each loAttributes In loChild.Attributes
              lcAtributeName = loAttributes.nodeName 
              lcAtributeValues = loAttributes.Text 
              ? lcAtributeName + "=" + lcAtributeValues
          EndFor
       EndIf
       If loChild.nodeType = 3
          ? loChild.nodeValue
       EndIf
       If loChild.hasChildNodes
          LeerDatos(loChild.ChildNodes)
       EndIf
   EndFor
EndFunc

Saludos

Zen Tes

unread,
Mar 12, 2018, 12:10:44 PM3/12/18
to Comunidad de Visual Foxpro en Español

ZeRoberto

unread,
Mar 12, 2018, 2:43:54 PM3/12/18
to publicesvfoxpro

Hola muchas gracias pero te pregunto la misma plantilla de XML es para todos lis documentos? O cada uno tiene sus propios XML.

Zen Tes

unread,
Mar 12, 2018, 10:28:43 PM3/12/18
to Comunidad de Visual Foxpro en Español
Colega

Cada país tiene su propia estructura de datos en los XML, para nuestro país Perú debemos basarnos en las estructuras públicadas por SUNAT.

saludos

Zen

ZeRoberto

unread,
Mar 12, 2018, 11:10:12 PM3/12/18
to publicesvfoxpro
Pero no respondiste mi pregunta
Reply all
Reply to author
Forward
0 new messages