Leer xml factura electrónica México

HMG en Español

Moderator: Rathinagiri

Post Reply
jparada
Posts: 433
Joined: Fri Jan 23, 2009 5:18 pm

Leer xml factura electrónica México

Post by jparada »

Hola,
Tenía la necesidad de leer datos muy específicos de un archivo xml (factura electrónica), así que adjunto este ejemplo que no tiene mayor complejidad, en caso que alguno de ustedes tenga un requerimiento similar.
xml.zip
(3.19 KiB) Downloaded 199 times
Detalles...
- No me siento conforme cómo resolví el tema de manejar la línea para escribir los datos a Excel, si alguno de ustedes puede aportar una mejor manera se lo agradezco.
- Si los archivos a leer son muchos (en mi caso más de 5000), se congela el programa con el famoso mensaje "no responde", pero finaliza correctamente..., tenemos en hmg algo tipo sysrefresh para evitar ese comportamiento?, esto solo por estética, también se podría utilizar una barra de progreso en donde se despliegue "leyendo 1 de n archivos", a ver si se puede evitar ese detalle, aunque esta solución no me agrada mucho y además que no sé cómo implementar esa barra de progreso en todo caso.
- Estoy utilizando la librería de Fausto https://github.com/FTrautwein/hbxlsxml para generar el archivo Excel.
que genera un archivo xml, hay que utilizar "Abrir con... Excel"

La ventaja de ésta librería es que es mucho más rápido exportar/escribir datos a Excel que utilizar

Code: Select all

win_oleCreateObject( "Excel.Application" )
Espero este ejemplo sea de utilidad.

Saludos,
Javier
edk
Posts: 998
Joined: Thu Oct 16, 2014 11:35 am
Location: Poland

Re: Leer xml factura electrónica México

Post by edk »

jparada wrote: Sun Sep 29, 2019 5:01 pm - Si los archivos a leer son muchos (en mi caso más de 5000), se congela el programa con el famoso mensaje "no responde", pero finaliza correctamente..., tenemos en hmg algo tipo sysrefresh para evitar ese comportamiento?
Try to add "Do Events" into For ... Each loop.
jparada
Posts: 433
Joined: Fri Jan 23, 2009 5:18 pm

Re: Leer xml factura electrónica México

Post by jparada »

Hi Edward,
edk wrote: Sun Sep 29, 2019 8:54 pm Try to add "Do Events" into For ... Each loop.
I did the test and what I see works, that is, the program is no longer frozen, but what I noticed is that it has a little impact on performance, I mean, the process runs faster without "Do Events".

Regards,
Javier
Last edited by jparada on Tue Oct 01, 2019 10:06 pm, edited 1 time in total.
edk
Posts: 998
Joined: Thu Oct 16, 2014 11:35 am
Location: Poland

Re: Leer xml factura electrónica México

Post by edk »

For example, you can try calling Do Events every hundredth step of a loop.

Edward ;) .
jparada
Posts: 433
Joined: Fri Jan 23, 2009 5:18 pm

Re: Leer xml factura electrónica México

Post by jparada »

Hi,
Edward, sorry for my mistake..., thanks for your advice.

Regards,
Javier
Post Reply