UNPKG

@adncorp/account-book-parser-adapter

Version:

parsing sheet adapter for account book

56 lines (50 loc) 1.92 kB
"use strict"; /* eslint-disable spellcheck/spell-checker */ // eslint-disable-next-line no-underscore-dangle var _m = require('../helpers.js'); var formater = require('./formater.js'); var sagebuildobject = require('./sagebuildobject.js'); var parsingsage = function parsingsage(filepath, softwareName, softwareVersion) { return new Promise(function (resolve, reject) { var columnMap = ['num_compte', 'intitule', 'date', 'journal', 'reference', 'label', 'debit', 'credit', 'cum_bal']; _m.excelToJson({ input: filepath, lowerCaseHeaders: true, mapping: columnMap, softwareName: softwareName, softwareVersion: softwareVersion }, function (err, result) { if (err) { var errorExtraction = { code: '304', libelle: 'InvalidFormat', nbrLines: 'Toutes les lignes', showColumns: ['', 'Toutes les colonnes sont concernées'], message: "Lecture du fichier impossible. Impossible d'extraire les données dans ce fichier, ce dernier comporte un style de format personnalisé" }; reject(errorExtraction); } else { if (result.length === 0) { var errorEmpty = { code: '305', libelle: 'InvalidLayout', nbrLines: 'Toutes les lignes', showColumns: ['', "Verifiez l'entête du fichier grand livre"], message: "Erreur d'extraction des données du grand livre. Le fichier chargé ne provient pas de la source sélectionnée ou Il n'a pas de contenus" }; reject(errorEmpty); } else { try { var parsebook = formater(result); var sageobject = sagebuildobject(parsebook); resolve(sageobject); } catch (error) { reject(error); } } } }); }); }; module.exports = parsingsage; //# sourceMappingURL=index.js.map