ONYX - 9.0 - Utilisation

Workflows-Guide avancé

De MappingDoc
Révision datée du 19 avril 2019 à 12:06 par Izarai (discussion | contributions) (CMD)

Valorisation des champs de saisie

Dans tous les types d’objet d’un Workflow, des champs ou zones de saisie sont utilisé(e)s, que ce soit pour définir une condition, une commande ou des paramètres. Les champs peuvent être les opérandes d’une condition, les paramètres d’exécution d’une commande ou bien les noms et valeurs affectés à un paramètre.

Deux familles de champs peuvent apparaitre dans les Workflows : les zones de textes libres et les listes déroulantes. Les champs de type texte acceptent la saisie libre alors que les listes déroulantes sont limitées à une sélection de valeurs (oui/non, type de fichier…).

Les champs de saisie ont un type par défaut qui peut être modifié en fonction des besoins à l’aide du bouton droit de la souris (menu contextuel). En fonction du type de champ choisi, des aides à la saisie sont proposées permettant de structurer correctement la valeur du champ.

OX S WRKFL Saisie.png


Fonctions sur les champs

Des fonctions sont disponibles sur les champs (de type texte ou liste) afin de récupérer des valeurs automatiquement. Les fonctions sur les champs permettent de définir la valeur des champs d’une commande, d’une condition ou d’un paramètre en utilisant au choix des variables, le contenu d’un fichier ou le résultat de commandes.

Certains champs sont prédéfinis avec une fonction telle que la liste des utilisateurs, la liste des formats M-Designer, … alors que d’autres non. Pour faire appel à une fonction, cliquer avec le bouton droit de la souris sur un champ et de choisir la fonction voulue dans le menu contextuel :

OX S wrkfl champ.png


Remarque :

Pour modifier la valeur donnée à un champ, seuls les deux premiers types ci-dessus (paramètre et texte libre) sont éditables directement dans la zone de saisie. Pour tous les autres, il convient de passer par la fonction sur le champ.

Champs propres à ONYX Server

Certains champs ont un typage particulier et bénéficient d’une aide à la saisie prédéfinie. Leurs valeurs possibles sont alors limitées à une liste d’éléments définis dans ONYX Server. Comme ce typage est indépendant des fonctions sur les champs, il est donc possible d’avoir deux possibilités d’aide au remplissage sur un champ.

OX S WRKFLW CHAMP.png


Paramètres d'environnement

Les champs de type Parameter prennent dynamiquement la valeur des paramètres d’environnement de l’application.

La fonction paramètre permet d’utiliser tous les paramètres disponibles lors de l’exécution du fichier :

- attributs du fichier en cours de traitement : utilisateur ( MAP_USER ), nom du fichier ( MAP_FILE), ...

- paramètres liés au traitement en cours : connecteur d’entrée du traitement ( MAP_PRINTER , MAP_SOAP , SCANFOLDER_NAME...), date de la soumission ( MAP_DATE), ...

- paramètres personnalisés : userdatas, passage de paramètres du workflow, ...

- variables d’environnement du système : répertoire temporaire ( TEMP), nom du système ( COMPUTERNAME),

- variables de session :

  • fichiers d’entrée / sortie de la boîte en cours : MAP_FILE_IN / MAP_FILE_OUT
  • identifiant du dernier spool inséré pour la session (exécution) en cours : LAST_SPOOL_ID
  • date, heure, date et heure courante, évaluées par Mapping au moment de l’appel de la variable (la syntaxe de récupération des informations est pilotée par les variables d’environnement Mapping correspondante) : MAP_CURRENT_DATE / MAP_CURRENT_TIME / MAP_CURRENT_TIMESTAMP

Valeur « DIRECTE »

Les champs de type Value prennent statiquement la valeur saisie dans le champ :

OX S valD1.png


Mais les valeurs saisies peuvent également être dynamiques en utilisant les mêmes variables d’environnement que précédemment avec la syntaxe particulière Mapping :

[% PARAMETRE %]. Elles sont très utilisées pour la construction de chemins complets ou noms de fichiers où plusieurs paramètres peuvent être utilisés en une seule fois :

OX S ValD2.png


