YamilQuery-ExcelAnalizer
Permite analizar y procesar grandes volumentes de información de archivos xls, xlsx y csv, mediante archivos de configuración JSON.
- Este analizador permite lo siguiente.
- Leer ficheros xls, xslx y csv
- Obtener datos de columnas y celdas especificando criterios o condiciones
- Aplicar filtros a los datos obtenidos y almacenar el resultado en un objeto
Versión
1.0.5
Requerimientos
YamilQuery-ExcelAnalizer requiere:
Instalación
YamilQuery-ExcelAnalizer requiere Node.js v4+ para ejecutarse correctamente.
$ npm install yamQuery-excelAnalizer --save
Uso
El analizador de archivos utiliza archivos de configuración en formato json. A continuación un ejemplo con la estructura requerida:
example.json
], "results": [{ "alias": "id_information", "column": 0, "regex": "\\d+" }, , , , , ]}
Las opciones del archivo de configuración son:
- file (Opcional): Ruta del archivo a analizar
- directory (Opcional): Ruta del directorio donde se localizan los archivos a analizar
- sheet_name (Opcional): Nombre de la hoja de excel por analizar
- conditions: Objeto con criterios o condiciones necesarias que deben cumplir las celdas para obtener los resultados deseados
- column: Especifica el número de columna donde buscará dentro de la fila en la ejecución actual
- cell: Especifica una fila y columna en particular
- alias: Alias para identificar el criterio
- where: Objeto llave-valor con criterio y valor esperado o puede especificar un solo Criterio como tipo String
- contains (Object)
- isNumber (String)
- equals (Object)
- notEquals (Object)
- results: Objeto con posiciones de las columnas, celdas o rangos a obtener cuando se han cumplido todas las condiciones
- column: Especifica el número de columna donde buscará dentro de la fila en la ejecución actual
- column_range: Objecto con dos valores de rango de columnas (Se sumarán para el resultado)
- cell: Especifica una fila y columna en particular
- alias: Otorga un alias al resultado, mismo que será devuelto al final
- relative: Cuando el valor que requieres no se encuentra en la fila actual puedes incrementar o disminuir el indice de la fila de donde obtendrá el valor
Nota: Al menos una de las opciones file o directory deberán especificarse en el archivo de configuración
Obtener resultados
Invocamos al analizador para obtener los resultados.
example.js
analizer = requirevar configAnalizer = JSON.parseanalizer.getResults.then
Usar con co generator
Gracias a Promises (https://www.promisejs.org/) podemos utilizar yield de la siguiente forma:
example.js
co = requireanalizer = require var configAnalizer = JSON.parse var data = yield analizer.getResults console.log // Your result is ready!})
Test
Run npm test