module file structure
./__.vscode/: paramètres communs chargés par Visual Studio Code
|__specs/: les spécifications des tests unitaires Jasmine du module
|__lib/: librerie
| |__model/: dossier contenant le model d'objet renvoyer après le parsing et les codes d'erreur en cas d'echec de parsing
| | |__account_book_model.json: fichier contenant model d'objet
| | |__codeError.json: fichier contenant les codes d'erreur
|__src/: le code source du module
| |__autre/: les librairies et utilitaires nécessaire au module
| | |__formater.js: fichier contenant la fonction de formatage des données issues du accoun-book
| | |__index.js: fichier contenant la fonction principale
| | |__parser.js: fichier contenant la fonction de parsing
| |__inspire/: les librairies et utilitaires nécessaire au module
| | |__formater.js:
| | |__index.js:
| | |__parser.js:
| |__odoo/: les librairies et utilitaires nécessaire au module
| | |__formater.js:
| | |__index.js:
| | |__parser.js:
| |__sage/: les librairies et utilitaires nécessaire au module
| | |__formater.js:
| | |__index.js:
| | |__parser.js:
| | |__sagebuildobject.js: fichie contenant la logique de construction des objets à partir des données issues du account-book
| |__index.js : fichier principal qui fait appel à la classe du module de parsing
| |__accountbookparseradapter.js : fichier principal contenant la classe du module de parsing
| |__helpers.js : fichier principal qui fait appel aux différents fonctions de parsing
| |__cli.js : module cli
Required dev dependances
- Prettier Code formatter to enforce a consistent code style
- Husky Make easy to add gitHooks to a node project
- Lint-staged Run lint before commit goes on the repository
- Jasmine Implement BDD
- Eslint Identify and reporte base on patterns found in EMACScript/Javascript
Module de parsing du grand livre
Version 8.2.2
Usage
Installation command is npm install @adncorp/account-book-parser-adapter
.
Quick example
const AccountBookParser = require('@adncorp/account-book-parser-adapter')
/**
*@param filepath chemin vers le fichier du grand livre: format accepté: .xlsx, .xlx, .csv
*@param softwareName Nom du logiciel qui à généner le fichier (Example: Odoo online, odoo community Sage-Saari, SAS-Inspire)
*/
// instance d'un objet de la classe AccountBookParser
var parser = new AccountBookParser(filepath, softwareName)
/**
*@return {promiss} retourne une promesse d'objet contenant le resultat du parsing
*/
// obtenir le parsing
parser.getParser().then(result => {
// affichage du resultat après parsing
console.log(result)
}).catch(error => {
// parsing echoué, affichage de l'erreur
console.log(error)
})
Development
Les tests sont exécutés avec jasmine. Pour l'installer, lancez npm install
, il installera jasmine et ses dépendances dans le répertoire "node_modules" de votre projet.
To run the unit tests:
$npm run jasmine
Le test coverage est exécuté avec l'outil instanbul. Pour l'installer, lancer npm install --save-dev jasmine jasmine-node istanbul jasmine-console-reporter supertest jasmine-supertest
, il installera instabul et ses dépendances dans le répertoire "node_modules" de votre projet.
To run the test coverage:
$npm run test-cover
To generate the JavaScript files:
$npm run build
run lint
$npm run lint # lint all src
$npm run lint-files -- ${files_or_dir_glob} # lint specific files
run prettier
$npm run prettier -- ${modified_files_or_dir_glob}
Author
-
ADN: <https://www.adncorp.com/>