Pour certains traitements particuliers (tris, éclatement ou fusion de documents, ...), il est enfin possible d’utiliser des valeurs de critères d’indexation du document (XPS) dans une valeur de champs avec la syntaxe particulière Mapping : [[ CRITERE ]]. Ainsi par exemple, à partir d’un document XPS unique, pour créer un PDF par client en sortie, dans la boîte de Commande To PDF , on utilisera :


RuleFile

Les champs de type Rulefile prennent la valeur d’une information lue dans un fichier (exemple : le fichier en entrée MAP_FILE_IN ou un autre). Plusieurs méthodes de lecture dans le fichier source sont proposées et détaillées ci-après.


Keyword : Recherche par mot clé

La lecture se fait en mode texte et la valeur récupérée dans le fichier source est identifiée par la recherche d’un mot clé :

OX S motclé.png


- Value : Valeur du mot clé à rechercher

- Skip : Nombre de caractères à ignorer après le mot clé

- Len : Nombre de caractères à retourner

- maxsize : Taille du buffer maxi pour la lecture du fichier source

- charset : Page de code du fichier source

- trim : Suppression des éventuels espaces en fin de chaine retournée (0 ou 1)

- file : Fichier source

Remarque : Pour faire appel à la recherche par mot clé, cliquer avec le bouton droit de la souris sur un champ et de choisir la fonction rulefile dans le menu contextuel, après cliquer sur la loupe.


Line : Recherche par position

Pour faire une recherche par position, il suffit de cliquer sur liste déroulante et choisir line.

OX S Rulefile line.png


La lecture se fait en mode texte et la valeur récupérée dans le fichier source est localisée par sa position (ligne / colonne) et sa longueur :

OX S Line pos.png


- line : Numéro de ligne

- pos : Numéro de colonne de départ dans la ligne

- len : Nombre de caractères à retourner

- maxsize : Taille du buffer maxi pour la lecture du fichier source

- charset : Page de code du fichier source

- trim : Suppression des éventuels espaces en fin de chaine retournée

- file : Fichier source


XML : Lecture directe dans un fichier XML

La lecture se fait en mode XML et la valeur récupérée dans le fichier source est identifiée par la requête XPath renseignée.

Exemples de recherche XML avec le fichier suivant :


OX S XML.png


- Recherche du nom de la balise page :

SELECTXML @name FROM /doc/page

- Recherche de la valeur du champ nommé id_lang :

SELECTXML . FROM /doc/page/field[@name=id_lang]

- Recherche de la valeur du premier champ SRLNBR :

SELECTXML . FROM /doc/page/group[@name=Items]/line[@name=item]/field[@name=SRLNBR]
SELECTXML . FROM /doc/page/group[@name=Items]/line/field[@name=SRLNBR]
SELECTXML . FROM /doc/page/group[@name=Items]/line/field[@title=Serial Number]

- Recherche de la valeur du deuxième champ SRLNBR :

SELECTXML . FROM /doc/page/group[@name=Items]/line[2]/field[@name=SRLNBR]
SELECTXML . FROM /doc/page/group[@name=Items]/line[2]/field[@title=Serial Number]

Commande

Les champs de type Command prennent la valeur retournée par l’exécution d’une commande prédéfinie ONYX Server. L’ensemble des commandes prédéfinies sont détaillées ci-après.

Attention : toute les commandes prédéfinies Mapping ne sont pas susceptibles de retourner une valeur exploitable dans un champ.

CMD

Les champs de type CMD prennent la valeur retournée par l’exécution d’une commande utilisateur (un script par exemple).

SQL

Les champs de type SQL prennent la valeur retournée par l’exécution d’une requête SQL (SELECT).

Table de résolution

Les champs de type Resolve prennent la valeur retournée par la recherche dans une table de Résolution ONYX Server.

Rulefile Multiple

Les champs de type Rulefile_multiple permettent de définir en une seule fois plusieurs paramètres valorisés par des informations lues à différents endroits dans un même fichier (par exemple, le fichier en entrée MAP_FILE_IN ou un autre). Disponible uniquement en lecture XML pour l’instant, c’est une optimisation de la définition de plusieurs paramètres de type "rulefile", réduisant à une seule ouverture et fermeture de fichier.