Open Source · 2021

nodejs-file-reading — positional file ETL

Motor Node.js para analisar ficheiros de texto de largura fixa com tipos de linha hierárquicos (pai/filho) e persistir em Postgres (Sequelize) ou MongoDB (Mongoose).

Resolve o clássico problema de interoperabilidade com sistemas legados: ficheiros posicionais em que os primeiros N caracteres de cada linha selecionam um esquema diferente (cabeçalho / linhas / eventos) e os registos formam uma árvore. O formato é declarado como um 'file mapping' (discriminator + atributos por linha), por isso adicionar um novo formato é configuração, não código.

Inclui 4 versões (m41/m51/m80/m90) de uma família real de mensagens bancárias/seguradoras, variantes de persistência para Postgres e MongoDB, e cobertura completa de Jest no parser principal.

Stack

Node.js, Sequelize, PostgreSQL, Mongoose, MongoDB, Jest, Moment