hola, tengo un archivo xml que tiene una estructura extraña. aquí hay un ejemplo de cómo se ve.
store: 1234 order: 123123 po:123123 mode: 1231231 date: 1231231 req date: 1231231 status: A wshe: 12312luego me da una lista detallada de los elementos que vienen con la información de encabezado mencionada anteriormente en el XML como este:
después de eso viene la información.
ahora mismo estoy usando xlsx con nodejs para leer el archivo. aquí está mi código:
function xmlOrdenEntrega(excels) { const file = reader.readFile(`${excels}`, {cellText:false, cellDates:true}); let data = [] const sheets = file.SheetNames const sheets1 = file.Sheets for (let i = 0 ; i < sheets.length; i++){ const temp = reader.utils.sheet_to_json( file.Sheets[file.SheetNames[i]] ,{skipHeader: true, origin: "A5",dateNF: 'mm/dd/yyyy',blankrows: true, raw: false,}) temp.forEach((res) => { data.push(res) }) } return data; };esta funcion me devuelve la informacion correcta durante la primera iteracion del xml, este xml esta compuesto por varias iteraciones de la misma estructura. un encabezado y una sección de detalle.
después de que el primer segmento es lector, normalmente reviso la primera línea de la siguiente manera:
__White_:store __White_1:1234así para la primera sección del encabezado
después de la sección detallada, viene en la forma en que esperaría que todo esté bien allí. pero durante la segunda iteración de la función de lectura comienza a fallar y viene con los datos de la siguiente manera:
store:: date: 1234: 1231231 order:: req:es como si estuviera tomando ambas filas del xml y emparejándolas, pero no sé por qué sucede cuando en la primera iteración funciona bien. si alguien sabe lo que está pasando y lo que estoy haciendo mal, o si es una limitación de la biblioteca node-xlsx, por favor dígame.