Altova FlowForce Server 2024 Advanced Edition

Créer une tâche d'enquête du répertoire

Accueil Préc Haut Suivant

Cet exemple vous montre comment contrôler les modifications dans un répertoire avec l’aide d’un déclencheur de système de fichier créé dans FlowForce Server (voir aussi Déclencheurs de système fichier). Lorsqu’un nouveau fichier XML est ajouté au répertoire, FlowForce Server exécute une tâche de mappage qui prend le fichier XML en tant que paramètre d'entrée. La sortie de la tâche de mappage est ensuite déplacée vers un répertoire d'archive.

 

Prérequis

Licences requises : MapForce édition Enterprise ou Professional, MapForce Server ou MapForce Server Advanced Edition, FlowForce Server

Les services FlowForce Web Server et FlowForce Server doivent écouter adresse réseau et le port configurés.

Vous disposez d’un compte utilisateur FlowForce Server avec des permissions vers un des conteneurs (par défaut, le conteneur /public est accessible à tout utilisateur authentifié).

La tâche de mappage créée dans cet exemple copie les fichiers d'un répertoire vers un autre. C’est pourquoi, dans le système d’exploitation sur lequel FlowForce Server est exécuté, veuillez vous assurer que les deux répertoires existent et que vous possédez les droits de créer des fichiers dans les deux répertoires. Cet exemple utilise les répertoires C:\FlowForceExamples\DirPolling et C:\FlowForceExamples\Archive.

 

Fichiers démo utilisés

ShortApplicationInfo.mfd — le mappage MapForce à partir duquel la tâche FlowForce Server sera créée

ApplicationsPage.xml — le fichier d'instance XML à fournir en tant qu'entrée du mappage.

 

Les deux fichiers sont disponibles dans le chemin suivant sur la machine dans laquelle MapForce est installé : <Documents>\Altova\MapForce2024\MapForceExamples\.

 

Ce que fait le mappage

Le mappage MapForce utilisé dans cet exemple (ShortApplicationInfo.mfd) est illustré ci-dessous. Depuis une perspective FlowForce Server, la chose importante à retenir est que le mappage prend un fichier XML en tant qu'entrée, et produit un autre fichier XML en tant que sortie.

 

Ce mappage convertit un fichier XML (ApplicationsPage.xml) en un schéma différent et l'enregistre en tant que ShortInfo.xml. Le mappage est relativement simple à comprendre en regardant la connexion supérieure : pour chaque Item trouvé dans la source, il crée un item Info dans la cible. Les autres connexions sont utilisées pour copier des valeurs depuis les items d'enfants respectifs. La connexion représentée par des pointillés est particulièrement intéressante ; dans MapForce, cette connexion est appelée "Source-driven (Contenu mixte)" et est utilisée parce que SubSection détient un contenu mixte.

ff_map_ShortApplicationInfo

ShortApplicationInfo.mfd

Notez que les noms des schémas XML de source et de cible sont SectionedPage et ShortInfo, respectivement. Comme vous le verrez plus loin, la tâche FlowForce contiendra un paramètre d'entrée et de sortie portant le même nom, une fois que le mappage est déployé sur FlowForce Server.

 

Déployer le mappage sur FlowForce Server

Le mappage ShortApplicationInfo.mfd ne nécessite aucune préparation spéciale avant d'être déployée dans FlowForce Server. Puisque les composants de source et de cible sont des fichiers XML, ils seront inclus automatiquement dans le paquet déployé sur FlowForce Server.

 

Pour déployer le mappage sur FlowForce, l'ouvrir dans MapForce et exécuter la commande de menu Fichier | Déployer sur FlowForce Server.

fs_ex_dir_polling_02

Si FlowForce Server est exécuté sur un hôte et un port différents, changer les détails de connexion en conséquence, voir Définir les paramètres de réseau. Noter aussi que le chemin du  mappage est /public/Examples/ShortApplicationInfo.mapping; cela est identique avec les exemples précédents.

 

Créer la tâche de sondage du répertoire

Une fois que le mappage a été déployé à FlowForce Server, le navigateur s'ouvre et charge la page de création de la tâche. Comme illustré ci-dessous, la première étape d'exécution est créée automatique et elle appelle la fonction de mappage déployée précédemment. Veuillez noter que le paramètre d'entrée porte le même nom que le composant de source MapForce (SectionedPage), alors que le paramètre de sortie porte le même nom que le composant de la cible (ShortInfo).

fs_ex_dir_polling_03

Configurer la tâche comme suit :

 

1.Dans le dialogue Working-directory, saisir le chemin vers le répertoire de travail applicable à cette étape. Cet exemple utilise C:\FlowForceExamples\Mapping en tant que répertoire de travail.

