![]() |
Lectura XML con childs
1 Archivos Adjunto(s)
Hola buenas tardes amigos.
Estoy tratando de leer archivos XML el cual adjunto. Dicho archivo tiene childs. Les comento que estoy buscandole como hacerle para leerlo. He usando el XML Mapper y he seguido estas instrucciones, pero no sé como leer el detalle del archivo. Dicho archivo es el detalle de una factura. Espero me puedan orientar el como hacerle para leer el detalle. Lo anterior es para cargar estos datos a un sistema y compararlos con los pedidos que nuestros clientes hayan hecho y comprobar si se les facturó su pedido completo o bien les facturaron otra cosa que no pidieron, en fin de la lectura de estos archivos pueden resultar otras cosas interesantes, como por ejemplo que productos se facturan mas, etc. Saludos |
El XML Mapper que viene con Delphi no siempre funciona (por experiencia te lo digo) y en este caso, al menos a mi, con la versión de delphi que lo he probado me falla.
Supongo que debido a la complejidad del fichero. En este caso, te queda realizar el "parse" de manera manual. Es decir, hacer el trabajo que haría el XML Mapper de forma automática. Para ello busca entrada en el clubdelphi, XMLDocument y IXMLNode. varás que hay ejemplos de cómo recorrer estos ficheros e ir extrayendo los datos. Es posible que este código de David o las units de Al González te puedan ayudar. |
Ok...Neftali....gracias por tu tiempo.
Consultaré los LINKS q me pusiste. Luego les contaré que pasó Gracias |
Cita:
|
Cita:
Tal vez tú podrías concretarle un poco más en las units de GH Freebrary donde debe mirar o que puede probar. Yo a ese nivel de detalle no he sabido llegar. |
Hola,
Yo uso la biblioteca OmniXml con buenos resultados. Cuenta con la posibilidad de "buscar" en el XML usando "XPATH". Necesita de cierto aprendizaje, pero, es realmente rápida y efectiva: https://code.google.com/p/omnixml/ |
Hola mRoman.
¿Qué versión de Delphi estás utilizando? Mira si te pueden servir estos ejemplos de Delphi 7 y XE2: http://terawiki.clubdelphi.com/Delph...H_Freebrary__/ (Archivos TghXMLDoc_EjemploLectura.zip, TghXMLDoc_EjemploLectura2.zip y TghXMLDoc_EjemploLectura3.zip). Agrego que TghXMLDoc soporta la sintaxis XPath. Es una clase Delphi que envuelve a MSXML, la biblioteca nativa de Windows encargada de hacer el trabajo sucio. Saludos. :) |
Hola,
Es muy interesante Al, sobre todo porque OmniXml no parece muy actualizada que digamos, aunque funciona bastante bien, al menos en mi proyecto. Pero tus bibliotecas podrían ser una muy buena alternativa, acaso más actualizada además. Me costaría trabajo cambiar OmniXml en mi proyecto actual (se usa profusamente para varios aspectos, desde guardar la configuración hasta para guardar los propios archivos "de proyecto" de las aplicaciones que mi proyecto crea), sin embargo, digo, no creas que no me importaría intentarlo. ¿Es posible con tu biblioteca "serializar" y "deserializar" un objeto a y desde XML, tal como OmniXml hace? Es una de las razones que me llevó a elegir OmniXml (tampoco sabía que tu biblioteca trabaja con archivos XML) además del soporte para XPath, puesto que se hace más o menos sencillo leer archivos XML usando XPath. Sea como sea, tu biblioteca sigue siendo una buena alternativa para el compañero autor de este hilo. |
Cita:
Un saludo. :) |
Ok...
Cita:
|
| La franja horaria es GMT +2. Ahora son las 18:35:15. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi