Dossiers surveillés
Le modèle système Watched folders permet à NomaUBL d'aller chercher les documents source directement dans des répertoires — typiquement le partage réseau où JD Edwards dépose ses sorties d'états — au lieu d'attendre qu'on les pousse dans le répertoire d'entrée. Chaque exécution parcourt les dossiers configurés, garde les nouveaux fichiers, convertit les PDF en XML en parallèle (les fichiers XML sont copiés tels quels) dans le répertoire d'entrée du modèle de document, puis lance un lot par modèle.
Il s'ouvre dans Configuration → Système → Watched folders. Le modèle est livré vide : rien ne s'exécute tant qu'aucun dossier n'est configuré ni aucun job planifié.
Vue d'ensemble
Dossiers
Chaque ligne du tableau est un dossier surveillé ; + Add folder ajoute une ligne, × la supprime.
| Colonne | Description |
|---|---|
| Directory | Le dossier à parcourir (par ex. /data/mnt/jde_outputs). |
| Pattern | Motif de nom des fichiers à récupérer (par ex. R42565_*). |
| Template | Le modèle de document qui traite les fichiers — ils sont déposés dans son répertoire d'entrée. |
| Manifest | Manifeste pdf2xml facultatif, utilisé pour convertir les PDF de ce dossier. |
| Overlap h | Fenêtre de recouvrement en heures (défaut 2) : chaque exécution regarde les fichiers plus récents que le dernier scan moins cette fenêtre. |
| Mount | Coché, le répertoire doit être un partage monté — un point de montage non monté est signalé en erreur au lieu d'être lu comme vide. |
| Last scan | Le repère écrit à chaque exécution (instant UTC). Videz-le ou saisissez une date (yyyy-MM-dd, yyyy-MM-ddTHH:mm:ss en heure serveur, ou un instant ISO) pour reparcourir à partir de ce point. |
Au-dessus du tableau, Parallel conversions (défaut 4) fixe le nombre de PDF convertis simultanément ; le lot garde son propre pool de traitement.
Déroulement d'une exécution
- Lister — chaque dossier est parcouru à la recherche des fichiers qui correspondent à son motif et sont plus récents que dernier scan − recouvrement. Un dossier parcouru pour la première fois, sans date, ne prend que la fenêtre de recouvrement — utilisez une date de rattrapage pour l'historique.
- Filtrer — les fichiers déjà traités (nom de fichier source présent dans l'archive) ou déjà en attente au format XML dans le répertoire d'entrée du modèle sont écartés.
- Convertir — les PDF sont convertis en XML en parallèle dans le répertoire d'entrée du modèle ; les XML sont copiés tels quels.
- Traiter — un lot s'exécute par modèle, avec le parallélisme propre au lot.
La date de dernier scan avance à chaque exécution. Un fichier en échec est réessayé tant qu'il reste dans la fenêtre de recouvrement et signalé par son nom — il ne bloque jamais les autres.
Exécuter maintenant
Le groupe Run now exécute la configuration enregistrée à la demande :
- Dry run — liste seulement ce qui serait converti et traité.
- Scan and process — lance la récupération complète.
- Une date de rattrapage facultative élargit la fenêtre de chaque dossier pour cette exécution uniquement.
Planification et ligne de commande
- Planifié — dans global → Planification → Batch Document Processing, ajoutez un job de lot avec la source Watched folders, toutes les N minutes ou chaque jour à heure fixe. Le job peut cibler un seul dossier (choisi parmi les répertoires configurés) ou tous.
- Ligne de commande —
nomaubl.sh watch-folders <env> [--folder N] [--since <date>] [--dry-run] [--no-process]. - API —
POST /api/watch-folders/run.
Conseils & bonnes pratiques
- Gardez un recouvrement plus long que le temps de copie. Un fichier encore en cours d'écriture au passage du scan est repris à l'exécution suivante tant qu'il reste dans la fenêtre.
- Cochez Mount sur les partages réseau. Sinon, un partage non monté ressemble à un dossier vide et rien n'est traité, sans alerte.
- Commencez par un dry run. Il montre exactement quels fichiers une nouvelle ligne de dossier récupérerait avant toute conversion.