Un répertoire de travail est un paramètre requis par les étapes d'exécution si la tâche nécessite un emplacement pour déballer tout fichier d'entrée ou enregistrer des fichiers de sortie. FlowForce Server utilise également le répertoire de travail pour résoudre tous chemins relatifs qui se produisent au cours de l'exécution des étapes. Lorsque vous êtes invité à fournir un répertoire de travail, vous devriez fournir un chemin valide au niveau du système d'exploitation sur lequel FlowForce Server est exécuté. Si vous ne fournissez pas de répertoire de travail lorsque vous créez l'étape, FlowForce Server utilisera un répertoire temporaire.

2.Sous "Déclencheurs", cliquer sur new Filesystem trigger. Notez que FlowForce Server ajoute automatiquement un nouveau paramètre triggerfile sous "Paramètres d'entrée". Vous devrez vous référer à ce paramètre dans une étape suivante.

TriggerfileParameter

3.Définir les valeurs de déclencheur suivantes :

 

Vérifier : Date modifiée

Fichier ou répertoire : C:\FlowForceExamples\DirPolling\*.xml

Intervalle de sondage : 60 secondes

fs_ex_dir_polling_05

4.Sous Étapes d'exécution, fournir le paramètre triggerfile en tant que valeur d'entrée dans le paramètre SectionedPage. Pour ce faire, cliquer sur la touche ff-setTo à côté du paramètre SectionedPage, puis sélectionner triggerfile. En résultat, la valeur du paramètre SectionedPage change en {triggerfile}. Les accolades désignent une expression FlowForce et ne devraient pas être supprimées.

fs_ex_dir_polling_06

Une fois arrivé à cette étape, le déclencheur se déclenchera dès que ApplicationsPage.xml est copié dans le répertoire de travail. Néanmoins, puisque le déclencheur utilise un caractère générique (*.xml), il sera aussi déclenché lorsqu'un autre fichier XML change dans le répertoire, y compris la sortie de mappage lui-même (ShortInfo.xml). Il ne s'agit là pas du comportement prévu et peut entraîner des erreurs ; nous allons donc ajouter une deuxième étape qui déplacera le fichier de sortie généré dans un nouveau répertoire. En alternative, vous pouvez renommer le déclencheur en \FlowForceExamples\DirPolling\ApplicationsPage.xml (dans ce cas, une deuxième étape n'est plus nécessaire).

 

Pour ajouter l'étape qui déplace la sortie vers un nouveau répertoire, procédez comme suit :

 

1.Ajoutez une nouvelle étape d'exécution, juste après la précédente.

2.Configurer l'étape comme suit (noter que les champs source et destination sont sensibles à la casse) :

 

Exécuter fonction

Chercher la fonction /system/filesystem/move.

Source

ShortInfo.xml

 

Nous avons utilisé un chemin relatif parce que le paramètre du Répertoire de travail est défini, voir ci-dessous.

Destination

Elle doit être un fichier ou un chemin de répertoire existant dans le système d'exploitation sur lequel FlowForce Server est exécuté. Définir sur :

 

C:\FlowForceExamples\Archive

Écraser la cible

Cocher cette case. Elle indique à FlowForce Server d'écraser tous les fichiers portant le même nom trouvés dans le chemin de destination.

Abandonner sur erreur

Ne pas toucher à ce paramètre.

 

Paramètre optionnel. Ce paramètre détermine la sortie de la tâche dans laquelle une erreur est apparue. Si le paramètre Abandon sur erreur est true, l’exécution de la tâche sera terminée. Si le paramètre Abandon sur erreur est false, FlowForce Server ignorera les erreurs et poursuivra son exécution de la tâche. La valeur par défaut est true.

Répertoire de travail

FlowForce cherchera tous les chemins de fichier relatifs dans ce répertoire. Définir sur :

 

C:\FlowForceExamples\DirPolling

fs_ex_dir_polling_07

Enfin, ajoutez vos identifiants de système d'exploitation avec lequel la tâche sera exécutée :

 

1.Sous "Identifiants", choisissez un enregistrement d’identifiant existant ou spécifiez un identifiant local. Pour plus d'informations, voir Identifiants.

2.Cliquez sur Enregistrer.

 

Exécuter la tâche

Vous pouvez maintenant tester la tâche en copiant le fichier ApplicationsPage.xml dans le répertoire de travail. Pendant cette étape, FlowForce Server exécute la tâche de mappage et copie le fichier de sortie résultant dans le répertoire d'archive.

 

Pour voir si une tâche a été exécutée correctement, veuillez vous référer au journal de la tâche .

© 2018-2024 Altova GmbH