fcx-toolkitPython ≥ 3.9
Oracle · Flexcube · Python 3

Un appel,
une réponse JSON.

fcx-toolkit exécute du SQL Oracle, exporte des résultats et intègre des batchs d'écritures comptables dans Flexcube — depuis votre code, pas seulement depuis un terminal. Chaque exécution rend un document JSON unique sur la sortie standard, succès comme échec.

5commandes pour tout faire
1document JSON par appel
0Instant Client à installer
Installation

Cinq lignes, aucun Instant Client

Le driver oracledb fonctionne en mode thin : rien à installer côté Oracle. Python 3.9 ou plus récent suffit.

1 Cloner le dépôt

$ git clone https://github.com/mawena/fcx-toolkit.git && cd fcx-toolkit

2 Créer l'environnement et installer les dépendances

$ python3 -m venv .venv && .venv/bin/pip install -r requirements.txt

3 Déclarer un environnement Flexcube

$ cp envs/exemple.conf.dist envs/mawena.conf # puis renseignez vos accès

--env désigne un fichier de configuration sous envs/. Les mots de passe n'y figurent jamais en clair : ils sont lus dans les variables d'environnement au lancement.

Sortie standard : le JSON, rien d'autre. Compacte par défaut, --pretty pour l'indenter. Le code de sortie du processus vaut toujours le champ exit_code de la réponse.

Référence

Cinq appels pour tout faire

Chaque commande est scriptable : la réponse JSON se décode sans précaution, même si votre appelant fusionne les flux.

Commande Description
Découverte
fcx.py envs Lister les environnements configurés.
fcx.py commands Lister les commandes disponibles, en JSON — la découverte pour un appelant automatisé.
SQL & export
fcx.py execute --env mawena --query "…" Exécuter du SQL ou du PL/SQL : requêtes, procédures, blocs anonymes. S'arrête à la première instruction en échec.
fcx.py extract --env mawena --query "…" --out f.xlsx Exporter le résultat d'un SELECT en CSV, Excel ou JSON. Sans --out, les lignes reviennent dans la réponse.
Intégration comptable
fcx.py flexcube-batch --env mawena --file e.csv Intégrer un batch d'écritures depuis un CSV ou un Excel. Contrôle l'existence des comptes, les soldes et l'équilibre débit/crédit avant tout envoi. --dry-run vérifie sans rien transmettre.
Garanties

Ce sur quoi vous pouvez compter

Conçu pour être appelé par des programmes : le contrat de sortie est la première fonctionnalité.

{}

Décodable sans précaution

Un seul document JSON par exécution, compact, erreurs d'usage comprises. Aucun journal affiché : le décodage tient même si votre appelant fusionne les flux.

Rien n'est envoyé sur un doute

Les anomalies sont accumulées puis rendues ensemble : une exécution suffit pour connaître toutes les corrections. Un contrôle qui échoue annule l'intégration.

Un fichier suffit pour étendre

Déposez un .py dans workflows/ : il devient une sous-commande. Aucun code existant à modifier.

$?

Codes de sortie fiables

Le code de sortie du processus vaut toujours le champ exit_code de la réponse — vos scripts testent l'un ou l'autre, indifféremment.

Mode thin, zéro dépendance Oracle

Le driver oracledb se connecte sans Instant Client : le poste qui exécute n'a besoin que de Python.

Exports aux formats utiles

CSV, Excel ou JSON en un drapeau --out. Les mêmes données, dans le format que votre destinataire attend.