Modèles de règles¶
Concepts¶
Dans le cas le plus simple, un flux correspond à un transfert. Si le flux doit transiter via des serveurs de rebond, il est alors composé de plusieurs transferts.
Prenons l’exemple du flux suivant :
Ce flux gère le transfert des fichiers du partenaire A
aux
partenaires D
et G
.
Ce flux est composé de 6 transferts (numérotés ci dessous) répartis sur deux routes :
Cette numérotation se retrouve dans le contexte d’évaluation des
modèles sous le nom flow_index
.
Une deuxième numérotation est disponible dans le contexte d’évaluation:
c’est l’indice du transfert dans la route. il se retrouve sous le nom
route_index
et correspond à l’ordre des transferts au sein d’une
route :
Chaque transfert correspond à une règle de transfert de Waarp R66. Cette règle est définie à partir d’un modèle de flux.
L’écran de gestion des modèles de flux permet de consulter la liste des templates utilisé pour les flux ainsi que de les modifier.
![../../_images/templates-list.png](../../_images/templates-list.png)
Fig. 65 Liste des templates¶
Structure du template¶
Un modèle de flux est une liste de règles de transfert :
rules: [
Règle 1
Règle 2
...
règle N
]
Définition des règles¶
Les règles sont composées d’un nom (name
), d’un mode, d’une série de
tâches (les traitements pré-transfert, post-transfert et en cas d’erreur),
Ainsi que d’une condition d’exécution (when
).
Les chaines de traitement pré-transfert, post-transfert et en cas d’erreur
peuvent être définies pour l’émetteur du fichier (sender
) et le récepteur
(receiver
).
name: "{{flow_name}}_{{flow_index}}"
when: [condition]
mode: send
tasks: {
sender: {
pré: [ # Tâches exécutées par l'émetteur du fichier avant le transfert
task
...
]
post: [ # Tâches exécutées par l'émetteur du fichier après le transfert
task
...
]
error: [ # Tâches exécutées par l'émetteur du fichier en cas d'erreur
task
...]
}
receiver: {
pré: [ # Tâches exécutées par le récepteur du fichier avant le transfert
task
...
]
post: [ # Tâches exécutées par le récepteur du fichier après le transfert
task
...
]
error: [ # Tâches exécutées par le récepteur du fichier en cas d'erreur
task
...
]
}
}
Définition des tâches¶
Les tâches sont composées d’un type, d’arguments, différents pour chaque tâches
(path
), d’un délais (delay
), et d’une condition d’exécution optionnelle
(when
).
type: ZIP
path: "#TRUEFULLPATH# #ARCHPATH#"
delay: 1
when: route_index == last_index
La saisie d’un template¶
L’écran d’édition d’un template est découpé en 2 partie: La première décrit le template sous la forme d’une arborescence et permet d’accéder rapidement à une partie spécifique du template. La deuxieme permet de l’éditer.
![../../_images/templates-edit.png](../../_images/templates-edit.png)
Fig. 66 Edition d’un template¶
Ajout d’une règle¶
Pour ajouter une règle cliquer sur le bouton en face du label Règles
et sélectioner Ajouter une règle
.
![../../_images/templates-add-rule.png](../../_images/templates-add-rule.png)
Fig. 67 Ajout d’une règle¶
Suppression d’une règle¶
Pour supprimer une règle cliquer sur le bouton en face du label de la règle à supprimer et selectioner Supprimer la règle
.
![../../_images/templates-delete-rule.png](../../_images/templates-delete-rule.png)
Fig. 68 Ajout d’une règle¶
Ajout d’une tâche¶
Pour ajouter une tâche cliquer sur le bouton en face d’un des labels pre
, post
ou error
et sélectioner Ajouter une tâche
.
![../../_images/templates-add-task.png](../../_images/templates-add-task.png)
Fig. 69 Ajout d’une tâche¶
Suppression d’une tâche¶
Pour supprimer une tâche cliquer sur le bouton en face du label de la tâche à supprimer et sélectioner Supprimer la tâche
.
![../../_images/templates-delete-rule.png](../../_images/templates-delete-rule.png)
Fig. 70 Ajout d’une règle¶