Cet article est basé sur la présentation que nous avons donnée au FourPees/callas/axaio VIP Event 2019.
Un flux variable et évolutif
Voilà un souhait que nous avons tous !
Faire que notre flux soit le plus variable que possible, afin de ne pas avoir à le retoucher sans arrêt, et lui permettre de prendre en compte les nouveaux cas de traitement sans refonte du flux.
Le cas client
Nous avons un client qui a émis ce souhait, notamment car il a très souvent de nouvelles demandes auxquelles il faut répondre. De plus, l’idée est d’avoir un front-end client interne qui soit simple et où les utilisateurs n’ont pas à saisir des dizaines de paramètres à chaque fois.
Nous avons repris ici ce cas client et l’avons simplifié de manière à rendre la démonstration plus simple.
Les ingrédients
Notre flux est évidemment basé sur Enfocus Switch, notre outil de flux de production préféré !
Nous savons que pdfToolbox est capable de variabiliser les traitements, notamment au travers des plans de traitement. Nous allons donc porter notre choix sur cet outil pour les traitements PDF. En effet, il est possible d’injecter des variables dans le plan de traitement qui serviront à déclencher ou non des actions spécifiques (conversion couleur, vectorisation, recadrage, etc.).

Pour la partie client, nous avons utilisé une page web qui permet d’envoyer les travaux au flux. Nous avons ici utilisé le module Switch WebServices pour créer une page personnalisée. Comme expliqué plus haut, l’utilisateur aura simplement à choisir un type de processus (nom défini par le client) pour effectuer tous les traitements.

Maintenant, concernant la partie variable, nous aurions pu utiliser des fichiers XML, JSON, etc. pour soumettre les informations à pdfToolbox, mais nous avons choisi une approche plus simple, et surtout beaucoup plus facile à mettre à jour… l’utilisation d’une base de données 😉
Pour chaque type de processus, nous avons une liste des traitements disponibles et il suffit alors de renseigner chaque colonne pour créer un plan de traitement spécifique !
Modifier un type de processus ? Il suffit de modifier les valeurs dans la table.
Ajouter un nouveau type de processus ? Il suffit simplement de créer une nouvelle ligne dans la table.

Une démonstration en vidéo
Eternity- Musique libre de droits de https://audiohub.fr – Licence: CC BY (https://creativecommons.org/licenses/by/4.0/)
Et maintenant ?
Vous êtes séduits, mais vous trouvez cela compliqué à mettre en œuvre ? Vous ne savez pas par où commencer ?
N’hésitez pas à nous contacter et nous verrons ensemble comment vous accompagner sur un tel projet.
Des questions ? Utilisez les commentaires ci-dessous !
Une véritable démonstration de force! Dans les années 80, on appelait l’agence tous risques en cas de situation insolvable. Aujourd’hui, quand il faut sortir l’huile de coude pour réaliser les implémentations les plus incroyables, on appelle agileStreams !
Cela donne des idées de flux ; merci pour cet article.