Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Une personne voulant intervenir dans un processus ou gérer des processus doit être identifiée en tant qu’utilisateur dans un annuaire WorkflowGen et posséder un compte (nom d’utilisateur et mot de passe) dans l’annuaire de référence sur lequel WorkflowGen se repose pour l’authentification.
Les utilisateurs peuvent être membres de groupes. Néanmoins, un groupe ne peut pas appartenir à un autre groupe.
Un utilisateur possède un statut actif ou inactif. Lorsque son statut est inactif l’utilisateur ne peut pas accéder à l’application.
Un utilisateur ne peut être supprimé de la base de données WorkflowGen si cet utilisateur est associé à un élément dans WorkflowGen. Si ce n’est pas le cas il sera archivé. « Archivage » signifie que le nom d’utilisateur sera modifié avec un numéro de séquence unique et recevra le statut archivé. L’utilisateur ne pourra plus accéder à l’application.
Plusieurs annuaires peuvent être gérés dans WorkflowGen. Ceci est particulièrement utile lorsque le module de synchronisation est actif. Un annuaire peut être géré manuellement dans WorkflowGen tandis qu’un autre peut être synchronisé à un annuaire de référence (Active Directory, LDAP, etc.). Même si plusieurs annuaires sont utilisés, chaque nom d’utilisateur doit être unique à travers le système.
Seuls les utilisateurs avec le profil Administrateur peuvent gérer les utilisateurs.
WorkflowGen est fourni avec un annuaire par défaut WORKFLOWGEN ainsi qu’un utilisateur administratif qui ne peut pas être supprimé.
L’objectif de ce guide est la description de tous les écrans du module d’administration de WorkflowGen et fournit une liste complète des règles de fonctionnement associées à ces écrans. Ce guide décrit également les applications de workflow incorporées et la manière de les utiliser.
Le guide de référence est une source d’information importante afin de vous permettre de comprendre comment le logiciel se comporte dans différentes situations.
Vous trouverez également la liste des erreurs possibles ainsi que leur description et cause.
Les informations globales concernent les informations pouvant être utilisées par tous les processus :
Les Participants représentent l’organisation de la société dans la gestion et l’exécution des processus.
Les sont les applications de workflow appelées depuis WorkflowGen afin de lancer les actions.
Les sont les mots clés associés aux processus à des fins de recherche.
Le module permet aux utilisateurs autorisés de gérer les listes de données du module d'administration à utiliser avec les formulaires Web.
Les informations globales sont gérables uniquement par des utilisateurs ayant le profil administrateur.
Pour accéder à un annuaire, cliquez sur l’icône Annuaire pour afficher la liste des annuaires, puis cliquez sur l’annuaire dont vous souhaitez afficher les propriétés.
Liens
Remarques
Pour modifier un annuaire, cliquez sur son nom dans la liste des annuaires.
L’annuaire WORKFLOWGEN ne peut pas être supprimé.
Un annuaire associé à des utilisateurs ou des groupes ne peut pas être supprimé.
Un répertoire ne peut être supprimé s’il est un répertoire vide.
L'application de workflow GETPROCESSDATA vous permet de récupérer la valeur d’une ou de plusieurs données d’une demande. Elle fournit un moyen simple d’interagir entre différents processus.
Dans certains cas, cette application peut remplacer l’appel à un sous-processus et ainsi éviter la gestion parfois contraignante des versions entre les processus fils et parents.
Le paramètre REQUEST_ID de direction IN et de type numérique est obligatoire et doit contenir un numéro de demande valide.
Les autres paramètres sont définis dans l’action du workflow selon vos besoins.
Nom du paramètre : le nom de la donnée distante à récupérer
Récupérer la valeur dans : la donnée de processus à modifier
Pour récupérer la valeur de la donnée COMPANY d’un processus distant dans une donnée CUSTOMER_COMPANY d’un processus, ajouter une action de type GETPROCESSDATA avec comme paramètre optionnel :
Nom du paramètre : COMPANY
Récupérer la valeur dans : CUSTOMER_COMPANY
Les données COMPANY et CUSTOMER_COMPANY doivent être du même type.
La définition des règles de sécurité en rapport avec les processus et les utilisateurs.
L’accès au module d’administration ainsi que son utilisation doivent être gérés avec prudence car les fonctions disponibles sont très sensibles.
L’accès au module d’administration se fait à travers l’URL http://votresite/wfgen/admin/default.aspx.
Selon la méthode d'authentification choisie par les administrateurs de WorkflowGen, vous devrez indiquer un nom d’utilisateur et un mot de passe quand vous ouvrez une session WorkflowGen. Ces données correspondent à celles que vous utilisez quand vous ouvrez une session Windows.
Vous pouvez choisir une langue dans la page d’accueil de l’écran de l’application. Si la liste n’est pas affichée cela signifie que l’application a été configurée afin de n’utiliser qu’une seule langue. Le pays à côté de la langue permet au système d’utiliser les paramètres régionaux appropriés dans l’application et plus spécialement pour l’affichage des dates et des valeurs numériques.
Par exemple, English (United Kingdom) correspond à l’interface utilisateur en anglais avec des paramètres régionaux du Royaume-Uni (format jj/mm/aaaa) tandis que English (United States) correspond à l’interface utilisateur en anglais avec des paramètres régionaux des États-Unis (format m/j/aaaa).
Actuellement, vous pouvez choisir parmi la liste suivante des langues :
English (Australia)
English (Canada)
English (United Kingdom)
English (United States)
Français (Canada)
Français (France)
Français (Suisse)
Deutsch (Deutschland)
Deutsch (Schweiz)
Italiano (Italia)
Português (Portugal)
Español (España)
Cliquez sur Annuaires sur le bandeau pour accéder à l'écran Annuaires, puis cliquez sur Annuaires dans l'écran des annuaires pour ouvrir la liste des annuaires.
Cliquez sur Process sur le bandeau pour ouvrir la liste des dossiers de processus.
Cliquez sur Participants sur le bandeau pour ouvrir la liste des participants.
Cliquez sur Applications sur le bandeau pour ouvrir la liste des applications.
Cliquez sur Catégories sur le bandeau pour ouvrir la liste des catégories.
Cliquez sur Listes globales sur le bandeau pour ouvrir la liste des listes globales.
Cliquez sur Portail sur le bandeau pour accéder au portail de workflow.
Dans le module d’administration, cliquez sur le nom d’un des processus listés pour accéder aux onglets suivants relatifs au processus sélectionné :
Infos
Participants
Données
Formulaire
Workflow (vue Graphique ou Liste)
Double-cliquez une action dans la vue Graphique, ou cliquez une action dans la liste des actions pour ouvrir le formulaire d’édition d’une action, qui comprend les onglets suivants :
Infos
Paramètres
Actions suivantes
Notifications
L'écran de workflow de processus comprend également les liens suivants :
Plein écran
Rapport
Tester
Dans la section de gestion des processus du module d'administration, cliquez sur :
Process, pour accéder à la liste des dossiers et par la suite, la liste des processus d’un dossier ainsi qu’à leur formulaire d’édition.
Participants, pour accéder à la liste des participants et par la suite éditer un participant.
Applications, pour accéder à la liste des applications et par la suite éditer une application.
Catégories, pour accéder à la liste des catégories et par la suite éditer une catégorie.
Listes globales pour accéder à la liste des listes globales (voir ).
Dans la section de gestion des utilisateurs du module d'administration, cliquez sur :
Annuaires, pour accéder à la liste des annuaires, puis éditer un annuaire (voir Annuaires).
Utilisateurs, pour accéder à la liste des utilisateurs, puis éditer un utilisateur (voir Utilisateurs).
Groupes, pour accéder à la liste des groupes, puis éditer un groupe (voir Groupes).
Délégations, pour accéder à la liste des délégations (voir ).
Logs de synchronisations, pour accéder à la liste des logs de synchronisation des annuaires synchronisés (voir ).
Le panneau de configuration comprend les onglets suivants :
Général
Portail
Administration
Synchronisation annuaire
Intégration
Approbation à distance
Diagnostique
Informations produit
Voir Panneau de configuration pour de plus amples renseignements.
Cliquez sur Centre de ressources pour accéder au Centre de ressources WorkflowGen.
La plupart du temps, les informations dans la base de données sont identifiées par un nom (en plus d’un numéro interne dédié).
Pour des raisons techniques et de lisibilité, ces noms ne doivent contenir que des caractères, des combinaisons alphanumériques, ou - et _ (sans espaces, sans accents).
L’administrateur peut limiter l’étendue des caractères à la table ANSI ou autoriser l’utilisation de tous les caractères alphanumériques inclus dans la table étendue (Unicode).
Dans la section Administration du panneau de configuration, sélectionnez Restriction d’encodage des données dans la section Affichage. Dans la plupart des cas, le nom ne doit pas dépasser 30 caractères.
L’accès au module d’administration est limité aux utilisateurs ayant un profil administrateur et aux utilisateurs appartenant aux participants définis comme gestionnaire de dossier. Cependant, durant l’installation du logiciel, le contrôle d’accès peut être désactivé temporairement.
Une fois que l’authentification est active les restrictions suivantes s’appliquent :
Les administrateurs n’ont aucune restriction d’accès à l’exception du module de gestion des paramètres de configuration de l’application qui nécessite un droit d’accès spécifique (voir la documentation technique).
Les gestionnaires de dossier ont accès à la définition et aux statistiques des processus de leur(s) dossier(s). Ils n’ont pas d’accès aux annuaires, groupes, la gestion d’utilisateurs, délégations, participants globales et la gestion des applications.
Les superviseurs de processus n’auront pas accès au module d’administration, mais peuvent avoir accès au module statistiques de leur processus via le portail.
Afin de garantir l’archivage des demandes, les informations ne peuvent pas être supprimées si elles sont liées à une définition de processus ou à une donnée globale. De même manière, les informations utilisées dans les demandes « réelles » faites par les utilisateurs ne peuvent pas être supprimées.
Nouvel annuaire
Affiche l’écran d’édition des annuaires en mode ajout
Rafraîchir
Rafraîchit la liste des annuaires
Supprimer
Supprimer un annuaire
Colonnes
Remarques
Ordre
Utilisez les flèches pour changer l’ordre de la liste
Nom
Nom de l’annuaire (un lien affiche l’écran d’édition de l’annuaire en mode ajout)
Description
Description de l’annuaire
Groupe(s)
Nombre de groupes associés à l’annuaire (un lien affiche les groupes correspondants)
Utilisateur(s)
Nombre d’utilisateurs associés à l’annuaire (un lien affiche les utilisateurs correspondants)
Champs
Remarques
Nom
Identifiant unique de l’annuaire devant respecter la nomenclature et être limité à 50 caractères (champ obligatoire)
Description
Description de l’annuaire limitée à 255 caractères (champ obligatoire)
Annuaire par défaut
Si sélectionné, l’annuaire est affiché en premier dans la liste des annuaires sélectionnés dans le module d’administration
Mot de passe des utilisateurs
Si sélectionné, les mots de passe sont gérés par WorkflowGen
Connecteur d’annuaire
Différentes sources pouvant être utilisées pour la gestion de l’authentification
L’éditeur de formulaire intégré crée un formulaire Web (ASPX et le code-behind) qui est principalement bâti sur le framework ASP.NET et les librairies WorkflowGen.My.
Cela signifie qu'il offre l'avantage d’avoir des possibilités infinies de personnalisation et d’intégration du formulaire Web selon vos besoins spécifiques dans un environnement de développement avancé et intégré tel que Visual Studio.
Un processus peut être facilement et rapidement créé comme première version en utilisant l'éditeur de formulaire intégré. Ceci permet aux utilisateurs de tester la première version comme un pilote.
Si le processus répond aux besoins métiers il peut être déployé en production.
S’il y a des fonctionnalités personnalisées ou avancées requises dans une nouvelle version qui ne sont pas disponibles dans l’éditeur de formulaire intégré, le processus peut être migré vers le développement Web.
Pour migrer un processus créé avec l’éditeur de formulaire Web, suivez les étapes ci-dessous :
Sauvegardez une nouvelle version du processus ou dupliquez-le.
Décochez l'option Activer l’éditeur de formulaire sur l'onglet Infos.
Dans Visual Studio, ouvrez le site Web du formulaire avec le chemin du dossier (\wfgen\wfapps\WebForms\[nom du process]\V[numéro de version]) et commencez votre développement.
Pour plus de renseignements sur le développement des formulaires Web, référez-vous au .
Toutes les chaînes de connexion dans \wwwroot\wfgen\web.config sont disponibles pour une utilisation dans l’éditeur de formulaire et dans les listes globales sauf la chaîne de connexion de la base de données maître. Bien que l’application tente de vérifier que les requêtes SQL utilisées dans ce contexte soient sécurisées et contiennent uniquement des instructions SELECT, vous devrez également vous assurer que les chaînes de connexion exposées soient sécurisées au niveau de la base de données. Cela signifie que si vous ne voulez pas qu’un superviseur de processus ou un superviseur de listes globales puisse mettre à jour ou modifier une base de données spécifique, la chaîne de connexion devrait avoir un accès en lecture seule à la base de données.
Gardez à l’esprit que les créateurs de processus peuvent utiliser toute chaîne de connexion à laquelle ils peuvent accéder depuis l’éditeur code-behind de l’éditeur de formulaires. Si vous voulez limiter l’accès d’un superviseur de listes globales à une chaîne de connexion tout en permettant le créateur de processus d’y accéder, vous devez ajouter la chaîne de connexion au web.config de l’application WebForms (\wwwroot\wfgen\WfApps\WebForms\web.config).
Les chaînes de connexion dans le web.configde WebForms ne sont pas exposées dans l’interface utilisateur de WorkflowGen, donc pour que les créateurs de processus puissent les utiliser, ils doivent connaître le nom de la chaîne. Ceci est également un manière pratique de donner accès aux créateurs de processus distincts à différentes chaînes de connexions.
L'application de workflow UPDATEPROCESSDATA vous permet de modifier la valeur d’une donnée d’un processus pour une demande donnée. Elle fournit un moyen simple d’interagir entre différents processus, puisqu’une demande peut modifier une ou plusieurs données d’une autre demande.
Le paramètre REQUEST_ID de direction IN et de type numérique est obligatoire et doit contenir un numéro de demande valide.
Les paramètres optionnels sont le ou les noms des données qui devront être modifiées.
Dans un processus, pour créer une action de type UPDATEPROCESSDATA, utilisez les paramètres suivantes :
REQUEST_ID envoie la valeur de la donnée :
Donnée : REQUEST_ID_UPDATE
AMOUNT envoie la valeur de la donnée :
Si vous souhaitez modifier la donnée AMOUNT (montant) avec la valeur de la donnée de processus AMOUNT_UPDATE, l’ID de demande à modifier est stocké dans une donnée de processus REQUEST_ID_UPDATE.
Donnée : AMOUNT_UPDATE
Paramètre
Type
Direction
Description
REQUEST_ID
Numérique
IN
L'ID de la demande à annuler
Paramètre
Type
Direction
Description
NOTIFY_PARTICIPANT
Texte
IN
Notifier les participants de la demande de l'annulation :Y ou N (par défaut)
Vous pouvez laisser votre dossier Web ([nom du processus]\V[numéro de version]) comme un sous-dossier dans l'application Web « webforms » (\wfgen\wfapps\webforms) ou transformer ce dossier en une application Web dans IIS.
Dans le premier cas votre formulaire Web sera dépendant des ressources de l’application Web « webforms » (par exemple : \bin, \App_Data, \App_Resources, \App_Themes, etc...) comme avant la migration.
Dans le dernier cas votre formulaire Web sera une application Web indépendante et vous devrez copier le sous-dossier \bin dans \webforms à votre dossier et si nécessaire actualiser le projet dans Visual Studio
Un fichier XML à convertir
Un fichier XSLT permettant de convertir le fichier XML vers n’importe quel type de format
Un paramètre RESULT pour stocker le résultat
Un paramètre RESULT_FILEEXT permettant de connaître l’extension du résultat
Un paramètre RESULT_MIMETYPE permettant de connaître l’extension le type MIME du résultat
Après la collecte de l’ensemble des informations XMLTRANS est prêt à effectuer la transformation et retourne ensuite le contexte à WorkflowGen pour que le workflow se poursuive.
Les erreurs suivantes peuvent se produire lors de l’exécution des transactions.
Code
Description
1
Le champ obligatoire XML est manquant.
2
Le champ obligatoire RESULT est manquant.
3
Le champ obligatoire XSLT est manquant.
4
Le fichier XML n’est pas un document XML valide.
5
Le fichier XSLT n’a pas été trouvé.
Liens
Remarques
Nouveau
Affiche l’écran de délégation en mode ajout
Rafraîchir
Rafraîchit la liste des délégations
Filtres externes
Remarques
Processus
Affiche les délégations des processus sélectionnés (seuls les processus actifs ou archivés sont listés)
Filtrer sur
Remarques
Participant
Filtre par participant
Utilisateur
Filtre par utilisateur (délégataire)
Utilisateur délégué
Filtre par utilisateur délégué
Colonne
Remarques
Processus
Nom du processus
Participant
Nom du participant
Utilisateur
Nom d’utilisateur (délégataire)
Utilisateur délégué
Nom d’utilisateur délégué
Du ...
Date de début de la délégation (incluse); la délégation est illimitée si non définie
Champs
Remarques
Processus
Nom d’un processus actif (par défaut)
Les processus archivés sont listés si la case à cocher Afficher toutes les versions des processus est sélectionnée. Ceci permet l’ajout et la modification des délégations définies sur des demandes en cours basées sur des processus archivés (versions précédentes). Si non défini, le champ participant est désactivé.
Vous pouvez sélectionner tous les processus. Dans ce cas, la délégation sera basée sur toutes les fonctions des processus associées à l’utilisateur sélectionné.
Participant
Participant des processus sélectionnés (sauf si Tous)
Utilisateur
Utilisateur associé avec le participant sélectionné (délégataire) dont on veut déléguer une fonction de processus.
Utilisateur délégué
Utilisateur devant agir à la place du délégataire dans les fonctions de processus sélectionnées
L’utilisateur délégué doit être différent de l’utilisateur.
Du ...
Date de début de la délégation (incluse)
Si définie, la date de fin est requise (période de délégation). La délégation est illimitée si non définie.
Lors de la création d’une nouvelle délégation vous pouvez choisir d’envoyer ou non un message afin d’informer le délégué via la boîte de dialogue affichée.
Une délégation est unique pour un processus, un participant, un utilisateur et un utilisateur délégué. Ceci signifie que vous pouvez créer qu’une délégation en avance pour une période spécifique.
Vous ne pouvez pas définir de délégations croisées sur des périodes superposées entre les mêmes utilisateurs sur le même participant.
Vous ne pouvez pas définir de délégations « multi-niveau » (ex. : utilisateur A délègue à l’utilisateur B, mais utilisateur B ne peut pas déléguer les actions de l’utilisateur A à l’utilisateur C).
La suppression d’une délégation ne supprime pas les utilisateurs associés.
Les délégations sont spécifiques aux versions des processus :
Les nouvelle versions d’un processus copieront les délégations existantes de la version active précédente.
Comme les délégations peuvent être créées pour des processus.
Un utilisateur délégué verra les actions/demandes du délégateur d’un processus versionné au moment de la création de la délégation et dans tous les nouvelles versions s’il n’y a pas de changement de délégations entre versions.
Quand une délégation est modifiée dans la version courante, les délégations précédentes ne sont pas affectées.
Les administrateurs ont accès aux délégations dans le module d'administration pour faire des ajouts, modifications, ou suppressions de délégations.
Les modules de WorkflowGen peuvent être accédés directement depuis la barre d'adresse de votre navigateur en saisissant l'URL de chacun.
http://VOTRESITE/wfgen/default.aspx
http://VOTRESITE/wfgen/admin/default.aspx
http://VOTRESITE/wfgen/admin/Config.aspx
Pour des informations sur comment utiliser les URL WorkflowGen pour les intégrations, consultez la section dans le (disponible en anglais seulement).
6
Le fichier XML n’a par été trouvé.
7
Impossible d’écrire le résultat dans le paramètre RESULT. Vérifiez que les règles de sécurité sont correctes.
8
Impossible de lire le fichier XML. Vérifiez que les règles de sécurité sont correctes.
9
Le fichier XSLT n’est pas une feuille de style de transformation XSLT valide.
10
Le contexte reçu n'est pas valide.
11
Si les paramètres RESULT_FILEEXT ou RESULT_MIMETYPE sont définis, l’autre doit être défini également.
Liens
Remarques
Nouveau
Affiche l’écran d’édition des catégories en mode ajout
Rafraîchir
Rafraîchit la liste des catégories
Filtrer sur *
Remarques
Nom
Filtre par nom de catégorie
Description
Filtre par description de catégorie
* Un filtre peut s’appliquer à une partie d’un champ.
Colonnes
Remarques
Nom
Nom de la catégorie (un lien permet d’afficher la fiche d’édition de la catégorie)
Description
Description de la catégorie
Utilisation
Nombre de processus listés dans la catégorie
Champs
Remarques
Nom
Identifiant unique pour la catégorie; doit être conforme à la nomenclature et limité à 30 caractères (champ obligatoire)
Description
Description de la catégorie limitée à 255 caractères (champ obligatoire)
Une catégorie ne peut pas être supprimée si elle est utilisée par un processus.
Au ...
Date de fin de la délégation (incluse); la délégation est illimitée si non définie
Au ...
Date de fin de la délégation (incluse)
Si définie, la date de début est requise (période de délégation). La délégation est illimitée si non définie.

L'application de workflow COMPLETEACTION vous permet de compléter une action en cours avec les paramètres correspondant. Elle fournit une solution pour interagir et synchroniser des processus entre eux.
Les paramètres facultatifs sont les paramètres de l'action à compléter. Vous devrez définir ces paramètres dans les paramètres d'action correspondants. Vous pouvez ajouter autant de paramètres facultatifs qu'il y a de paramètres de l'action à compléter.
Si vous souhaitez compléter une action de type procédure Web asynchrone nommée MYASYNCACTION et qui possède le paramètre suivant :
AMOUNT reçoit la valeur de la donnée TOTAL (vous devez créer cette donnée dans votre processus)
Alors dans votre processus, ajoutez une action de type COMPLETEACTION avec les paramètres suivants :
L’application de workflow SENDMESSAGE permet aux utilisateurs d’envoyer des notifications par SMS via la plateforme Twilio; pour utiliser cette application, il faut créer un compte sur le site Web Twilio à l’adresse https://www.twilio.com/sms.
L’application SENDMESSAGE requiert deux paramètres (BODY et TO) qui sont liés à leurs identifiants correspondants.
Les valeurs qui correspondent aux paramètres ACCOUNT_SID, AUTH_TOKEN et FROM sont requis pour se connecter à Twilio, mais celles-ci sont habituellement configurés dans la section Messagerie instantanée dans l’onglet Général du Panneau de configuration. Cependant, si ces paramètres ont été configurés dans l’action SENDMESSAGE dans un processus, ces valeurs outrepasseront les valeurs correspondantes configurées dans le Panneau de configuration.
* Ces paramètres doivent être associés à un compte Twilio.
Le paramètre REQUEST_ID de direction IN et de type numérique est obligatoire et doit contenir un numéro de demande valide.
Tout autre paramètre permet de récupérer les valeurs des champs dans les données du processus exécutant l’application GETFORMDATA.
Nom du paramètre : l’identifiant complet du champ dans le formulaire (ex. : REQUEST_COMPANY)
Récupérer la valeur dans : la donnée de processus à mettre à jour
Pour récupérer la valeur du champ REQUEST_COMPANY dans une donnée du processus nommée CUSTOMER_COMPANY, ajouter une action de type GETFORMDATA avec comme paramètres :
Nom du paramètre : REQUEST_ID
Envoyer la valeur de : l’identifiant d’une demande valide
Nom du paramètre : REQUEST_COMPANY
Récupérer la valeur dans : CUSTOMER_COMPANY
Erreur de licence
Cette opération n’est pas autorisée avec votre licence.
Erreur
Cause
Vous n’êtes pas autorisé à voir cette page
L’utilisateur doit être un utilisateur WorkflowGen ou un administrateur pour accéder à l’application.
Vous n’êtes pas autorisé à accéder à ce fichier
Si le téléchargement est sécurisé, seul l’administrateur, un gestionnaire de processus ou un participant avec des droits de lecture suffisants peut accéder aux fichiers de la demande.
Erreur
Cause
Votre licence est expirée
Votre période d’essai est expirée. Vous devez saisir un numéro de série valide pour activer votre version.
Une licence valide ne peut pas être trouvée
Le fichier licence ne correspond pas avec votre numéro de série.
IN
Nom d'utilisateur de l'utilisateur qui sera associé à la réalisation de l'action
IN
Envoyer la valeur de MY_AMOUNT (une donnée de processus numérique contenant la valeur du montant, p.ex. : 1234.56)
Paramètre
Type
Direction
Description
REQUEST_ID
Numérique
IN
ID de demande de l'action à compléter
Paramètre
Type
Direction
Description
ACTION_NAME
Texte
IN
Nom de l'action à compléter (la première instance trouvée sera complétée)
ACTION_ID
Numérique
IN
ID de l'instance de l'action à compléter
IMPERSONATE_USERNAME
Paramètre
Type
Direction
Description
REQUEST_ID
Numérique
IN
Envoyer la valeur deMY_REQUEST_ID (une donnée de processus de type numérique contenant l'ID de demande de l'action à compléter, p.ex. : 1320)
ACTION_NAME
Texte
IN
Envoyer la valeur du nom de l'action à compléter (p.ex. : MYSYNCACTION)
AMOUNT
Texte
Numérique

IN
Le numéro de téléphone de l’expéditeur, qui doit contenir le code du pays(l’utilisation de + devant le code du pays est facultatif, p.ex. +15551234567) *
MESSAGE_SID
Text
OUT
Le code alphanumérique retourné pour identifier les messages envoyés avec succès; pour plus d’informations, voir
ERROR_MESSAGE
Text
OUT
Le message à retourner en cas d’erreur; pour une liste de codes et de messages d’erreur Twilio, voir
ERROR_CODE
Text
OUT
Le code à retourner en cas d’erreur; pour une liste de codes et de messages d’erreur Twilio, voir
Paramètre
Type
Direction
Description
BODY
Text
IN
Le texte du message
TO
Text
IN
Le numéro de téléphone du destinataire, qui doit contenir le code du pays (l’utilisation de + devant le code du pays est facultatif, p.ex. +15551234567)
Paramètre
Type
Direction
Description
ACCOUNT_SID
Text
IN
L’identificateur de sécurité du compte *
AUTH_TOKEN
Text
IN
Le jeton d’authentification (« auth token ») *
FROM
Text
Paramètre
Type
Direction
Description
DATA_DATETIME1
Date/Time
INOUT
Données de type DATETIME à copier
DATA_FILE1
File
INOUT
Données de type FILE à copier
DATA_NUMERIC1
Paramètre
Type
Direction
Description
DATA_FILE1
File
INOUT
Envoyer la valeur de FORM_DATA Récupérer la valeur dans FORM_ACTION_ACTION1
MON_NOM_PARAMETRE
Text
INOUT
Envoyer la valeur de TEXT_DATA Récupérer la valeur dans OTHER_TEXT_DATA
* Un filtre peut être appliqué à une partie d’un champ.
* Champs utilisés dans le cadre de synchronisation avec Active Directory. Ce champ n'est pas utilisé par l'application. Toutefois, il est possible de l'utiliser dans les macros du workflow.
Un utilisateur sera archivé et non supprimé si :
L’utilisateur est associé à un participant en tant qu’utilisateur.
L’utilisateur est le créateur ou le modificateur d’un processus.
L’utilisateur est associé à une demande ou à une action.
Un utilisateur ne pourra pas passer à l’état inactif ou être supprimé ou archivé si :
L’utilisateur est le seul coordinateur d’un participant de type liste de personne avec un coordinateur.
L’utilisateur est la seule personne d’un groupe affecté à un participant de type liste de personnes.
L’utilisateur est la seule personne d’un participant de type liste de personnes.
Vous pouvez remplacer un utilisateur par un autre. L’utilisateur de remplacement doit appartenir au même annuaire et au même groupe. Toutes les responsabilités seront transfère à l’utilisateur de remplacement.
Toutes les demandes courantes seront transférées à l’utilisateur de remplacement, par contre les demandes clôturées garderont les informations de l’utilisateur archivé.
Cette fonction est utile quand une personne quitte leur position dans l’organisation et ses tâches et rôles doivent être réassignés.
Le rapport d’activité peut être généré avec un seul clic sur le lien Rapport d’activité sur la page de profil d’utilisateurs pour l’individu en question.
Le rapport généré résume toutes les activités pour l’utilisateur sélectionné. Par exemple :
Type de demande
En cours
Clôturées
Total
Type d’action
En cours
Clôturées
Total
Process
Participant
Global
Utilisateur délégué
Process
Participant
Global
Utilisateur
Processus
Participant
Global
Rôle
Dossier
Participant
Annuaire
Groupes
Participant
Annuaire
Groupe(s)
Utilisateur(s)
* Un filtre peut être appliqué à une partie d’un champ.
Accessible uniquement aux participants de type Liste de personnes et Liste de personnes avec coordinateur(s).
Accessible uniquement aux participants de type Liste de personnes avec coordinateur(s).
* Visible uniquement si associé à un utilisateur ou un coordinateur et si le nombre d’utilisateurs dans la base de données est supérieur à la limite définie par l’administrateur du logiciel.
Un participant de type Personne est associé à un utilisateur unique.
Un participant de type Liste de personnes est associé à un ou plusieurs utilisateurs et/ou groupes et/ou annuaires.
Un participant de type Liste de personnes avec coordinateur(s) est associé à un ou plusieurs coordinateurs et un ou plusieurs utilisateurs et/ou groupes et/ou annuaires.
En ajoutant des utilisateurs, groupes et annuaires aux participants, notez que la liste est cumulative. C’est-à-dire qu’en ajoutant 3 utilisateurs, 2 groupes et 4 annuaires, le résultat sera une liste inclusive de ces utilisateurs, groupes et annuaires.
Un groupe ou un annuaire n’a pas besoin d’être spécifique pour ajouter des utilisateurs qui appartiennent à ces groupes ou ces annuaires. L’ajout de ces groupes ou annuaires se traduira par l’ajout de tous les utilisateurs qui font partie de ces groupes et annuaires.
Les conditions suivantes s'appliquent lors de la modification du type de participant :
Personne à Liste de personnes ou Liste de personnes avec coordinateur(s) : Le participant ne doit pas être utilisé dans une action de processus.
Liste de personnes à Personne : Un seul utilisateur doit être associé au participant et le participant ne doit pas être utilisé dans une action de processus.
Liste de personnes à Liste de personnes avec coordinateur(s) : Ajoutez au moins un coordinateur.
Un participant ne peut pas être supprimé si la personne fait partie d’un processus ou est un gestionnaire de dossier.

Numeric
INOUT
Données de type NUMERIC à copier
DATA_TEXT1
Text
INOUT
Données de type TEXT à copier
Filtre par numéro d’employé d’utilisateur
Téléphone
Filtre par numéro de téléphone d’utilisateur
Mobile
Filtre par numéro de téléphone mobile d’utilisateur
Fax
Filtre par numéro de fax d’utilisateur
Pager
Filtre par numéro de pager d’utilisateur
Bureau
Filtre par bureau d’utilisateur
Titre du poste
Filtre par le titre de travail de l’utilisateur
Type d’employé
Filtre par type d’employé d’utilisateur
Initiales
Filtre par initiales d’utilisateur
Titre
Filtre par titre d’utilisateur
Adresse postale
Filtre par l’adresse postale de l’utilisateur
Code postal
Filtre par code postal
Ville
Filtre par ville
Département / Région
Filtre par département ou région
Pays
Filtre par pays
Chemin LDAP
Filtre par chemin LDAP
Attribut étendu 1
Filtre par attribut étendu n°1 d’utilisateur
Attribut étendu 2
Filtre par attribut étendu n°2 d’utilisateur
Attribut étendu 3
Filtre par attribut étendu n°3 d’utilisateur
Attribut étendu 4
Filtre par attribut étendu n°4 d’utilisateur
Attribut étendu 5
Filtre par attribut étendu n°5 d’utilisateur
Nom distinctif
Filtre par nom distinctif
Nom affiché
Filtre par nom affiché
Identifiant système
Filtre par identifiant système d’utilisateur (SID)
Annuaire de l’utilisateur
✏️ Note : Cette colonne est affichée quand Tous est sélectionné dans la liste déroulante Annuaire.
Profil de l’utilisateur définissant ses droits d’accès à l’application : Administrateur ou Utilisateur
Groupe(s)
Nom du groupe annuaire auquel l’utilisateur est associé (un lien affiche le groupe correspondant)
État *
Statut du compte de l’utilisateur :
Actif
Inactif
Synchronisé
Sélectionné si l’utilisateur est synchronisé
Langue par défaut
Langue appliquée à la création du compte de l’utilisateur
Language sélectionnée
Langue sélectionnée par l’utilisateur
Fuseau horaire par défaut
Fuseau horaire appliqué lorsque le compte de l’utilisateur a été activé
Fuseau horaire sélectionné
Fuseau horaire sélectionné par l’utilisateur
Responsable
Utilisateur sélectionné en tant que responsable
Collaborateurs
Liste des utilisateurs qui cet utilisateur en tant que responsable; permet l’accès à la liste de ces utilisateurs sur un clic simple.
Téléphone *
Numéro de téléphone de l’utilisateur
Portable *
Numéro de téléphone mobile de l’utilisateur
Fax *
Numéro de fax de l’utilisateur
Pager *
Numéro de pager de l’utilisateur
Bureau *
Numéro de bureau de l’utilisateur
Département *
Numéro du département de l’utilisateur
Entreprise *
Nom de la société de l’utilisateur
Fonction *
Fonction de l’utilisateur
Type d’employé
Type d’employé de l’utilisateur
Initiales *
Initiales de l’utilisateur
Titre *
Titre de l’utilisateur
Matricule *
Matricule de l’utilisateur
Adresse postale *
Adresse postale de l’utilisateur
Code postal *
Code postal de l’utilisateur
Ville *
Ville de l’utilisateur
Département / Région *
Département / région de l’utilisateur
Pays *
Pays de l’utilisateur
Chemin LDAP *
Chemin LDAP de l’utilisateur
Nom affiché *
Nom affiché de l’utilisateur
Nom distinctif *
Nom distinctif de l’utilisateur
Champ personnalisé 1 à 5
Champ personnalisé de l’utilisateur
Identifiant système
SID de l’utilisateur
Début
Fin
Début
Fin
Annuaire
Groupes
Utilisateur(s)
Coordonnateur(s)
Utilisateur(s)
Liens
Remarques
Nouveau
Affiche l’écran d’édition des utilisateurs en mode ajout
Rafraîchir
Rafraîchit la liste des utilisateurs
Filtres externes
Remarques
Annuaire
Affiche les utilisateurs de l’annuaire sélectionné
Profil
Affiche les utilisateurs avec le profil sélectionné
Statut
Affiche les utilisateurs avec le(s) statut(s) spécifié(s) :
Tous
Actif ou inactif
Actif
Inactif
Archivé
Filtrer sur
Filtrer sur le champ choisi (nom, nom d’utilisateur, email, etc...)
Recherche
Rechercher des utilisateurs par nom, nom d’utilisateur, email, etc...
Filtrer sur *
Remarques
Nom
Filtre par nom
Nom d’utilisateur
Filtre par nom d’utilisateur
Filtre par adresse email d’utilisateur
Département
Filtre par département d’utilisateur
Société
Filtre par nom de société d’utilisateur
Colonnes
Remarques
Cases à cocher à choix multiples
Actions:
Activer les utilisateurs sélectionnés
Désactiver les utilisateurs sélectionnés
Supprimer les utilisateurs sélectionnés
Prénom Nom
Prénom et nom d’utilisateur (un lien affiche l’écran d’édition de l’utilisateur en mode ajout)
Nom d’utilisateur
Nom d’utilisateur
Profil
Profil de l’utilisateur
État
Statut du compte de l’utilisateur : Actif ou Inactif
Champs
Remarques
Annuaire
Annuaire de l’utilisateur
Nom d’utilisateur
Identifiant unique de l’utilisateur dans tous les annuaires; limité à 255 caractères (champ obligatoire)
✏️ Note : Le nom d'utilisateur ne peut pas contenir le caractère : (deux points).
Nom
Nom de l’utilisateur (champ obligatoire)
Prénom
Prénom de l’utilisateur
Adresse email de l’utilisateur
Numéro d’employé
Annuaire
Profil
Liste des annuaires associés au participant (un lien permet l’affichage d’un écran d’ajout ou suppression des groupes associés)
Coordinateur(s) [2]
Liste des coordinateurs associés au participant (un lien permet l’affichage d’un écran d’ajout ou suppression des annuaires associés)
Liste de personnes avec coordinateur(s) à Liste de personnes : Le participant ne doit pas être utilisé dans une action de processus où l'affectation est effectuée par le coordinateur.
Liens
Remarques
Nouveau
Affiche l’écran des participants en mode ajout
Rafraîchir
Rafraîchit la liste des participants
Filtrer sur *
Remarques
Nom
Filtre par nom de participant
Description
Filtre par description de participant
Colonnes
Remarques
Nom
Nom du participant (un lien permet d’afficher la ficher d’édition du participant)
Description
Description du participant
Utilisation
Nombre de processus auquel appartient le participant ajouté au nombre de dossier dont le participant est gestionnaire
Utilisateurs
Nombre d’utilisateurs potentiels du participant
Champs
Remarques
Nom
Identifiant unique pour le participant; doit être conforme à la nomenclature et limité à 30 caractères (champ obligatoire)
Description
Description du participant limitée à 255 caractères (champ obligatoire)
Type de participant
Type de participant définissant les associations possibles à l’annuaire (champ obligatoire) :
Personne
Liste de personnes
Liste de personnes avec coordinateur(s)
Utilisateur(s)
Liste des utilisateurs associés au participant (un lien permet l’affichage d’un écran d’ajout ou suppression des utilisateurs associés)
Groupe(s) [1]
Liste des groupes associés au participant (un lien permet l’affichage d’un écran d’ajout ou suppression des groupes associés)
Champs
Remarques
Nom *
Filtre par nom de personne
Disponible
Liste des associations possibles avec l’annuaire
Sélectionné
Liste des associations existantes avec l’annuaire
Annuaire(s) [1]
Colonnes
Remarques
Paramètre
Nom du paramètre obligatoire Ce nom est le nom du paramètre de l’application ou celui du sous-processus assujetti à l’action. L’écran d’édition du paramètre est affiché en cliquant sur son nom.
Direction
Direction du paramètre
Valeur
Donnée du processus associée au paramètre L’écran d’édition du paramètre est affiché en cliquant sur la valeur.
Colonnes
Remarques
Paramètre
Nom du paramètre (un lien affiche l’écran d’édition du paramètre) Le lien Ajouter permet d’afficher l’écran du paramètre en mode ajout.
Direction
Direction du paramètre
Valeur
Donnée associée au paramètre
Suppressions
Le x permet la suppression du paramètre
S’il existe des paramètres qui ne sont plus requis par le sous-processus sélectionné, ils deviennent invalides et seront affichés dans cette liste. Ils peuvent être supprimés manuellement.
Champs
Remarques
Paramètre
Identifiant unique pour la paramètre; doit être conforme à la nomenclature et limité à 30 caractères (champ obligatoire) Les paramètres d’application comme FORM_FIELDS_READONLY sont disponibles à travers le bouton parcourir Autres paramètres. Ce paramètre est souvent associé au nom/ID du champ.
✏️ Note : Les noms des paramètres devraient respecter les conventions d'appellation XML suivantes :
Commencer par une lettre ou par un tiret bas
Contenir uniquement des lettres, des chiffres, des traits d'union, des tirets bas et des points
Parcourir
Ce bouton est uniquement visible pour les actions qui possèdent au moins un paramètre d'application par défaut défini
Direction
Direction du paramètre :
IN : Lors de l’instanciation de l’action, la valeur du paramètre est initialisée avec un texte, la valeur d’une macro ou une donnée du processus.
OUT : Lors de la clôture de l’action, la valeur du paramètre est stockée dans la valeur d’une donnée du processus.
INOUT : Lors de l’instanciation de l’action, la valeur du paramètre est initialisée avec un texte, la valeur d’une macro ou une donnée du processus. Par la suite, lors de la clôture de l’action, la valeur du paramètre est stockée dans la valeur d’une donnée du processus.
Envoyer la valeur depuis
La valeur IN à envoyer au paramètre En fonction du type de donnée à associer, cette valeur peut être une donnée du processus, une macro ou une valeur texte. Il est possible de désélectionner un bouton radio sélectionné.
Récupérer la valeur dans
Donnée du processus où la valeur OUT est stocké
WorkflowGen supporte les expressions VBScript et JavaScript dans les paramètres d'actions, qui peuvent être créées soit directement comme des valeurs des paramètres des actions, ou dans des données de type TEXT qui sont mappées comme valeurs d'entrée (IN) aux paramètres des actions.
Dans la section Envoyer la valeur depuis dans le panneau Édition d'un paramètre, sélectionnez un texte et saisissez l'expression dans la zone de texte.
À côté de Script, cochez Activer et ensuite sélectionnez JavaScript ou VBScript.
Dans le panneau Édition d'une donnée, saisissez l'expression dans la zone de texte Valeur par défaut.
Astuce : Cliquez sur l'icône crayon pour ouvrir un éditeur de texte plus grand qui inclut la mise en surbrillance (« highlighting ») de syntaxe JavaScript et VBScript.
Réglez la langue soit dans l'onglet Correspondance de l'éditeur de formulaire ou dans le panneau Édition d'un paramètre :
Dans le panneau Édition d'un paramètre, cochez Activer à côté de Script et sélectionnez JavaScript ou VBScript.
ou
Dans l'onglet Correspondance de l'éditeur de formulaire, sélectionnez le bouton Valeur d'entrée, sélectionnez l'expression depuis la liste déroulante Donnée, cochez Activer à côté de Script et sélectionnez JavaScript ou VBScript.
Toutes les macros de WorkflowGen (à l'exception des macros de notification) sont entièrement supportées dans les deux langues et sont entourées de < >; par exemple, <WF_PROCESS_INST_ID> pour le numéro de la demande.
Dans les deux langues, le résultat attendu doit être un nombre, une chaîne ou une date.
L'exemple ci-dessous retournerait le numéro de la demande plus 5 en JavaScript ainsi qu'en VBScript :
Nom du processus avec version du processus
Nom du processus avec test
Paramètre
Type
Direction
Description
PROCESS_ID
Numérique
IN
ID de processus de la demande à lancer (à utiliser indépendamment, sans les autres paramètres)
PROCESS_NAME
Texte
IN
Nom du processus de la demande à lancer
PROCESS_VERSION
Paramètre
Type
Direction
Description
REQUEST_ID
Numérique
OUT
Renvoie l'ID de la nouvelle demande
IMPERSONATE_USERNAME
Texte
IN
Nom d'utilisateur de l'emprunt d'identité
Vous pouvez définir au besoin des paramètres additionnels du processus à lancer, par exemple COMPANY (paramètre IN, valeur texte) pour le nom de la société (p.ex. : ACME_COMPANY).
Paramètre
Type
Direction
Description
PROCESS_ID
Numérique
IN
Envoyer la valeur de MY_PROCESS_ID (une donnée numérique de processus contenant l'ID du processus à lancer, p.ex. : 1320)
Paramètre
Type
Direction
Description
PROCESS_NAME
Texte
IN
Envoyer la valeur de MY_PROCESS_NAME (une donnée de processus de type texte contenant le nom du processus à lancer, p.ex. : LEAVE_APPLICATION)
PROCESS_VERSION
Numérique
IN
Envoyer la valeur deMY_PROCESS_VERSION (une donnée de processus numérique contenant le numéro de version du processus à lancer, p.ex.: 2)
Paramètre
Type
Direction
Description
PROCESS_NAME
Texte
IN
Envoyer la valeur de MY_PROCESS_NAME (une donnée de processus de type texte contenant le nom du processus à lancer, p.ex. : LEAVE_APPLICATION)
TEST
Texte
IN
Envoyer la valeur deMY_TEST (p.ex.: Y)






Le module de gestion des listes globales permet à des utilisateurs autorisés de créer et de gérer facilement des listes de données depuis le module d'administration de WorkflowGen en vue de leur utilisation au sein des formulaires de différents processus.
La gestion des listes globales propose une solution pour gérer et centraliser les données qui alimenteront des listes déroulantes de vos formulaires utilisés dans le cadre de vos workflows.
Il n’y a pas de limite concernant le nombre d’éléments que peut contenir une liste globale, qui peut avoir jusqu’à 20 colonnes. La performance de l’interface utilisateur dépend du nombre de cellules (éléments × colonnes) et est optimisé pour proposer de bonnes performances jusqu’à 5000 cellules (ex. : 1000 éléments avec 5 colonnes ou 250 éléments avec 20 colonnes).
Les types de données supportées dans les colonnes sont : texte, numérique ou date.
Une liste globale statique est alimentée manuellement par les utilisateurs habilités dans l’interface prévue à cet effet du module d’administration.
Une liste globale dynamique contient des données provenant d’une base de données. Le contenu de la liste est mis à jour à chaque fois que le formulaire est exécuté.
Vous pouvez importer des données dans une liste globale depuis un fichier ou en copier de votre presse-papiers. Les formats supportés sont les listes globales WorkflowGen XML ou CSV.
Le format CSV doit être comme suit :
Par défaut, les colonnes sont considérées de type texte, donc si toutes les colonnes sont de type texte, il n’est pas nécessaire de spécifier le type de données.
Dans ce cas, la seconde ligne est utilisée pour définir le type de données de la colonne.
Pour protéger des données comme des guillemets, virgules, etc… vous pouvez fermer une chaîne avec des guillemets.
Vous pouvez exporter les données d’une liste globale dans un fichier. Les formats supportés sont les listes globales WorkflowGen XML ou CSV.
Toutes les chaînes de connexion dans \wwwroot\wfgen\web.config sont disponibles pour une utilisation dans les listes globales et dans l’éditeur de formulaire sauf la chaîne de connexion de la base de données maître. Bien que l’application tente de vérifier que les requêtes SQL utilisées dans ce contexte soient sécurisées et contiennent uniquement des instructions SELECT, vous devrez également vous assurer que les chaînes de connexion exposées soient sécurisées au niveau de la base de données. Cela signifie que si vous ne voulez pas qu’un superviseur de processus ou un superviseur de listes globales puisse mettre à jour ou modifier une base de données spécifique, la chaîne de connexion devrait avoir un accès en lecture seule à la base de données.
Gardez à l’esprit que les créateurs de processus peuvent utiliser toute chaîne de connexion à laquelle ils peuvent accéder depuis l’éditeur code-behind de l’éditeur de formulaires. Si vous voulez limiter l’accès d’un superviseur de listes globales à une chaîne de connexion tout en permettant le créateur de processus d’y accéder, vous devez ajouter la chaîne de connexion au web.config de l’application WebForms (\wwwroot\wfgen\WfApps\WebForms\web.config).
Les chaînes de connexion dans le web.config de WebForms ne sont pas exposées dans l’interface utilisateur de WorkflowGen, donc pour que les créateurs de processus puissent les utiliser, ils doivent connaître le nom de la chaîne. Ceci est également un manière pratique de donner accès aux créateurs de processus distincts à différentes chaînes de connexions.
L’application de workflow EFORMASPX vous permet d’afficher et de remplir les différents champs de votre formulaire électronique à travers un formulaire Web. Un formulaire Web est un équivalent ASP.NET à un formulaire Windows. Il possède des caractéristiques similaires à un formulaire Windows.
FORM_DATAUn fichier XML FormData.xml contenant :
FORM_URL/wfgen/WfApps/WebForms/MyFirstWebForm/v1/Form.aspx
Vous pouvez définir des valeurs par défaut pour les différents champs du formulaire Web qui seront appliqués à l’exécution du processus. Vous devez ajouter autant de paramètres IN ou INOUT que nécessaires associés à une donnée du processus spécifiques, une valeur de texte libre ou une macro.
Règle : Afficher le nom du demandeur dans le champ REQ_NAME
Méthode : Associer le nom du champ du formulaire à la macro Demandeur.Nom
Vous pouvez récupérer les valeurs des champs du formulaire Web dans une donnée du processus en utilisant des paramètres OUT ou INOUT.
Par exemple, vous devez définir un paramètre OUT pour récupérer la décision du validateur du formulaire. Ce paramètre associe un nom de champ du formulaire à une donnée du processus qui a déjà été définie.
Règle : Capturer la réponse du gestionnaire dans une donnée de processus MGR_DECISION
Méthode : Associer le nom du champ du formulaire avec des données de processus pré-définies
Vous pouvez contrôler les propriétés obligatoires, lecture seule et caché des champs HTML depuis les paramètres des actions EFORMASPX. Les données des paramètres doivent être définies dans une liste de champs afin d’inclure ou exclure séparées par une virgule (,) ou un point-virgule (;). Cette liste comprend les caractères génériques (*) ou d’exclusion (^). Il est aisé de définir les propriétés des champs en fonction de l’action actuelle si on applique une convention de nommage stricte.
Règle : Les champs EMP_NAME et EMP_DATE sont obligatoires
Méthode : FORM_FIELDS_REQUIRED = EMP_NAME, EMP_DATE
FORM_ARCHIVE C’est une manière de récupérer une copie statique du formulaire afin de la visualiser, imprimer ou envoyer par email sans avoir besoin d’exécuter le code du formulaire Web.
Copie statique HTML du formulaire ASP.NET (OUT) : FORM_ARCHIVE
La valeur du nom du fichier doit être définie dans le fichier XML initial de cette manière :
<FORM_ARCHIVE>form_archive.htm</FORM_ARCHIVE>
Le dataset doit également posséder un champ nommé FORM_ARCHIVE.
WorkflowGen manipule cette copie statique et ainsi aucun travail supplémentaire ne doit être effectué par les développeurs du processus ou du formulaire.
Quand le formulaire Web est soumis par l’utilisateur, l’application EFORMASPX crée une copie statique du formulaire dans le répertoire WorkflowGen. WorkflowGen associe ensuite cette copie statique au paramètre FORM_ARCHIVE.
Le concepteur de processus doit :
Créer une donnée de processus pour stocker la copie statique du formulaire générée par WorkflowGen.
Associer cette donnée au paramètre OUT nommé FORM_ARCHIVE.
L’application de workflow MERGEFORM fusionne de multiples fichiers de données dans un fichier. Elle peut également fusionner les archives de formulaire dans une archive de formulaire cible en fusionnant les sections HTML depuis les deux fichiers.
L’application de workflow SENDHTTPPOST permet d’envoyer des requêtes HTTP « webhook » à des systèmes externes. Les webhooks permettent à une API d’échanger des informations avec d’autres applications via des requêtes HTTP POST et peuvent être utilisés pour créer des intégrations avec des applications extensibles telles que Slack, GitHub et Dropbox. Par exemple, les webhooks peuvent être utilisés pour des notifications quand un événement prévu (configuré par l’utilisateur) soit survenu. En permettant une communication en temps réel, les webhooks sont efficaces et performants.
SENDHTTPPOST envoie des webhooks sortants à des applications externes en utilisant des charges utiles (« payloads ») JSON ou URLENCODED. Ensuite, SENDHTTPPOST reçoit et traite la réponse de l’API externe. Pour plus d’informations, voir l’article Using webhooks with WorkflowGen.
Pour un exemple d’utilisation de SENDHTTPPOST pour envoyer des messages depuis WorkflowGen à des canaux Slack, voir l’article . Des exemples d’API qui utilisent SENDHTTPPOST sont également disponibles dans le répertoire GitHub .
Le type de charge utile (« payload ») par défaut (APP_CONTENT_TYPE) est JSON; URLENCODED est également supporté.
Étant donné que les paramètres de l’application sont sensibles à la casse, ils doivent respecter la notation acceptée de l’API.
L’application SENDHTTPPOST requiert le paramètre APP_URL, qui correspond à l’URL de l’API externe.
Les paramètres définis ci-dessus généreront deux en-têtes dans la charge de la requête :
Lorsque vous définissez le paramètre APP_REQUEST_CONTENT_IS_ARRAY sur Y, il convertira le JSON en un tableau :
Les processus sont organisés en dossiers administrés par des gestionnaires. Un niveau unique de dossier est possible dans WorkflowGen.
La notion de gestionnaire de dossier intervient lorsqu’un dossier est associé à un participant de type liste de personnes. Un gestionnaire correspond à une ou plusieurs personnes; la liste de personnes avec coordinateur n’est pas significatif ici. Les gestionnaires ont un accès complet à la définition de leurs processus.
Les gestionnaires de dossier ont un accès complet aux processus de leur dossier mais pas aux processus des autres dossiers ou aux autres fonctions d’administration.
Les utilisateurs avec un profil d’administrateur WorkflowGen ont un accès complet à tous les dossiers et leurs processus associés, mais n’ont pas accès aux fonctionnalités administratives.
(function(){
var today = <WF_SYSTEM_DATE>;
var tomorrow = new Date();
tomorrow.setDate(today.getDate()+1);
return tomorrow;
})();function test(){
var today = <WF_SYSTEM_DATE>;
var tomorrow = new Date();
tomorrow.setDate(today.getDate()+1);
return tomorrow;
}
test();<WF_PROCESS_INST_ID> + 5Ne pas commencer par les lettres XML dans n'importe quelle casse (p.ex. xml ou Xml)
Pour plus d'informations, voir https://www.w3schools.com/xml/xml_elements.asp.
Bouton enregistrer
Enregistre les modifications
Bouton enregistrer et fermer
Enregistre les modifications puis ferme la fenêtre
Bouton ajouter
Enregistre les modifications de ce paramètre puis propose la fenêtre d’ajout d’un paramètre supplémentaire (c’est-à-dire la même fenêtre vide)
Bouton supprimer
Permet la suppression du paramètre actuel
Bouton fermer
Ferme la fenêtre sans sauvegarde
Numérique
IN
Version du processus à lancer
TEST
Texte
IN
Mode test
Y: Lancer une version de test
N: Lancer la version active




IN
Les champs à fusionner depuis FORM_DATA_SOURCE1 dans FORM_DATA0, séparés par des virgules. Ce paramètre supporte l’astérisque (*) comme caractère générique pour sélectionner tous les champs commençant avec le préfixe.
✏️ Note : Si vous ne spécifiez pas de paramètre FORM_FIELDS_MERGE[N], tous les champs dans FORM_DATA_SOURCE[N] seront fusionnés.
INOUT
Le cible de fusion FORM_ARCHIVE. Tous les paramètres FORM_ARCHIVE_SOURCE seront fusionnés dans la valeur par défaut (IN) de ce paramètre et mettront à jour les données spécifiées (OUT) avec les résultats.
FORM_ARCHIVE_SOURCE[1..N]
File
IN
L’archive de formulaire spécifique à fusionner dans l’archive de formulaire ciblé.
FORM_FIELDS_ARCHIVE[1..N]
Text
IN
Les IDs de sections à fusionner depuis FORM_ARCHIVE_SOURCE[1..N] dans FORM_ARCHIVE, séparés par des virgules.
✏️ Note : Ce paramètre ne supporte pas l’astérisque comme caractère générique. Vous devez spécifier les IDs exacts de chaque section à fusionner à la place.
IN
Envoyer la valeur de ACCOUNT_*
FORM_DATA_SOURCE2
File
IN
Envoyer la valeur de FORM_DATA_VALIDATES_SALES
FORM_FIELDS_MERGE2
Text
IN
Envoyer la valeur de SALES_DECISION,SALES_COMMENT
FORM_ARCHIVE
File
INOUT
Envoyer la valeur de FORM_ARCHIVE Récupérer la valeur dans FORM_ARCHIVE
FORM_ARCHIVE_SOURCE1
File
IN
Envoyer la valeur de FORM_DATA_VALIDATES_ACCOUNTING
FORM_FIELDS_ARCHIVE1
Text
IN
Envoyer la valeur de ACCOUNT
FORM_ARCHIVE_SOURCE2
File
IN
Envoyer la valeur de FORM_ARCHIVE_VALIDATES_SALES
FORM_FIELDS_ARCHIVE2
File
IN
Envoyer la valeur de SALES
Paramètre
Type
Direction
Description
FORM_DATA
File
INOUT
Tous les paramètres FORM_DATA_SOURCE seront fusionnés dans la valeur par défaut IN de ce paramètre, et mettront à jour les données spécifiées avec les résultats.
FORM_DATA_SOURCE1
File
IN
Les données de formulaire spécifiques à fusionner dans les données du formulaire ciblé.
FORM_FIELDS_MERGE1
Paramètre
Type
Direction
Description
FORM_DATA_SOURCE[2..N]
File
IN
Les données de formulaire spécifiques à fusionner dans les données du formulaire ciblées.
FORM_FIELDS_MERGE[2..N]
Text
IN
Les champs à fusionner depuis FORM_DATA_SOURCE[2..N] dans FORM_DATA. Ce paramètre supporte l’astérisque (*) comme caractère générique.
FORM_ARCHIVE
Paramètre
Type
Direction
Envoyer/Récupérer valeur
FORM_DATA
File
INOUT
Envoyer la valeur de FORM_DATA Récupérer la valeur dans FORM_DATA
FORM_DATA_SOURCE1
File
IN
Envoyer la valeur de FORM_DATA_VALIDATES_ACCOUNTING
FORM_FIELDS_MERGE1
Text
File
Text



IN
Liste des champs cachés
EMP_Méthode : FORM_FIELDS_READONLY = *, ^EMP_*
Règle : Tous les champs sont définis comme visibles sauf le champ DATE et les champs dont le nom commence par SUP_ et finit par _APP
Méthode : FORM_FIELDS_HIDDEN = ^*, DATE, SUP_*_APP
Paramètre
Type
Direction
Description
FORM_DATA
FILE
INOUT
Contient les données du formulaire en format XML, qui provient du dataset .NET (voir l’exemple ci-dessous). WorkflowGen créera ce fichier à chaque soumission de formulaire. Vous n’avez pas besoin d’associer une valeur par défaut. WorkflowGen créera et mettra à jour ce fichier automatiquement.
FORM_URL
TEXT
IN
Utilisé pour afficher le formulaire ASP.NET rempli avec les données saisies par les différents acteurs lors de l’exécution du processus, ou avec des valeurs par défaut définies lors de la création du processus
Il doit contenir le chemin / l'emplacement du formulaire vierge qui peut être stocké dans les données de processus ou associé directement à ce paramètre, et peut être un chemin absolu ou relatif.
Paramètre
Type
Direction
Description
FORM_FIELDS_READONLY
TEXT
IN
Liste des champs en lecture seule
FORM_FIELDS_REQUIRED
TEXT
IN
Liste des champs obligatoires
FORM_FIELDS_HIDDEN
TEXT
Le paramètre TOKEN (jeton) est disponible pour usage dans l’authentification API. Quand une API récupère la valeur du jeton dans le paramètre APP_URL, les deux valeurs devraient être concaténées dans le paramètre APP_URL, laissant ainsi vide le paramètre TOKEN.
La réponse peut contenir une charge utile facultative correspondante à des paramètres OUT définis par les utilisateurs.
En cas d’erreur quand le paramètre OUT APP_RESPONSE_STATUS n’est pas défini, une exception sera lancée.
Le formulaire doit contenir des champs textbox pour tous les paramètres utilisés, avec les données des champs correspondants aux paramètres SENDHTTPPOST.
Outre les paramètres facultatifs listés ci-dessous, vous pouvez également ajouter des paramètres IN et OUT personnalisés (spécifiques à l'API externe) pour envoyer et recevoir des données personnalisées définies par l'utilisateur vers et depuis l'API externe. Par exemple, dans une intégration Slack, vous pouvez ajouter un paramètre pour inclure un emoji dans un message Slack et le mapper au paramètre icon_emoji de Slack (il s'agit de la notation acceptée par l'API Slack pour ce paramètre particulier).
Le délai d’expiration (APP_TIMEOUT) par défaut est de 3000 millisecondes; le délai d’expiration maximum est de 60 000 millisecondes.
Les en-têtes de requête HTTP peuvent être définis avec les paramètres APP_HEADER_xxx, dans lesquels xxx est le nom du champ d'en-tête.
La longueur de réponse maximale par défaut est de 4194304 caractères (4 Mo); cette valeur par défaut peut être modifiée en définissant la valeur du paramètre SendHttpPostMaxResponseLength dans le fichier web.config.
Des logs d’application sont disponibles; ceux-ci peuvent être configurés en réglant la valeur du paramètre SendHttpPostLogLevel dans le fichier web.config à 0 pour désactiver la journalisation, à 1 pour des logs simples ou à 2 pour des logs de débogage.
IN
Type du contenu de la requête (JSON et URLENCODED sont supportés; le type par défaut est JSON)
APP_RESPONSE_CONTENT
Text
OUT
Charge utile ou message d’erreur facultatif retournée
APP_RESPONSE_STATUS
Text/Numeric
OUT
Code retourné du statut de la requête HTTP
APP_HEADER_xxx
Text
IN
Paramètres d'en-tête d'API externe dans lesquels xxx est le nom du champ d'en-tête
APP_REQUEST_CONTENT_IS_ARRAY
Text
IN
Lorsque ce paramètre est défini sur Y, l'application convertit la charge utile de la demande JSON en un tableau. La valeur par défaut est N.
Seulement pris en charge lors de la construction d'une charge de requête JSON avec des paramètres IN.
Paramètre
Type
Direction
Description
APP_URL
Text
IN
URL de l’API externe
Paramètre
Type
Direction
Description
TOKEN
Text
IN
Jeton d’autorisation de l’API
APP_TIMEOUT
Numeric
IN
L’intervalle maximum entre l’expédition de la requête et la réception de la réponse (par défaut : 3000 millisecondes; maximum : 60 000 millisecondes)
APP_CONTENT_TYPE
Paramètre
Type
Direction
Valeur
APP_HEADER_Authorization
Text
IN
Bearer AbCdEf123456
APP_HEADER_location
Text
IN
canadaeast
Text
<?xml version="1.0" encoding="UTF-8" ?>
<NewDataSet>
<Table1 />
</NewDataSet>Authorization: Bearer AbCdEf123456
location: canadaeast[{
"person": {
"address": {
"street": "160 Guy Street",
"zipcode": "J4G 1U4"
},
"age": 30,
"name": "John"
}
}Supprimer une liste globale
Liens
Remarques
Nouvelle liste
Affiche une nouvelle ligne vierge à la liste des listes globales
Rafraîchir
Rafraîchit les listes globales
Importer
Importe des données depuis un format CSV ou XML en remplacement du contenu d’une liste globale existante ou créé une nouvelle liste globale; ceci est utile pour rapidement alimenter une liste globale depuis un fichier ou un copier/coller
Exporter
Exporter des données dans un fichier CSV ou XML; ceci est utile pour exporter des données de multiples environnements (développement, production, etc...)
Dupliquer
Dupliquer une liste globale
Filtrer sur
Remarques
Nom
Filtre sur le nom de la liste globale
Gestionnaire
Filtre sur le nom du gestionnaires de la liste globale
Date de mise à jour
Filtre sur la date de mise à jour (période du/au)
Utilisateur de la mise à jour
Filtre sur le dernier utilisateur qui à mis à jour la liste (nom ou prénom)
Colonnes
Remarques
Nom
Nom de la liste
Gestionnaire
Aucun (aucune restriction) ou le participant autorisé à mettre à jour la liste; vous pouvez restreindre l’accès à la liste globale aux utilisateur(s) contenu(s) dans un participant global
Contenu
Nombre d’éléments et/ou lien vers le formulaire de la liste globale
Dernière màj
Date et heure de la dernière mise à jour
Par
Dernier utilisateur ayant mis à jour la liste globale
Onglets
Remarques
Eléments
Pour ajouter des éléments statiques dans la liste globale
Colonnes
Pour ajouter des colonnes (limite de 10 colonnes)
Types de données supportés :
Texte
Numérique
Date
Par défaut les colonnes sont Texte (données de type texte) et Valeur (données de type valeur)
Liaison
Chaîne de connexion à la base de données liée :
Nom de la chaîne de connexion définit dans le fichier web.config de WorkflowGen par l’administrateur
Chaîne de connexion à la base de données
Requête SQL (commande SELECT) pour récupérer les données
✏️ Note : Il est fortement recommandé d'utiliser un nom de connexion plutôt qu'une chaîne de connexion pour simplifier la gestion multi-environnement. Les noms de connexion sont gérés de manière centralisée dans le fichier web.config de WorkflowGen.
Supprimer
Un processus peut avoir plusieurs versions, mais seulement un peut être actif en même temps. Les demandes courantes effectuées en utilisant des versions archivées continueront avec les définitions de processus respectives de ces versions, jusqu’au moment où elles soient clôturées.
Un processus peut être déclaré en tant que sous-processus et ainsi être utilisé à travers une action d’un autre processus en tant que sous-processus indépendant ou lié.
La définition d’un processus utilise les paramètres définis dans les concepts du workflow :
Participants (demandeur, acteur)
Données pertinentes (formulaire, accord, montant, etc...)
Actions (trouver des informations, valider, gérer, attendre)
Transitions (actions suivantes, conditions)
Méthodes d’affectation (automatique, manuelle, etc...)
Notifications (d’affectation, de clôture, etc...)
La définition d’un processus implique un nombre de règles de gestion important. Afin de simplifier sa mise en œuvre, WorkflowGen regroupe la définition des processus en plusieurs sections :
Ces informations décrivent la publication du processus (statut, version) et les paramètres généraux (archivage, notification de clôture).
Les participants globaux sélectionnés ou spécifiquement créés pour les processus et prenant le rôle de demandeur ou intervenant.
Données pertinentes et nécessaires au déroulement du processus.
L’éditeur intégré permettant une création en mode WYSIWYG du formulaire utilisé par le workflow.
Une définition des actions et les transitions associées, les conditions et les exceptions.
Affiche ou quitte le mode d’affichage plein de la définition du processus.
Un aperçu général de tous les paramètres utilisés dans la définition d’un processus ainsi que l’identification des erreurs de conception. Des statistiques d’usage du processus concerné sont également présentées.
Vous permet de tester le processus si le statut est défini à En test. Pour effectuer un test, le gérant du dossier/process doit être un des initiateurs du processus.
Liens
Remarques
Nouveau dossier
Affiche l’écran d’édition des dossiers en mode ajout
Rafraîchir
Rafraîchit la liste des dossiers
Filtrer sur *
Remarques
Nom
Filtre par nom de dossier
Description
Filtre par description de dossier
* Un filtre peut s’appliquer à une partie d’un champ.
Colonnes
Remarques
Dossier
Nom de dossier (un lien permet d’afficher la liste des processus contenus dans le dossier)
Description
Description du dossier
Processus
Nombre de processus contenus dans le dossier
Éditer
Un lien permet d’afficher la fiche d’édition du dossier
Champs
Remarques
Nom du dossier
Identifiant unique pour le dossier; doit être conforme à la nomenclature et limité à 30 caractères (champ obligatoire)
Description
Description du dossier limitée à 255 caractères (champ obligatoire)
Gestionnaire
Nom du participant global gérant le dossier (champ obligatoire)
Un gestionnaire de processus doit être un participant global de type personne ou liste de personnes.
Un dossier ne peut pas être supprimé s’il contient des processus.
Liens
Remarques
Nouveau processus
Affiche l’écran d’édition des processus en mode ajout
Rafraîchir
Met à jour la liste des processus
Supprimer
Supprime un processus
Filtrer sur *
Remarques
Nom
Filtre par nom de processus
Description
Filtre par description de processus
* Un filtre peut s’appliquer à une partie d’un champ.
Filtres externes
Remarques
Statut
Filtre par statut des processus
Colonnes
Remarques
Nom
Nom et version du process (un lien affiche l’écran d’édition du processus)
Description
Description du processus
Statut
Statut du processus
Remarques
À affecter
Indique si un email est automatiquement envoyé à l’utilisateur qui doit effectuer l’affectation de l’action
À faire
Indique si un email est automatiquement envoyé à l’utilisateur qui doit réaliser l’action
En retard
Indique si un email est automatiquement envoyé à l’utilisateur qui doit réaliser une action en retard
Prise en charge annulée
Indique si un email est automatiquement envoyé lorsque l’affectation de l’action est annulée de manière automatique
Champs
Remarques
Événement
Types d’événement de notification :
À faire
Annulée
Prise en charge annulée
Destinataire
Destinataire de la notification :
Le demandeur
L’initiateur de l’action (si la méthode d’affectation est manuelle)
Les utilisateurs affectés à l’action
Modèle
Modèle de message de l’email :
Défaut (utilise le modèle d’email standard localisé dans \App_Data\Templates\Emails).
Utilise le contenu de la donnée (à sélectionner dans la liste ci-dessous). Cette liste est alimentée avec les données du processus de type texte et fichier.
Vous pouvez utiliser dans une donnée de type fichier les éléments suivants afin de définir votre propre modèle :
* La fonctionnalité de notification de pré-retard est disponible dans WorkflowGen 5.1.7 et supérieur. Un processus XPDL utilisant cette fonctionnalité ne sera pas compatible avec les versions précédentes de WorkflowGen, y compris la version 5.1.6. Une erreur sera générée lors de la tentative d'importation du nouveau XPDL dans ces versions.
Colonnes
Remarques
Événement
Type de l’événement de notification
Destinataire
Destinataire(s) de l’email
Modèle
Le modèle sélectionné du message à envoyer
Condition
Un lien affiche l’écran d’édition de condition de la notification
Suppression
Le x permet la suppression de la notification
Pour ajouter une notification supplémentaire, cliquez sur le symbole d'addition (+) dans l'entête de la colonne à droite, choisissez un événement et un modèle si désiré (sinon les défauts À faire et Défaut seront utilisés) et ensuite choisissez le ou les destinataire(s). Cliquez encore pour enregistrer la notification. Vous pouvez ensuite ajouter une condition si désiré.
Cliquez sur l'événement, sur le ou les destinataire(s) ou sur la condition pour les éditer. Pour supprimer une notification, cliquez sur le x à droite de la notification.
Vous pouvez créer une hiérarchie afin de gérer les notifications des actions en retard en définissant des conditions de notification supplémentaires basées sur les fonctions de calcul des dates/heures dans VBScript ou JavaScript. Cela peut se faire dans JavaScript en manipulant l'objet de la date directement, dans VBScript en utilisant la fonction DateDiff, ou bien en utilisant les macros Action en cours._[Unité de temps]_ en retard et Action en cours._[Unité de temps]_ pré-retard (voir la section Macros pour plus d’informations).
Dans une action d’un processus, si vous voulez notifier le demandeur que le délai de l’action est supérieur à un jour et sinon notifier le gestionnaire du processus aussi après deux jours, vous devez créer deux notifications supplémentaires de l’action avec les paramètres ci-dessous :
Type : Retard
Destinataire : Demandeur
JavaScript :
VBScript :
En utilisant une macro :
Type : Retard
Destinataire : Le participant superviseur
JavaScript :
VBScript :
En utilisant une macro :
Dans une action de processus, si vous voulez notifier un utilisateur qu’il risque d’être en retard avant la date cible, vous devez ajouter une notification additionnelle sur l’action en utilisant l’événement Pré-retard.
Pour ajouter une notification de pré-retard, suivez les étapes suivantes :
Dans l’onglet de notification d’une action, sous la section Supplémentaires, sélectionnez l’événement Pré-retard.
Sélectionnez le ou les destinataire(s).
Sélectionnez le modèle par défaut ou le modèle personnalisé précédemment créé.
Cliquez sur Ajouter.
Entrez une condition (voir les exemples ci-dessous).
JavaScript :
VBScript :
En utilisant une macro :
JavaScript :
VBScript :
En utilisant une macro :
Il n’y a pas de limite sur les notifications additionnelles de pré-retard qui peuvent être ajoutées à une action (ex. : 2 jours, 1 jour, 1 heure, 30 minutes, etc...).
Champs
Colonnes
Remarques
Ordre d’affichage
Les flèches permettent la modification de l’ordre d’affichage des données atteignable également par glisser-déplacer. L’ordre d’affichage des données s’affecte également l’ordre des données affichées aux utilisateurs dans le portail.
* Uniquement affiché si le processus est défini en tant que sous-processus.
Les options disponibles dans le panneau Édition d'une donnée varient en fonction du type de fichier de données (fichier, texte, numérique ou date/heure).
Uniquement affiché si la donnée du processus est un fichier.
Uniquement affiché si le processus est défini comme un sous-processus.
Le type de donnée peut être modifié seulement si la donnée n’est pas utilisée par un des objets ci-dessous :
Un paramètre d’une action du processus
Une affectation dynamique d’une action du processus
Les conditions des transitions ou des notifications
Un paramètre d’un sous-processus utilisé
Une donnée ne peut pas être supprimée si elle associée au workflow du processus (en tant que paramètre ou dans les conditions des transitions). Une donnée ne peut pas être supprimée si elle est définie en tant que paramètre d’un sous-processus et utilisé par un processus parent.
L'application de workflow RAISEEXCEPTION déclenche les exceptions d'annulation sur les actions spécifiées, contrôlées par l'exception de workflow d'annulation d'action dans le panneau de définition des conditions. Cette application de workflow peut ainsi être appelée par une action pour annuler une ou plusieurs autres actions dans une requête en cours. L'application est convertie en assembly de workflow pour simplifier la configuration et améliorer les performances.
Ce dispositif est utile quand une ou plusieurs actions doivent être annulées après qu'un certain point dans le workflow ait été atteint, quoique ces actions aient été déjà activées. Comme exemple, si trois actions parallèles sont actives, mais une des actions parallèles est conclue avant les autres et vos règles de workflow déterminent que les deux autres actions ne sont plus exigées, vous pourriez activer le RAISEEXCEPTION pour annuler les deux autres actions et pour permettre le déroulement du workflow.
De plus, vous pouvez :
Utiliser les paramètres par défaut pour annuler toutes les actions d’une demande identifiée.
Utiliser les paramètres facultatifs pour annuler une liste d’actions instanciées dans une liste de demandes ou pour effectuer une annulation à la place d’un utilisateur défini.
Utiliser les paramètres supplémentaires pour définir plusieurs couples de références d’actions.
Les paramètres REQUEST_ID et ACTIVITY_NAME doivent être utilisés ensemble.
Dans cet exemple, l’application va annuler tous les instances de l’action PENDING_ACTION dans la demande 455 :
Les paramètres REQUEST_ID_LIST et ACTIVITY_NAME_LIST doivent être utilisés ensemble.
Dans cet exemple l’application va annuler toutes les instances des actions PENDING_ACTION1 et PENDING_ACTION2 dans les demandes 445, 446 et 447 :
Dans cet exemple l’application va annuler toutes les instances des actions nommées PENDING_ACTION dans la demande 445 à la place de Jean Dupont (jdupont):
Dans cet exemple l’application va annuler toutes les instances de l’action PENDING_ACTION1 dans la demande 455 et toutes les instances de l’action PENDING_ACTION2 dans la demande 456. Si les actions 455 et 456 n’ont pas d’instance ouverte aucune erreur n’est remontée.
Les erreurs suivantes peuvent se produire lors de l’exécution de l’application :
Pour créer des menus personnalisés dans le module administration, vous devez créer et modifier un fichier XML nommé admin.xml dans le dossier CustomMenu situé dans\wwwroot\wfgen\App_Data\customMenus.
Ces menus personnalisés seront alors disponibles en tant qu'options de menu supplémentaires dans le module d'administration. WorkflowGen supporte deux niveaux d'éléments de menu personnalisés.
Les éléments du menu peuvent être sécurisés par le profil utilisateur.
Vous pouvez également utiliser des images dans un thème personnalisé. Pour ce faire, créez un nouveau thème WorkflowGen et dirigez le chemin URL de l'icône à son emplacement dans le répertoire \wfgen\App_Themes\MONTHEME\admin\images.
Le répertoire par défaut est \wfgen\App_Themes\Default\admin\images. Vous pouvez également ajouter vos images personnalisées à ce dossier et les utiliser à partir du dossier de thème Default (voir l'exemple ci-dessous).
admin.xmlPour créer des menus personnalisés dans le portail utilisateur, vous devez créer et modifier un fichier XML nommé portal.xml dans le dossier CustomMenu situé dans\wwwroot\wfgen\App_Data\customMenus.
Ces menus personnalisés seront alors disponibles en tant qu'options de menu supplémentaires dans le portail utilisateur. WorkflowGen supporte deux niveaux d'éléments de menu personnalisés.
Les éléments du menu peuvent être sécurisés par le profil utilisateur.
Vous pouvez également utiliser des images dans un thème personnalisé. Pour ce faire, créez un nouveau thème WorkflowGen et dirigez le chemin URL de l'icône à son emplacement dans le répertoire \wfgen\App_Themes\MONTHEME\portal\images.
Le répertoire par défaut est \wfgen\App_Themes\Default\portal\images. Vous pouvez également ajouter vos images personnalisées à ce dossier et les utiliser à partir du dossier de thème Default (voir l'exemple ci-dessous).
portal.xml
COL_NAME[,...n]
["TEXT|NUMERIC|DATE"[,...n]]
VALUE[ ,...n]iso,country
AD,Andorra
AE,United Arab Emirates
AF,Afghanistan
AG,Antigua and Barbuda
AI,AnguillaId,iso,Country
NUMERIC,TEXT,TEXT
1,AD,Andorra
2,AE,United Arab Emirates
3,AF,Afghanistan
4,AG,Antigua and Barbuda
5,AI,AnguillaId,Lastname,Firstname,Address,Birthday
NUMERIC,TEXT,TEXT,TEXT,DATE
1,DOE,John,"1111 N. Sample, Mt. Prospect, IL 60000","01/01/1980"(<WF_SYSTEM_DATETIME> - <WF_ACTIVITY_INST_LIMIT_DATETIME>) / 3600000 < 24DateDiff("h",<WF_ACTIVITY_INST_LIMIT_DATETIME>,<WF_SYSTEM_DATETIME>) < 24<WF_ACTIVITY_INST_OVERDUE_HOURS> < 24(<WF_SYSTEM_DATETIME> - <WF_ACTIVITY_INST_LIMIT_DATETIME>) / 3600000 >= 48DateDiff("h",<WF_ACTIVITY_INST_LIMIT_DATETIME>,<WF_SYSTEM_DATETIME>) >= 48<WF_ACTIVITY_INST_OVERDUE_HOURS> >= 48(<WF_ACTIVITY_INST_LIMIT_DATETIME> - <WF_SYSTEM_DATETIME>) / 86400000 <= 3DateDiff("d", <WF_SYSTEM_DATETIME> , <WF_ACTIVITY_INST_LIMIT_DATETIME>) <= 3<WF_ACTIVITY_INST_PREOVERDUE_DAYS> <= 3(<WF_ACTIVITY_INST_LIMIT_DATETIME> - <WF_SYSTEM_DATETIME>) / 60000 <= 15DateDiff("n", <WF_SYSTEM_DATETIME> , <WF_ACTIVITY_INST_LIMIT_DATETIME>) <= 15<WF_ACTIVITY_INST_PREOVERDUE_MINUTES> <= 15En retard
Pré-retard *
Réalisé
Erreur d’exécution
Les utilisateurs associés à un participant
L’utilisateur qui a fait une action ... (nom de l’action)
Des adresses email contenues dans la donnée (à sélectionner dans la liste ci-dessous) séparées par virgules ou point-virgules
Le mot-clé réservé SUBJECT pour définir un sujet personnalisé de l’email
Des macros
Modèles de notification personnalisés (voir Notifications personnalisées pour des instructions sur la création de modèles de notification personnalisés)



Spécifie si le lien personnalisé sera affiché dans le nouvel élément de menu uniquement ou également sur la page d'accueil du module d'administration (par défaut)
Valeur par défaut : true (par défaut) ou false
Icon
Spécifie le chemin d'accès à une icône personnalisée à afficher à la place de l'icône de flèche circulaire par défaut
Spécifie si le lien personnalisé sera affiché dans le nouvel élément de menu uniquement ou également sur la page d'accueil du module d'administration (par défaut)
Valeur par défaut : true (par défaut) ou false
Icon
Spécifie le chemin d'accès à une icône personnalisée à afficher à la place de l'icône de flèche circulaire par défaut
Paramètre
Description
Title
Spécifie le titre du nœud
Le titre du nœud menuItem sera le nom utilisé pour l'article sur la page d'accueil du module d'administration.
Profile
Spécifie si le lien sera visible pour les utilisateurs avec un profil administrateur ou utilisateur
Valeurs possibles : user ou admin
✏️ Note : Si Utilisateur est spécifié, il n'accorde pas l'accès à tous les utilisateurs mais seulement à ceux qui ont accès au module administration (par exemple, les gérants de dossier).
URL
Spécifie l'URL à ajouter en tant que lien personnalisé
📌 Exemple : http://www.workflowgen.com
Description
Spécifie une description pour le lien personnalisé
📌 Exemple : Visitez le site Web WorkflowGen !
Target
Spécifie si le lien personnalisé sera ouvert dans la page de WorkflowGen (par défaut) ou dans une nouvelle fenêtre de navigateur
Valeurs possibles : "" (par défaut) ou _new
Paramètre
Description
Title
Spécifie le titre du nœud
Le titre du nœud menuItem sera le nom utilisé pour l'article sur la page d'accueil du portail utilisateur.
Profile
Spécifie si le lien sera visible pour les utilisateurs avec un profil utilisateur, superviseur, gestionnaire ou administrateur Valeurs possibles :
user
supervisor
manager
admin
URL
Spécifie l'URL à ajouter en tant que lien personnalisé
📌 Exemple : http://www.workflowgen.com
Description
Spécifie une description pour le lien personnalisé
📌 Exemple : Visitez le site Web WorkflowGen !
Target
Spécifie si le lien personnalisé sera ouvert dans la page de WorkflowGen (par défaut) ou dans une nouvelle fenêtre de navigateur
Valeurs possibles : "" (par défaut) ou _new
showInHomepage
showInHomepage
<?xml version="1.0" encoding="utf-8" ?>
<menu>
<menuItem title="Mes liens..." profile="user">
<menuItem title="Advantys" url="http://www.advantys.com/" target="_new" description="Advantys Web Site" profile="user" showInHomepage="true" />
<menuItem title="WorkflowGen" url="http://www.workflowgen.com/" target="" description="WorkflowGen Web Site" profile="admin" icon="myicon.gif" showInHomepage="false" />
</menuItem>
</menu><?xml version="1.0" encoding="utf-8" ?>
<menu>
<menuItem title="WorkflowGen – BPM Resource Center" profile="user" url="http://community.workflowgen.com/" description="Open the WorklfowGen BPM Resource Center web site" target="_new" icon="" />
<menuItem title="WorkflowGen" profile="supervisor" url="http://www.workflowgen.com/" description="Open the WorkflowGen website" target="_blank" icon="" />
<menuItem title="Advantys" profile="manager" url="http://www.advantys.com/" description="Open the Advantys web site" target="_self" icon="" />
<menuItem title="Google Search" profile="admin" url="http://www.google.com/" description="Open Google Search" target="_parent" icon="search_l.gif" />
<menuItem title="Yahoo!" profile="user" url="http://www.yahoo.com/" description="Open the Yahoo! website" target="_top" icon="" />
<menuItem title="New Leave Application" profile="user" url="/wfgen/show.aspx?QUERY=START&P=LEAVE_APPLICATION" description="Launch a new leave application" target="_new" icon="http://dev4/wfgen/App_Themes/Default/portal/images/request_followup_form_l.gif" />
</menu>Seulement applicable aux données de type numérique et date/heure. Après avoir sauvegardé les données le menu déroulant Format sera rempli avec les formats suivants :
Formats numériques :
Personnalisé (défini par l’usager)
Devise ({0:C})
Personnalisée
Affichage format associé; autorise les formats personnalisés à être spécifié si le format Personnalisé est spécifié ci-dessus.
Précision
Nombre de places décimal à afficher (pour les formats applicables)
Culture
Force l’affichage des données en utilisant la culture choisie (format de langue). La valeur par défaut est la culture de l’usager courant.
Fuseau horaire
Applicable uniquement aux données de type « date/heure », en précisant un fuseau horaire spécifique forcera les données d’afficher en utilisant le fuseau horaire sélectionné. La valeur par défaut est le fuseau horaire de l’utilisateur courant.
Nouveau fichier [1]
Fichier à ajouter ou à mettre à jour
Parcourir
Affiche une fenêtre contextuelle de recherche de fichiers
Paramètre de sous-processus [2]
Direction de la donnée lorsqu’utilisé en tant que paramètre par le processus parent
Sécurité
Définit les participants qui ont accès aux données (un lien permet de limiter l’accès de la donnée à certains participants ou processus) ✏️ Note : Vous ne pouvez que choisir des participants définis comme type demandeur ou acteur.
Visibilité
Permet la définition des options de visibilité
✏️ Note : La visibilité des données est toujours modifiable sur les processus actifs.
Option 1 : Afficher la donnée dans la fiche de suivi (sélectionnée par défaut) La donnée sélectionnée sera visible aux endroits suivants :
Formulaires de demande et de suivi
Messages de notification par défaut (emails)
Taille de la colonne (en pixels)
Définit la dimension de la colonne dans les listes et la page d’accueil; disponible lorsque l’option 3 ou l’option 4 de visibilité est sélectionnée
Lecture seule
Définit une donnée comme en lecture seule
Économise de l'espace disque lorsqu'utilisé sur les données de processus de fichier en associant une seule copie du fichier par processus pour toutes les actions fermées et les demandes fermées.
✏️ Note : Les paramètres des actions OUT et INOUT utilisant les données définies en lecture seule ne seront pas mis à jour.
⚠️ Attention : En général, ne définissez pas les éléments FORM_DATA des applications EFORM (qui contiennent les données d'un formulaire) en lecture seule.
Nom
Nom de donnée (un lien affiche l’écran d’édition de la donnée) Le lien Ajouter permet d’afficher l’écran des données en mode ajout.
Description
Description de donnée
Type de donnée
Type de donnée
Direction *
Direction du paramètre de sous-processus
Champ
Remarques
Nom
Identifiant unique pour la donnée; doit être conforme à la nomenclature et limité à 30 caractères (champ obligatoire)
✏️ Note : Les noms des données devraient respecter les conventions d'appellation XML suivantes :
Commencer par une lettre ou par un tiret bas
Contenir uniquement des lettres, des chiffres, des traits d'union, des tirets bas et des points
Ne pas contenir des espaces
Ne pas commencer par les lettres XML dans n'importe quelle casse (p.ex. xml ou Xml)
Pour plus d'informations, voir .
Parcourir
Liste les identifiants de tous les champs du formulaire créés avec l’éditeur intégré et permet de sélectionner manuellement les champs à l’aide de leur identifiant à déclarer en données du processus
✏️ Note : Ce bouton est affiché sur le formulaire d’addition de données.
Description
Description de la donnée limitée à 255 caractères (champ obligatoire)
Type de donnée
Type de donnée (champ obligatoire) :
Texte
Détection automatique des URLs et adresses email qui ensuite les affiche comme liens au lieu de textes ordinaires
Numérique
Date/Heure
Fichier
Valeur par défaut
Valeur par défaut de la donnée
Pour les données de type texte : Cliquez sur l’icône crayon pour ouvrir l’éditeur Éditer un texte.
Pour les données de type fichier : Cliquez sur l’icône crayon pour ouvrir l’éditeur Créer un fichier ou Éditer un fichier. Vous pouvez spécifier un nom de fichier (sinon le fichier sera enregistré avec le nom de la donnée par défaut) et le fichier sera enregistré avec l’extension correspondant à son type. Si vous saisissez une extension qui ne correspond pas au type de fichier, elle sera annexée avec l’extension correcte. Par ailleurs, vous pouvez sélectionner un fichier. (Si vous sélectionnez un fichier de format non supporté par l’éditeur, vous ne pourrez pas l’éditer et l’icône crayon ne sera pas affichée.) Cliquez l’icône x pour supprimer le fichier.
Dans les deux éditeurs, appuyez sur Ctrl+Espace pour afficher une liste déroulante depuis laquelle vous pouvez choisir et insérer des données de processus et des macros WorkflowGen.
Format
IN
Utilisé pour définir le nom d’utilisateur (username) utilisé pour annuler l’action ✏️ Notes :
Le nom d’utilisateur utilisé doit faire partie d’un participant du processus.
Si ce paramètre n’est pas défini le compte utilisé est le compte défini dans Identité par défaut du service de moteur de workflow dans la section Sécurité de l'onglet Général du Panneau de configuration.
PASSWORD
TEXT
IN
Utilisé pour définir le mot de passe associé au nom d’utilisateur utilisé pour annuler l’action
EXCEPTION_NAME
Exception qui sera déclenchée sur l'action
Valeurs possibles :
CANCEL
ERROR
EXCEPTION_MESSAGE
Ce paramètre est utilisé avec le nom de l’exception ERROR pour fournir plus de détails sur l'erreur dans la mesure de suivi
IN
Ignorer l'erreur Nothing to do (rien à faire)
Par défaut, RAISEEXCEPTION renvoie une erreur si vous essayez d’annuler une action qui ne possède aucune instance ouverte. Si vous définissez ce paramètre sur Y, l’application ignorera ce type d’erreur.
Vérifiez la chaîne connexion dans le fichier « web.config ». Vérifiez les indications dans les messages d’erreur renvoyés.
(Erreur RaiseException) Paramètres : <Nom du paramètre de l’ID de demande >/<Nom du paramètre du nom de l’action > Erreur : WorkflowGen a levé une exception de sécurité.
L’utilisateur défini par les paramètres IDENTITY n’est pas participant du processus
Vérifiez les paramètres IDENTITY_USERNAME et IDENTITY_PASSWORD. Identifiez la demande avec les noms des paramètres retournés dans le message d’erreur.
(Erreur RaiseException) Paramètres <Nom du paramètre de l’ID de demande >/<Nom du paramètre du nom de l’action > Erreur : L’action <Nom de l’action/activité > n’existe pas dans la demande <Identifiant de la demande >.
Un des noms d’action définis dans les paramètres RAISE_EXCEPTION n’existe pas.
Vérifiez les paramètres RAISE_EXCEPTION. Vérifiez les indications dans les messages d’erreur renvoyés.
(Erreur RaiseException) Paramètres <Nom du paramètre de l’ID de demande >/<Nom du paramètre du nom de l’action > Erreur : L’action n’a pas d’instance dans la demande <Identifiant de la demande >.
Une des actions à annuler n’est pas ouverte.
Vérifiez les paramètres RAISE_EXCEPTION. Vérifiez les indications dans les messages d’erreur renvoyés. Définissez le paramètre IGNORE_NOTHINGTODO_ERROR sur Y afin d’ignorer ce type d’erreur.
Paramètre
Type
Direction
Description
REQUEST_ID
Numeric
IN
L'ID de la demande dans laquelle l’action sera annulée
ACTIVITY_NAME
Text
IN
Le nom de l’action qui sera annulée
Paramètre
Type
Direction
Description
REQUEST_ID_LIST
TEXT
IN
Liste d’IDs de demandes dans lesquelles l’action sera annulée
ACTIVITY_NAME_LIST
TEXT
IN
Liste d’IDs de demandes dans lesquelles l’action sera annulée
USERNAME
Paramètre
Type
Direction
Description
EX?_REQUEST_ID
Numeric
IN
Définit l’ID de la demande dans laquelle l’action sera annulée pour le couple spécifié par le ? (point d’interrogation)
EX?_ACTIVITY_NAME
Text
IN
Définit le nom de l’action qui sera annulée pour le couple spécifié par le ? (point d’interrogation)
IGNORE_NOTHINGTODO_ERROR
Erreur
Cause
Solution
Erreur RaiseException : Le contexte WorkflowGen est vide
Tous les paramètres RAISE_EXCEPTION sont vides
Vérifiez les paramètres RAISE_EXCEPTION
Erreur RaiseException : Les paramètres de l’application ne sont pas saisis correctement
Les paramètres RAISE_EXCEPTION ne sont pas remplis correctement
Vérifiez les paramètres RAISE_EXCEPTION
(Exception Web WorkflowGen) Statut HTTP : ... Réponse de l’erreur : ... or The FUNCTION_NAME parameter was not found
Une erreur est survenue lors de l’émission de la requête HTTP à WorkflowGen
Vérifiez le statut HTTP : 401 : erreur de sécurité Vérifiez vos paramètres d’authentification 404 : Impossible de se connecter à l’URL 500 : Erreur interne du serveur Vérifiez les indications dans les messages d’erreur renvoyés
Erreur RaiseException : Erreur lors de la tentative de connexion à la base de données WorkflowGen Message d’erreur : ....
TEXT
Text
Une erreur est survenue lors de la tentative de connexion à la base de données WorkflowGen
Évaluations générales :
Un processus doit avoir au moins un début et une fin.
Un processus ne doit avoir qu’un seul participant avec le rôle demandeur.
Il ne peut-y avoir qu’une seule condition OTHERWISE (sinon) dans les transitions de l’action.
Évaluations des actions :
Toutes les actions doivent avoir au moins une action suivante ou une fin.
Si une action a une transition vers la fin du processus, la transition vers les actions suivantes doit avoir une condition.
Une action qui boucle doit avoir une condition.
Pour une action ou un sous-processus, tous les paramètres obligatoires de l’action doivent être définis.
Évaluations des actions :
Une exception est recommandée pour les actions qui utilisent une des méthodes d’affectation suivantes et si le nom d’utilisateur est récupéré depuis une donnée du processus :
Automatique à la personne qui a fait
Manuelle par la personne qui a fait
Les sections des actions en tant que sous-sections fournissent des informations à propos de :
Infos (générales)
Paramètres obligatoires
Paramètres supplémentaires
Actions précédentes
Des notifications personnalisées peuvent être utilisées au lieu des gabarits par défaut de WorkflowGen. Ces gabarits personnalisés peuvent être créés en HTML ou en texte simple et peuvent également utiliser des macros régulières de WorkflowGen pour afficher l'information spécifique de processus.
REQUEST_ID = 455
ACTIVITY_NAME = "PENDING_ACTION"REQUEST_ID_LIST = "455, 456, 457"
ACTIVITY_NAME_LIST = "PENDING_ACTION1, PENDING_ACTION2"REQUEST_ID = "455"
ACTIVITY_NAME = "PENDING_ACTION"
USERNAME = "jdupont"
PASSWORD = "1234"EX1_REQUEST_ID = 455
EX1_ACTIVITY_NAME = "PENDING_ACTION1"
EX2_REQUEST_ID = 456
EX2_ACTIVITY_NAME = "PENDING_ACTION2"
IGNORE_NOTHINGTODO_ERROR = "Y"TIMEOUTASSIGNMENT_ERROR



{0:D})Scientifique ({0:E})
Virgule fixe ({0:F})
Standard ({0:G})
Nombre ({0:N})
Pourcentage ({0:P})
Aller-retour (float) ({0:R})
Hexadécimal ({0:X})
Formats date/heure :
Personnalisé (défini par l’usager)
Date courte
Date longue
Date/heure complète (heure courte)
Date/heure complète (heure longue)
Date/heure générale (heure courte)
Date/heure générale (heure longue)
Mois jour
Date/heure aller-retour
Date/heure RFC 1123
Date/heure triable (ISO 8601)
Heure courte
Heure longue
Date/heure universelle triable
Date/heure universelle complète
Année mois
Fenêtre contextuelle des données d'action
Liste des critères de recherche
✏️ Note : La désélection de cette option désactive et désélectionne les trois autres.
Option 2 : Critère de recherche par défaut (non sélectionnée par défaut) La donnée sélectionnée sera affichée dans chaque écran de recherche en tant que critère de recherche par défaut sans paramètre.
✏️ Note : Vous pouvez seulement filtrer par données définies dans la version active du processus ou la dernière version si aucune n’est active.
Option 3 : Affichage en colonne dans les listes (non sélectionnée par défaut) La donnée sélectionnée sera affichée dans chaque liste d’action ou de demande lorsqu’un unique processus est sélectionné (mode processus simple)
Option 4 : Affichage en colonne dans la page d’accueil (non sélectionnée par défaut) La donnée sélectionnée sera affichée dans une colonne de la page d’accueil lorsqu’un unique processus est sélectionné (mode processus simple)

Pour que WorkflowGen puisse utiliser les notifications personnalisées, celles-ci doivent être ajoutées aux données du processus comme type FICHIER.
Pour ce faire, créez une nouvelle donnée dans le processus pour chaque gabarit, puis attacher le gabarit à utiliser.
WorkflowGen peut utiliser un nombre illimité de notifications personnalisées par action. Pour ajouter une notification personnalisée, suivez les étapes ci-dessous.
Dans la section Supplémentaires de l’onglet Notifications :
Sélectionnez l’événement qui causera la notification.
Sélectionnez le destinataire de la notification.
Sélectionnez les données de processus qui contiennent le gabarit. Vous pouvez choisir la notification personnalisée créée ou utiliser le gabarit par défaut de WorkflowGen.
Pour créer un gabarit, utilisez un éditeur de texte pour créer un fichier comme suit :
Pour créer une ligne sujet personnalisée pour les gabarits, la première ligne dans le gabarit HTML doit être SUBJECT: suivi par la ligne sujet. Les macros pourraient être aussi utilisées ici.
Créez une page HTML qui servira d'un gabarit pour l'email. Afin de supporter Unicode nous vous recommandons d'enregistrer le fichier avec un encodage UTF-8 et d'ajouter une série de caractères UTF-8 dans l'en-tête de la page HTML, comme indiqué ci-dessous. Les styles CSS peuvent également être appliqués dans la page HTML.
Pour ajouter des images dans vos notifications il vous suffit de modifier les gabarits personnalisés ou intégrés dans WorkflowGen (\wfgen\App_data\Templates\Emails). Les balises dont la source (src="") commence par http ne sont pas incluses dans le courriel et sont simplement liées. Par contre les balises qui commencent avec une lettre de disque (ex. : c:\) seront incluses dans l'email et en conséquence augmenteront la taille de l'email. Par contre une connexion au serveur n’est pas nécessaire.
L’image est incluse dans le message :
L’image n’est pas incluse dans le message :
Un gabarit de notification de texte non-Unicode peut être créé en utilisant un éditeur de texte comme Windows Notepad et doit être enregistré en tant que fichier .txt.
En plus de certaines macros régulières qui sont disponibles, les macros suivantes pourraient être aussi utilisées dans les gabarits de notification personnalisés.
Macro
Remarques
<WF_PROCESS_INST_RELDATA_VALUE.DATANAME>
Une valeur de données de processus où DATANAME est le nom des données de la valeur que vous souhaitez afficher
<WF_PROCESS_INST_RELDATA_DESCRIPTION.DATANAME>
Récupère la description d’une donnée de processus
<WF_PROCESS_INST_RELDATA_FILE.DATANAME>
La valeur d’une donnée du processus où DATANAME est le nom de la donnée dont la valeur veut être attachée au courriel comme pièce jointe
<WF_LINK_ACTIVITY_INST_LAUNCH>
Un lien sera affiché pour lancer l’action directement de la notification
<WF_LINK_ACTIVITY_INST_FORM>
Un lien sera affiché voir le suivi de l’action directement de la notification
<span style="font-family: 'Courier New';"><img src="C:\inetpub\wwwroot\wfgen\App_Themes\Default\portal\images\activity_s.gif"></span><img src="http://localhost/wfgen/App_Themes/Default/portal/images/activity_s.gif"><html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>My Title</title>
<style type="text/css">
body
{
font-family:Arial;
}
</style>
</head>
<body>
<table width="90%">
<tr>
<td>
<img src="C:\inetpub\wwwroot\wfgen\App_Themes\Default\portal\images\activity_s.gif"> <WF_PROCESS_INST_NAME>
</td>
</tr>
<tr>
<td>
Décision
</td>
<td>
<WF_PROCESS_INST_RELDATA_VALUE.MGR_DEC>
</td>
</tr>
<tr>
<td>
Date
</td>
<td>
<WF_SYSTEM_DATE>
</td>
</tr>
<tr>
<td>
Lancer l’action
</td>
<td>
<a href="<WF_LINK_ACTIVITY_INST_LAUNCH>">lien 1</a>
</td>
</tr>
<tr>
<td>
Faire le suivi de l’action
</td>
<td>
<a href="<WF_LINK_ACTIVITY_INST_FORM>">lien 2</a>
</td>
</tr>
<tr>
<td>
Faire le suivi de la demande
</td>
<td>
<a href="<WF_LINK_PROCESS_INST_FORM>">lien 3</a>
</td>
</tr>
<tr>
<td>
Faire le suivi de la demande
</td>
<td>
<a href="http://YOURSITE/wfgen/show.aspx?QUERY=PROCESS_INSTANCE_FORM&ID_PROCESS_INST=<WF_PROCESS_INST_ID>">Lien</a>
</td>
</tr>
</table>
</body>
</html>SUBJECT : Mon sujet
Décision : <WF_PROCESS_INST_RELDATA_VALUE.MGR_DEC>
Date : <WF_SYSTEM_DATE>
Lancer l’action : <WF_LINK_ACTIVITY_INST_LAUNCH>
Faire le suivi de l’action : <WF_LINK_ACTIVITY_INST_FORM>
Faire le suivi de la demande : http://VOTRESITE/wfgen/Show.aspx?QUERY=PROCESS_INSTANCE_FORM&ID_PROCESS_INST=<WF_PROCESS_INST_ID>Toutes les données du processus doivent être utilisées dans les paramètres des actions ou dans les conditions des transitions.
Une donnée utilisée dans une condition doit être associée à un paramètre de direction OUT ou INOUT si aucune valeur par défaut n’est définie.
Les actions qui comportent une transition avec une condition OTHERWISE doivent avoir une autre transition avec une condition qui n’est pas la condition OTHERWISE.
Si l’action provient d’une synchronisation, la méthode d’affectation Par l’initiateur de l’action n’est pas possible.
Si l’action peut être lancée après une exception, la méthode d’affectation Par l’initiateur de l’action n’est pas possible.
La méthode d’affectation Automatique à l’initiateur de l’action n’est pas permise si le participant n’est pas un demandeur et si le participant de l’action précédente est différent.
La méthode d’affectation Par l’initiateur de l’action n’est pas permise si l’action est lancée après une exception.
Assurez-vous que tous les paramètres obligatoires de l’application pour une action sont définis.
Assurez-vous que tous les paramètres obligatoires pour un sous-processus sont définis.
Une exception est recommandée pour les actions qui utilisent une application automatique (procédure Web, service Web ou procédure Web asynchrone).
Une exception est recommandée pour les actions qui utilisent un sous-processus.
Toutes les données du processus doivent être utilisées.
Assurez-vous que les paramètres par défaut et les paramètres supplémentaires définis avec une direction OUT sont associées à des données du processus.
Les applications automatiques doivent utiliser une exception.
Niveau d’accès public ou privé
Catégorie(s)
Liste des catégories associées au processus
Délai de réalisation
Délai de réalisation du processus
Tenir compte des jours/heures ouvrés lors du calcul du délai
Utilise seulement les heures ouvrables pour calculer le délai
Notifier le demandeur quand fermé
Une notification est envoyée au demandeur lorsque la demande est clôturée
Archiver les résultats des actions
Enregistre le résultat de chaque action du processus à chaque étape du processus
Liste des groupes associés avec le participant
Annuaire
Liste des annuaires associés avec le participant
Coordinateurs
Liste des coordinateurs associés avec le participant
Suivi graphique
Visible dans le suivi graphique
Permissions pour les superviseurs
Permissions spéciales pour les superviseurs
Permissions pour les commentaires
Permissions : aucune, lecture ou lecture / écriture
Requête
Requête de portée limitée des superviseurs
Utilisé dans les actions
Actions dans lesquelles le participant est utilisé
La donnée sélectionnée sera affichée dans le formulaire de recherche comme critère de recherche sélectionné par défaut
Afficher en colonnes dans les listes
La donnée sélectionnée sera affichée dans les listes de demandes et d’actions en mode mono-processus
Afficher en colonnes en page d’accueil
La donnée sélectionnée sera affichée dans les listes de la page portail en mode mono-processus
Lecture seule
Définit une donnée comme en lecture seule
Économise de l'espace disque lorsqu'utilisé sur les données de processus de fichier en associant une seule copie du fichier par processus pour toutes les actions fermées et les demandes fermées.
✏️ Note : Les paramètres des actions OUT et INOUT utilisant les données définies en lecture seule ne seront pas mis à jour.
⚠️ Attention : En général, ne définissez pas les éléments FORM_DATA des applications EFORM (qui contiennent les données d'un formulaire) en lecture seule.
Utilisé dans les actions
Liste des actions dans lesquelles la donnée est utilisée
Utilisé dans les conditions
Liste des transitions du processus dans lesquelles la donnée est utilisée
Actions suivantes
Notifications
Notifications supplémentaires
Champs
Remarques
Demandes
Environnement de demande
En cours
Nombre de demandes en cours
Clôturées
Nombre de demandes clôturées
Totales
Nombre total de demandes lancées
Champs
Remarques
Nom
Nom du processus
Version
Version du processus
Description
Description du processus
Statut
Statut du processus
Sous-processus
Est-ce un sous-processus ?
Champs
Remarques
Description
Description du participant
Portée
Le participant est défini dans les informations globales
Rôle
Rôle du participant dans le processus
Type de participant
Type d’association avec l’annuaire
Utilisateurs
Liste des utilisateurs associés avec le participant
Champs
Remarques
Description
Description des données
Type de donnée
Type de donnée
Valeur par défaut
Valeur par défaut de la donnée
Sécurité
Liste des participants avec accès à la donnée
Afficher les données dans les formulaires du suivi
La donnée est visible dans les écrans suivants :
Formulaires de suivi des demandes et des actions
Messages de notification par défaut (email)
Fenêtre contextuelle des données d'action
Liste de critères de recherche
✏️ Note : Décocher cette option désactive les options Critère de recherche par défaut, Affichage en colonne dans les listes et Affichage en colonne dans la pages d’accueil.
Niveau d’accès
Groupes
Critère de recherche par défaut
Cliquez le lien Liste pour afficher cette vue.
WorkflowGen propose un outil de conception graphique de workflow de processus en HTML5, construit sur les dernier standards HTML5 et SVG, avec une interface utilisateur simple et un comportement amélioré pour une expérience de conception plus fluide. Il fournit également une plus grande compatibilité avec les différents environnements de conception (tels que les appareils mobiles) qui pourraient ne pas supporter Flash, qui était le mode utilisé dans les versions antérieures de WorkflowGen.
Cliquez le lien Graphique pour afficher cette vue.

Le panneau de configuration est utilisé pour régler les paramètres principaux pour l'application WorkflowGen. Il est accessible à partir de la page d'accueil du module d'administration ou de l’URL http://nomserveur/wfgen/admin/Config.aspx.
L'accès au panneau de configuration peut être réglé dans le fichier web.config de WorkflowGen qui se trouve dans le répertoire \wfgen de votre site. Pour ajouter des administrateurs, ajoutez leurs noms d’utilisateur (délimités par des virgules) au paramètre ApplicationConfigAllowedUsersLogin


Liste des actions précédant l’action actuelle dans le workflow
Actions suivantes
Liste des actions suivant l’action actuelle dans le workflow Le lien Ajouter affiche l’écran d’édition des actions suivant l’action actuelle.
Ajoute une nouvelle action au processus
Ajouter une synchronisation
Ajoute une action de synchronisation au processus
Ajouter un point de fin
Ajoute un point de fin au processus
Ajouter un commentaire
Ajoute un commentaire au processus
Ajouter un texte
Ajoute un texte libre au processus
Ajouter les points de cassure
Ajoute un point de cassure entre deux actions
Mode de positionnement automatique
Change de mode de positionnement entre le mode automatique et le mode manuel pour les ancres des transitions
Afficher les méthodes d'affectation
Affiche les méthodes d'affectation sur les actions
Afficher les colonnes verticales
Ajoute des colonnes de participant en surimpression de la vue graphique afin de regrouper les actions
Afficher les colonnes horizontales
Ajoute des colonnes de participant en surimpression de la vue graphique afin de regrouper les actions
Afficher les panneaux verticaux
Ajoute des panneaux de participant en surimpression de la vue graphique afin de regrouper les actions
Afficher les panneaux horizontaux
Ajoute des panneaux de participant en surimpression de la vue graphique afin de regrouper les actions
Afficher le sélecteur de couleurs
Affiche le sélecteur de couleurs depuis lequel vous pouvez sélectionner la couleur des colonnes/panneaux et la couleur de fond
Zoom moins
Diminue le niveau de zoom par 15 %
Zoom plus
Augmente le niveau de zoom par 15 %
Maximiser la taille du canevas
Maximise la taille du canevas pour remplir la fenêtre du browser
Restaurer la taille du canevas
Restaure la taille par défaut du canevas
Double-cliquez sur la transition.
Ajouter plus qu’une condition à une transition
Il n’est pas possible d’ajouter plus qu’une condition à une transition. Au lieu, créez une nouvelle transition entre les actions puis placez-y la nouvelle condition.
Mettre à jour une condition
Double-cliquez sur la transition ou sur la condition.
Supprimer une condition
Cliquez sur la condition puis cliquez sur le x qui s’affiche en haut à droite.
Supprimer un participant
Cliquez sur le participant puis cliquez sur le x qui s’affiche en haut à droite.
Mode de positionnement automatique
Cliquez sur l’outil de mode de positionnement automatique puis choisissez l’une des options qui s’affichent.
Ajouter un point de cassure
Cliquez sur l’outil d’ajout de point de cassure puis cliquez sur la transition (les points de transition seront créés individuellement). De plus, cliquer l’outil d’ajout de point de cassure affichera tous les points de cassure existants.
Supprimer un point de cassure
Cliquez sur le point de cassure puis cliquez sur le x qui s’affiche en haut à droite ou appuyez sur la touche DELETE (seuls les points de cassure sélectionnés seront supprimés). Dans le cas d’une transition de boucle, il faut un minimum de deux points de cassure.
Changer la position d’une transition de boucle
Changez la position de chacun des points de cassure pour les faire pointer vers la nouvelle position.
Changer la cible/source d’une transition
Cliquez sur la transition et survolez la cible/source de la transition jusqu’à ce que le curseur main s’affiche, puis glissez-déplacez la cible/source sur une autre action.
Changer la boucle d’une action vers une autre action
Cliquez sur la boucle puis changez la cible et la source vers l’autre action.
Redimensionner les colonnes des participants
Cliquez sur le participant et positionnez le curseur sur la ligne séparatrice entre les participants, puis cliquez la ligne et déplacez-la sur la nouvelle position.
Changer l’ordre des participants
Cliquez sur le participant puis déplacez-le à la nouvelle position (l’entête de colonne indique la nouvelle position du participant).
Associer les actions aux colonnes des participants
Peut être activé ou désactivé dans la section Workflow dans l’onglet Administration du Panneau de configuration.
Zoom
Le pourcentage du zoom est affiché en haut à droite du workflow.
Colonnes
Remarques
Nouvelle action
Ouvre la fenêtre Sélectionner un type d’action, puis le formulaire Ajouter une action
Rafraîchir
Met à jour la liste d’actions
Ordre
Les flèches permettent la modification de l’ordre d’affichage des actions dans le workflow du processus
Nom
Nom de l’action (un lien affiche l’écran d’édition de l’action) Le lien Ajouter permet d’afficher l’écran de l’action en mode ajout.
Description
Description de l'action
Icônes
Outils
Remarques
Sauvegarder la mise en page
Enregistre le modèle actuel du diagramme de workflow
Imprimer le schéma
Imprime le diagramme actuel
Ajouter un participant
Ajoute un nouveau participant au processus
Fonctionnalité
Méthode
Ajouter un élément (action, synchronisation, point de fin, commentaire, texte)
Glissez-déplacez l’élément de la barre d’outils sur le canevas.
Supprimer un élément (action, synchronisation, point de fin, commentaire, texte)
Cliquez sur l’élément puis cliquer sur le x qui s’affiche dans le coin en bas à droite.
Ajouter une transition
Cliquez sur l’action et cliquez sur la flèche qui pointe vers le bas, puis déplacez-la sur l’action désirée.
Ajouter une boucle sur une transition
Cliquez sur l’action et cliquez sur la flèche qui pointe vers le bas, puis glissez-déplacez la transition sur elle-même.
Supprimer une transition
Cliquez sur la transition puis cliquez sur le x qui s’affiche en haut à droite.
Actions précédentes
Ajouter une action
Ajouter une condition
Le panneau de configuration contient les sections suivantes :
Général : Les paramètres généraux de WorkflowGen (ex. : connexion à la base de données)
Portail : Les paramètres généraux pour les utilisateurs (ex. : bannière)
Administration : Les paramètres généraux pour le module d’administration (ex. : langues)
: Les paramètres généraux pour les synchronisations d’annuaires (ex. : fichier log)
: Les paramètres généraux pour les intégrations (ex. : GraphQL, webhooks)
: Les paramètres généraux pour l’approbation à distance (ex. : niveau de trace des fichiers de log, serveur de messagerie)
: Taille des fichiers utilisés et erreurs relatives aux demandes
: La page d'informations à propos de l’installation du produit.
Le type de base de données utilisé par WorkflowGen (Microsoft SQL Server).
La fonctionnalité de montée en charge de la base de données permet l’ajout de serveurs afin d’améliorer considérablement la performance du serveur et les temps de réponse. Un serveur réplica additionnel peut être utilisé comme serveur en lecture seule dédié (requêtes SELECT SQL). Le serveur réplica en lecture seule est répliqué à partir du serveur principal existant.
Pour tester la connexion à cette base de données, cliquez sur le lien Tester.
Chaîne de connexion de la base de données en lecture seule. Pour tester la connexion à cette base de données, cliquez sur le lien Tester.
Cochez la case Activer pour activer la fonctionnalité de support de l’architecture principale-lecture seule pour la base de données.
Si l’option de multi-base de données est activée, les différentes cases à cocher des composants du portail seront actives. Sinon, elles resteront décochées et la base de données principale sera utilisée.
Si l’option de multi-base de données est activée, les différentes cases à cocher des modules du portail seront actives. Sinon, elles resteront décochées et la base de données principale sera utilisée.
URL de l’application Web. Elle se compose du protocole à utiliser (HTTP ou HTTPS), de l’adresse IP ou nom DNS du serveur Web et finalement du port TCP du site Web. Vous pouvez tester la valeur saisie en cliquant sur le lien Tester.
📌 Exemple : http://www.monorganisation.com/
Vous pouvez choisir entre deux méthodes d’envoi : Serveur utilisera votre serveur SMTP pour envoyer les emails de notification; Répertoire de collecte sauvegardera les emails de notification dans un répertoire de collecte.
Serveur :
Nom d'hôte : L'adresse du serveur SMTP.
Port : Le port SMTP du serveur. Si le port n'est pas réglé, la connexion SMTP utilisera le port SMTP par défaut (25).
Utiliser SSL/TLS : Cochez pour activer SSL/TLS.
Nom d'utilisateur : Le nom d'utilisateur utilisé pour la connexion SMTP.
Mot de passe : Le mot de passe utilisé pour la connexion SMTP.
Délai d'attente de connexion (secondes) : Le délai d'attente de connexion du serveur en secondes (par défaut :5).
Répertoire de collecte : Saisissez le chemin du répertoire de collecte. Cette option nécessite une passerelle SMTP ou un service SMTP externe pour récupérer et envoyer les emails de notification.
Utilisez le lien Tester pour tester la valeur saisie; un email de test sera envoyé en utilisant l’adresse du serveur SMTP.
Voir la section Application de workflow SENDMESSAGE pour des informations sur comment configurer la messagerie instantanée dans WorkflowGen.
Le fournisseur SMS (Twilio).
L’URL de l’API Twilio.
L’identificateur système du compte Twilio.
Le jeton d’authentification (« auth token ») Twilio.
Le numéro de l’expéditeur du message à afficher.
Activer les logs des messages.
Sélectionnez le mode d’authentification pour se connecter à WorkflowGen :
IIS : Les utilisateurs sont authentifiés par IIS.
Windows : L’authentification et les mots de passe des utilisateurs sont gérés dans Windows.
WorkflowGen : L’authentification et les mots de passe des utilisateurs sont gérés dans WorkflowGen.
Personnalisé : L’authentification et les mots de passe des utilisateurs sont gérés dans votre propre module d’authentification .NET.
Microsoft Identity Platform : Authentification Microsoft Identity Platform v2.0 compatible OIDC.
Azure v1 : Authentification Azure compatible OIDC.
Auth0 : Authentification Auth0 compatible OIDC.
ADFS : Authentification Active Directory Federation Services 2016 compatible OIDC.
Okta : Authentification Okta compatible OIDC.
Version 5 utilise le même mode de gestion des mots de passe que dans les versions antérieures de WorkflowGen.
One-way Hashing stocke les mots de passe hachés dans la base de données WorkflowGen pour une sécurité améliorée.
One-way Hashing (SHA256 FIPS compliant) stocke les mots de passe hachés dans la base de données WorkflowGen pour une sécurité améliorée.
Spécifie le nombre maximum de tentatives de connexion infructueuses après lesquelles le compte de l’utilisateur sera verrouillé.
Spécifie la longueur minimum des mots de passe (en caractères).
Vous pouvez spécifier un domaine à supprimer pour le nom d'utilisateur de l’utilisateur courant. Si cette valeur est réglée sur Tous, tous les noms de domaine seront supprimés.
Le mode de gestion pour les répertoires, les applications, le serveur SMTP et le serveur d'entrée des emails de l'approbation à distance. Le mode AES (FIPS Compliant) utilise le chiffrement symétrique des mots de passe, compatible avec le mode FIPS de Windows activé. Le mode Version 5 (Legacy) utilise l'ancien mode de chiffrement symétrique des mots de passe.
Activer l'encodage des données en transmission lors de la communication entre WorkflowGen et le formulaire Web (.NET ASPX). Cette fonctionnalité est disponible avec l’éditeur de formulaire intégré ainsi que pour les formulaires Web qui utilisent les composants WorkflowGen.My et WorkflowFileUpload.
L'identité du service Windows à utiliser pour exécuter les services Windows.
Les noms d'utilisateurs (séparés par virgule) des utilisateurs qui ont les permissions pour effectuer des opérations systèmes au administratives sensibles via l'API, telles que la gestion et le déploiement des processus, la gestion des participants, la gestion des utilisateurs, la gestion des groupes, le déclenchement des exceptions, la réalisation des instances des activités ou d'autres opérations API via l'emprunt d'identité.
Le fuseau horaire qui sera indiqué par défaut pour les nouveaux utilisateurs du portail (pour les utilisateurs créés manuellement ou par synchronisation d'annuaire). Ce paramètre par défaut ne sera utilisé que pour la création de compte d’utilisateur.
Jours de la semaine fériés, utilisés par l’application pour calculer les dates limites de réalisation des demandes et des actions.
📌 Exemple : Si vous sélectionnez samedi, dimanche, ces jours seront exclus des calculs des délais.
L’heure de début d’une journée (basé sur le fuseau horaire du serveur). Cette valeur est utilisée par le système pour calculer les dates d’échéances des processus et des actions. Elle sera convertie en heure GMT pour des calculs.
📌 Exemple : 8:00 spécifie que la journée débute tous les jours à 8h00.
L’heure de fin d’une journée de travail. Cette valeur est utilisée par le système pour calculer les dates d’échéances des processus et des actions. Elle sera convertie en heure GMT pour les calculs.
📌 Exemple : 17:00 spécifie que la journée se termine tous les jours à 17h00.
Le fuseau horaire qui sera utilisé pour le calcul des heures de travail. Par défaut : fuseau horaire du serveur.
Le pays utilisé pour calculer les jours fériés légaux. Cette valeur est utilisée par WorkflowGen pour calculer les dates limites de réalisation des demandes et des actions. Cette option est basée sur les fichiers DaysOff.*.resx dans le répertoire \wfgen\App_GlobalResources. Ces fichiers peuvent être mis à jour et des nouveaux fichiers peuvent être créés basés sur leur code de pays et de langue standard. Le fichier de ressources DaysOff.en-US.resx est utilisé par défaut, et est basé sur la valeur du paramétrage EngineCountryDaysOff dans le fichier web.config de WorkflowGen.
📌 Exemple : France (Français)
Cette valeur vous permet de spécifier vos jours fériés personnalisés.
📌 Exemple : 2/1, 11/1 indique les 2 janvier et 11 janvier comme jours fériés.
Les éléments graphiques et de couleur de l’interface (« skin ») à utiliser. L’administrateur peut créer ses propres styles et images pour changer l’apparence de l’interface.
Vous pouvez personnaliser le mot WorkflowGen qui est affiché dans le portail.
📌 Exemple : Acme Flow
Permet de définir la langue du portail par défaut. La sélection de la Préférence de l’utilisateur permet à l'utilisateur de choisir sa propre langue, mais vous pouvez en imposer une en la choisissant de la liste.
Décochez cette option pour afficher les descriptions des processus et des actions à la place du noms de code.
Le nombre de lignes par pages affichées dans différentes listes du module d'utilisateur. Par défaut : 10
Nombre de pages affichées dans différentes listes du portail. Par défaut : 10
Le nombre de rangées affichées par pages arrivant d’une recherche or de résultats de statistiques. Par défaut : 1000
La limite avant qu'un filtre apparaisse dans les listes d’utilisateurs. Par défaut : 100
Mode d'affichage du lien Nouvelle demande sur la page d'accueil du portail. Vous pouvez choisir entre :
Afficher les demandes
Afficher les demandes groupées par catégorie
Afficher les catégories et cacher les process
Quand une nouvelle demande est lancée, vous pouvez choisir comment WorkflowGen se comporte. Vous pouvez choisir entre :
Afficher la fiche de suivi de la demande
Lancer la première action
Afficher la fiche de suivi de la première action
Si coché, l’utilisateur doit confirmer le lancement de la nouvelle demande.
Afficher la fiche de suivi de l’action
Lancer l’action
Afficher la fiche de suivi de la demande
Afficher la fiche de suivi de la demande ou la prochaine action
Afficher la fiche de suivi de la demande (sauf si action à affecter)
Afficher la fiche de suivi de la demande (sauf si action à faire)
Afficher la liste des actions à faire
Afficher la liste des actions à faire ou la prochaine action
Afficher la liste des actions à faire (sauf si action à affecter)
Afficher la liste des actions à faire (sauf si action à faire)
Afficher la page d’accueil
Afficher la page d’accueil ou la prochaine action
Afficher la page d’accueil (sauf si action à affecter)
Afficher la page d’accueil (sauf si action à faire)
Afficher la page d’accueil avec « Mes actions à faire » développées
Afficher la page d’accueil avec « Mes actions à faire » développées ou la prochaine action
Afficher la page d’accueil avec « Mes actions à faire » développées (sauf si action à affecter)
Afficher la page d’accueil avec « Mes actions à faire » développées (sauf si action à faire)
Si coché, l’action sera complétée en arrière plan. Cette option peut parfois améliorer le temps de réponse à l’utilisateur final ou prévenir les problèmes de délai d’attente, surtout s’il y a de grandes quantités de traitement après la soumission d’un formulaire Web.
Le nombre maximum d’enregistrements dans les listes avant l’affichage de numéros de page.
L’URL du bandeau affiché à la section supérieure du portail.
📌 Exemple : http://www.macomapgnie.com/accueil.htm
La hauteur du bandeau (en pixels) affiché à la section supérieure du portail.
Permet de rediriger le résultat de la recherche directement vers la fiche de suivi de la demande lorsqu’il n’y a qu’une seule demande trouvée.
Permet d’activer ou de désactiver la fonctionnalité de colonnes et graphiques personnalisés pour les gestionnaires de dossier et les superviseurs.
Afficher le résultat sous forme de rapport personnalisé
Activer l’approbation rapide par défaut : Activer l’option d’afficher les boutons d’approbation rapide dans le formulaire de recherche par défaut.
Activer les colonnes calculées pour les gestionnaires de dossier et les superviseurs
Activer l'édition des colonnes calculées pour les utilisateurs standard
Activer les graphiques personnalisés pour les gestionnaires de dossier et les superviseurs
Activer les graphiques personnalisés pour les utilisateurs standard : Les utilisateurs standards auront la permission de créer et de modifier les graphiques personnalisées.
Affiche les URL et adresses courriels comme liens cliquables.
Spécifie si les processus sont regroupés par catégories dans une liste déroulante utilisée pour sélectionner la vue mono-processus.
Spécifie la largeur (en pixels) par défaut pour les colonnes qui affichent les données associées en vue mono-processus. Par défaut : 150
Permet d’activer ou de désactiver la fonctionnalité Quick View dans le portail.
Spécifie la valeur de donnée du processus à afficher dans la boîte de dialogue.
Vous pouvez choisir entre deux événements différents pour ouvrir le volet Quick View : Clic (défaut) ou Survol.
Ce paramètre vous permet de lister les données communes à plusieurs processus et qui peuvent ensuite être utilisées dans des vues multi-processus.
Par exemple, si vous avez plusieurs processus qui utilisent chacun une donnée nommée CLIENT (TEXTE), vous pouvez déclarer cette donnée comme une donnée commune. Elle sera alors affichée dans les écrans en mode multi-processus.
Les cartes d’appel des utilisateurs sont activées par défaut. Décochez cette option pour désactiver les cartes d’appel.
Spécifie le nombre maximum de jours, d'heures ou de minutes avant la suppression des demandes en cours qui ne contiennent qu'une seule action non complétée et affectée au demandeur seulement. Par défaut : 3 et jour(s)
Nombre maximum d’instances simultanées de la même action d’un processus. Ce paramètre vous permet d’éviter des boucles infinies pendant l’exécution de processus.
📌 Exemple : 100
Si sélectionné, les gestionnaires de dossiers et les superviseurs de processus peuvent supprimer des demandes même si le statut de ces processus est actif.
Les données seront verrouillées pendant la période précisée afin d’éviter une « compétition » pour l’accès aux mêmes données.
📌 Exemple : 5
Activer la notification par email : Ce paramètre vous permet d’activer ou désactiver les notifications par email pour tous les processus du système indépendamment de leur statut.
Notifier l'utilisateur quand il est à la fois l'émetteur et le destinataire de la notification : Si ce paramètre est sélectionné, les notifications seront envoyées même si l’adresse de l’envoyeur et celle du destinataire sont identiques.
Le nom par défaut de l’émetteur des notifications par email; sinon l’adresse email de l’émetteur par défaut sera affichée comme le nom de l’émetteur.
Adresse email par défaut de l’émetteur des notifications par email (seulement utilisé en cas où la notification est envoyée par le système).
📌 Exemple : [email protected]
Adresse email par défaut pour les réponses aux notifications par email.
Nombre maximum de notifications simultanées par email permis par WorkflowGen.
📌 Exemple : 100
Taille maximale des pièces jointes aux demandes en mégaoctets.
Si l’utilisateur n’a aucune langue sélectionnée par défaut ou par préférence, ce paramètre précise la langue à utiliser pour le contenu des notifications.
Affiche les URL et adresses email comme liens cliquables.
Spécifie l’information (par exemple, l’horodatage et les adresses email des destinataires) stockées dans le fichier de log des notifications.
0 – Désactivé : Aucun fichier de log ne sera créé.
1 – Erreurs seulement : Le fichier de log contiendra seulement les informations sur les erreurs.
2 – Toutes les notifications : Le fichier de log contiendra les informations sur les erreurs ainsi que les notifications envoyées avec succès.
Si ce paramètre est sélectionné, les utilisateurs peuvent déléguer leurs actions à d’autres utilisateurs de WorkflowGen depuis le portail.
Précise l’URL de l’application hôte (ex. : http://monserveurweb/wfgen). Dans Microsoft SharePoint, vous pouvez créer un « webpart » qui vous permettrait d’utiliser WorkflowGen (portail ou administration) à l’intérieur de SharePoint, sans avoir à travailler au sein de différentes fenêtres.
Dans ce cas, vous devez spécifier l'URL de l'hôte pour que WorkflowGen fonctionne correctement dans le composant webpart SharePoint.
La configuration CORS est requise pour utiliser la fonction d'application hôte. Voir la section Partage des ressources cross-origin (CORS) dans le Guide technique de WorkflowGen pour des instructions sur comment l'activer.
Nombre de processus affichés dans les rapports statistiques.
📌 Exemple : 10
Nombre d’utilisateurs affichés dans les rapports statistiques.
📌 Exemple : 10
Nombre d’intervenants affichés dans les rapports statistiques.
📌 Exemple : 10
Nombre de demandeurs affichés dans les rapports statistiques.
📌 Exemple : 10
Afficher les URLs et adresses courriels comme liens cliquables.
Vous pouvez choisir parmi deux formats pour l’exportation des résultats générés par un rapport statistiques. Les formats disponibles sont :
CSV (valeurs séparées par des virgules) : Ce format ne supporte pas les caractères Unicode.
✏️ Note : Vous pouvez configurer différents séparateurs pour certaines langues et/ou cultures en modifiant la valeur CSVFieldDelimiter dans le fichier \wfgen\App_GlobalResources\Advantys.Workflow.Web.UI.Portal.*.resx de la langue.
Texte Unicode (séparateur tabulation) : Les valeurs sont seulement séparées par un caractère de tabulation néanmoins les caractères Unicode sont supportés.
Activer ou désactiver les commentaires du portail.
Définit le nombre maximum d’items de la liste des commentaires pour la page d’accueil.
Définit le taux de rafraîchissement automatique en millisecondes de la liste des commentaires de la fiche de suivi. Entrez la valeur 0 pour désactiver cette fonctionnalité. Par défaut : 300000 (5 minutes)
Définit la largeur en pixels de la fenêtre pop-up des commentaires qui peut être affichée. Par défaut : 380
Définit la hauteur en pixels de la fenêtre pop-up des commentaires qui peut être affichée. Par défaut : 550
Définit le champ de tri par défaut de la liste des commentaires. Par défaut : date
Définit l’ordre de tri par défaut de la liste des commentaires. Par défaut : ascendant
L’option Étendre la vue des commentaires affiche la liste des commentaires lors du premier affichage de la fiche de suivi. Par défaut : décoché (la liste n’est pas visible)
Ce paramètre vous permet de définir la langue de l’application pour le module d’administration. En sélectionnant Préférence de l’utilisateur, les utilisateurs pourront choisir leur propre langue mais vous pouvez toujours en imposer une en sélectionnant une langue de la liste.
Nombre de lignes affichées dans les listes à l’intérieur du module d’administration. Par défaut : 100
Nombre de pages affichés dans les listes à l’intérieur du module d’administration. Par défaut : 10
Vous pouvez préciser une limite d’utilisateurs qui s’afficheront dans les listes d’utilisateurs. Au-delà de cette limite, WorkflowGen affiche un filtre pour simplifier votre sélection. Par défaut : 100
Si Restreindre l'encodage des données au jeu de caractères ANSI est sélectionné, seulement les caractères ANSI sont permis dans les champs « NOM ». Par contre, si ce paramètre n’est pas sélectionné, seulement les caractères spéciaux (', ", tab, espace, %, /, \, *) seront refusés.
Activez cette option pour maintenir les actions dans les colonnes de leurs participants respectifs.
Sélectionne la langue par défaut pour les conditions : JavaScript ou VBScript.
Les fournisseurs de données pour la liaison de données, séparés par des virgules (,).
Définit le nombre maximal d’opérations d’annulation dans l’éditeur de formulaires. Par défaut : 30
Au moment qu’un nouvel utilisateur est créé, la langue sélectionnée sera appliquée au profil d’utilisateur comme la langue par défaut.
Active la vérification des règles de suppression pour les utilisateurs, les groupes et les annuaires. Désactivez cette option pour améliorer les délais de réponse dans les listes et les formulaires.
Restreindre les gestionnaires de dossiers d'éditer les participants globaux
Désactive les permissions des gestionnaires de processus pour modifier les informations d’un participant global (via les participants de processus ou lors de l’importation d’un processus), telles que les noms, les descriptions et les associations utilisateur / groupe / répertoire.
Si cette option est activée, la synchronisation annuaire synchronisera les membres de groupes seulement si ce groupe est associé à au moins un participant. Cette option est utile pour réduire le temps de synchronisation en sautant la synchronisation des membres d’un groupe si ce groupe n’est pas associé à un participant.
Définit le nombre maximum de comptes utilisateurs à supprimer par cycle de synchronisation. Cette option est utile pour optimiser la performance de la synchronisation. Par défaut : 0 (illimité)
Si cette option est sélectionnée, les fichiers temporaires XML créés par WorkflowGen sont supprimés à la suite des synchronisations.
Si cette option est sélectionnée, la synchronisation conserve un suivi des actions effectuées.
Nombre de jours avant de supprimer les fichiers log des actions effectuées. Par défaut : 31
Si cette option est sélectionnée, les avertissements seront affichés dans les fichiers log.
Jour de la semaine pour exécuter la synchronisation automatique.
Jour du mois pour exécuter la synchronisation automatique.
L’heure de la journée pour exécuter la synchronisation automatique.
La taille maximale de la page pour la pagination selon les numéros de page (par défaut : 30; maximum : 100).
Le numéro de page par défaut pour la pagination selon les numéros de page (par défaut : 1).
La taille de la page par défaut pour la pagination selon les numéros de page (par défaut : 30).
Activer GraphiQL.
Activer la mise en cache des données.
Activer le mode débogage.
Le délai d'exécution de la requête en millisecondes.
Le délai d'exécution de l'opération en millisecondes.
Le nombre maximum d'opération par requête.
La taille maximale du fichier à envoyer dans les URL de paramètre de type FILE en kilooctets.
La taille maximale du contenu des paramètres de type FILE codés en base64 (recommandé seulement pour les petits fichiers, p.ex. inférieurs à 1 Mo).
Les dossiers locals ou distants où les fichiers utilisés par les paramètres de type FILE sont stockés.
Vous pouvez interdire les dossiers autorisés pour les fichiers d'entrée en laissant ce champ vide, ou autoriser certains dossiers uniquement en saisissant des valeurs séparées par des virgules conformément au tableau ci-dessous :
Valeur
Description
Vide
Aucun dossier autorisé
*
Tous les dossiers sont autorisés
c:\*
Tous less dossiers sur le disque c:
c:\Inetpub\*
Tous les sous-dossiers dans un dossier spécifique
c:\Inetpub\dossier*
Tous les dossiers c:\Inetpub dont les noms commencent par dossier
📌 Exemples :
c:\Inetpub\dossier1
c:\Inetpub\dossier1\abc
Vous pouvez interdire les téléchargements de fichiers utilisant des URLs HTTP et / ou HTTPS en laissant ce champ vide, ou autoriser certaines URLs uniquement en entrant des valeurs séparées par des virgules conformément au tableau ci-dessous :
Valeur
Description
Vide
Aucune URL HTTP ou HTTPS autorisée
*
Toutes les URLs HTTP et HTTPS sont autorisées
https://*
URLs HTTPS uniquement
http://*
URLs HTTP uniquement
http://mondomaine/*
HTTP à partir d'un domaine spécifique uniquement
Activer le mode débogage.
Le délai d'exécution de l'opération en millisecondes.
La taille maximale du fichier à envoyer dans les URL de paramètre de type FILE en kilooctets.
La taille maximale du contenu des paramètres de type FILE codés en base64 (recommandé seulement pour les petits fichiers, p.ex. inférieurs à 1 Mo).
Les dossiers locals ou distants où les fichiers utilisés par les paramètres de type FILE sont stockés.
Vous pouvez interdire les dossiers autorisés pour les fichiers d'entrée en laissant ce champ vide, ou autoriser certains dossiers uniquement en saisissant des valeurs séparées par des virgules conformément au tableau ci-dessous :
Valeur
Description
Vide
Aucun dossier autorisé
*
Tous les dossiers sont autorisés
c:\*
Tous less dossiers sur le disque c:
c:\Inetpub\*
Tous les sous-dossiers dans un dossier spécifique
c:\Inetpub\dossier*
Tous les dossiers c:\Inetpub dont les noms commencent par dossier
📌 Exemples :
c:\Inetpub\dossier1
c:\Inetpub\dossier1\abc
Vous pouvez interdire les téléchargements de fichiers utilisant des URsL HTTP et / ou HTTPS en laissant ce champ vide, ou autoriser certaines URLs uniquement en entrant des valeurs séparées par des virgules conformément au tableau ci-dessous :
Valeur
Description
Vide
Aucune URL HTTP ou HTTPS autorisée
*
Toutes les URLs HTTP et HTTPS sont autorisées
https://*
URLs HTTPS uniquement
http://*
URLs HTTP uniquement
http://mondomaine/*
HTTP à partir d'un domaine spécifique uniquement
Les noms d’utilisateurs (séparés par des virgules) des utilisateurs qui ont les permissions à effectuer des opérations systèmes ou d’administration délicates telles que la gestion et le déploiement des processus, la gestion des utilisateurs et des groupes, « raise exception », la complétion d’une instance d’activité ou des opérations d’API régulières via l’emprunt d’identité.
Voir la section Approbation à distance pour des instructions sur la configuration de l’approbation à distance, par exemple les emails, actions et questions.
Activer l’approbation à distance.
L’intervalle de rafraîchissement des emails d’Approbation à distance en secondes.
Activer l’approbation rapide qui permet à l’utilisateur de répondre aux emails d’approbation dans une ligne, sans aucun formatage supplémentaire (l’utilisateur peut toujours laisser un commentaire sur la deuxième ligne). Par défaut : désactivé
Activer ce mode de validation pour permettre la vérification des informations sur les demandes WorkflowGen par le code de référence d’action.
Activer cette option pour imposer la sensibilité à la casse des réponses par email.
Définit le montant et les types d’informations à stocker dans le fichier de log des notifications.
0 – Désactivé : Aucun (aucun fichier de log ne sera créé)
1 – Messages généraux : Résumé des messages d’exécution seulement
2 – Messages d’erreur : Messages d’erreur d’exception seulement
3 – Messages généraux et messages d’erreurs : Résumé des messages d’exécution et messages d’erreur d’exception
4 – Détails complets pour débogage (incluant l'Observateur d'événements) : Résumé des messages d’exécution et messages d’exception détaillés (incluant les logs de l’Observateur d’événements)
Définit la durée de vie des fichiers de log temporaires. Par défaut : 1 jour
Type de serveur email : POP, IMAP, Exchange 2007, Exchange 2010 et supérieur (Exchange 2013, 2016 et 2019 sont supportés) ou Exchange Online - Authentification moderne.
L’adresse (ou, dans Exchange 2007+, le nom) du serveur de réception des emails. Pour Exchange Online, utilisez outlook.office365.com ou votre propre nom de domaine Exchange Online
Le numéro du port de connexion IMAP ou POP (pas requis avec Exchange 2007+ ou Exchange Online).
Activer SSL (utilisez SSL pour Exchange 2007+). Par défaut : SSL
L'adresse email pour l’envoi et la réception des emails d’approbation à distance. Pour Exchange Online, utilisez l'adresse email de l'utilisateur Office Approbation à distance.
Le nom d’utilisateur pour accéder au serveur POP, IMAP ou Exchange 2007+. Pour Exchange Online, utilisez le nom d'utilisateur de l'utilisateur Office Approbation à distance.
Le mot de passe pour accéder au serveur POP, IMAP ou Exchange 2007+.
Le nom du domaine du compte Exchange 2007+ entrant.
L'ID d'application (client) du portail Azure.
Une chaîne secrète que l'application utilise pour prouver son identité lors de la demande d'un jeton; peut également être appelé mot de passe d'application.
La portée de l'application, p.ex. : https://outlook.office365.com/.default&grant_type=client_credentials. Remplacez outlook.office365.com par votre propre nom de domaine Exchange Online si nécessaire.
Le point de terminaison où le jeton d'accès est fourni, p.ex. : https://login.microsoftonline.com/{ID_locataire_annuaire}/oauth2/v2.0/token. Remplacez {ID_locataire_annuaire} par votre propre ID d'annuaire (locataire) du portail Azure.
Affiche la taille totale occupée par tous les fichiers, la taille moyenne et la taille du plus gros fichier.
Liste des demandes en cours mais dont plus aucune action n’est à faire. Ces demandes ne peuvent pas se clôturer normalement.
Liste des actions qui n’ont pas pu être réalisées suite au dépassement du temps autorisé par le serveur IIS pour s’exécuter.
Liste des actions qui ont levées une erreur autre que le dépassement du temps autorisé par le serveur IIS pour s’exécuter.
Spécifie la version de WorkflowGen installée.
Spécifie le numéro de série de l’installation de WorkflowGen.
Spécifie les diverses versions des composantes utilisées par WorkflowGen.
Les utilisateurs sont associés à un groupe lorsque celui-ci est enregistré (à la création ou à la modification). Si un groupe est synchronisé, sa liste d’utilisateurs est mise à jour lors de la synchronisation. Si aucune synchronisation a été défini pour ce répertoire, les utilisateurs des groupes virtuels de ce répertoire ne seront pas mises à jour automatiquement.
Liens
Remarques
Nouveau
Affiche l’écran d’édition des groupes en mode ajour
Rafraîchir
Rafraîchit la liste des groupes
Filtres externes
Remarques
Annuaire
Affiche les groupes de l’annuaire spécifié
Type
Tous
Annuaire
Requête
Filtrer sur *
Remarques
Nom
Filtre sur le nom du groupe
Description
Filtre sur la description du groupe
Question
Filtre de la requête de groupe
Filtre sur l’adresse email du groupe
Group code
Filtre sur le code du groupe
* Un filtre peut être appliqué à une partie d’un champ.
Colonnes
Remarques
Cases à cocher à choix multiples
Actions :
Activer les utilisateurs sélectionnés
Désactiver les utilisateurs sélectionnés
Supprimer les utilisateurs sélectionnés
Nom
Nom du groupe
Un lien permet d’afficher la fiche d’édition du groupe en mode ajout.
Description
Description du groupe
Utilisateurs
Nombre d’utilisateurs associés au groupe
Un lien permet d’afficher les utilisateurs correspondant.
Annuaire
Annuaire du groupe
✏️ Note : Cette colonne s’affiche uniquement quand Tous est sélectionné dans la liste déroulante Annuaire.
Champs
Remarques
Annuaire
Annuaire du groupe
Nom
Champ obligatoire
Identifiant unique du groupe dans l’annuaire
Description
Champ obligatoire
Description du groupe
Requête
Instructions permettant la définition d’un groupe basée sur une requête paramétrée (filtre sur un annuaire); voir les ci-dessous
(Aide)
Aide de la syntaxe de la requête (liste des champs disponibles)
Utilisateurs membre d'un groupe : {ISMEMBER(FINANCE)}
Utilisateurs d'une ville définie : CITY = 'PARIS'
Des combinaisons, telles que : Country='FRANCE' et {ISMEMBER(FINANCE)}
La suppression d’un groupe n’entraîne pas la suppression des utilisateurs associés.
Le module Portlet permet de retrouver les informations provenant de la page d’accueil du portail utilisateur WorkflowGen au format RSS ou autre (par transformation XSL).
Les résultats reçus depuis une requête HTTP sont retournés au format XML RSS et classés par catégories. Ce format permet le traitement et la présentation des données via tous langages capables de lire et d’analyser du contenu XML.
Vous pouvez obtenir le contenu généré par le module Portlet avec l’URL suivante : http://votresite/wfgen/show.aspx?QUERY=SHOW_RSS
Retrouver toutes les catégories pour l’utilisateur pour lequel le nom d’utilisateur est jeand :
Retrouver les actions à faire (normales et en retard) pour l’utilisateur pour lequel le nom d’utilisateur est jeand :
Retrouver les informations relatives à la catégorie RH pour l’utilisateur courant :
Pour appeler le module Portlet, vous devez utiliser un compte ayant accès au portail d’utilisateur de l’application WorkflowGen (ex. : wfgen_admin).
Vous devez supprimer le nom de domaine du nom d'utilisateur lors de l'appel du module Portlet si les noms d'utilisateurs sont préfixés par le nom du domaine (voir pour plus d'informations).
Vous pouvez obtenir plus d’informations officielles (en anglais) sur le standard RSS 2.0 à l’adresse suivante : .
Les catégories disponibles sont décrites ci-dessous :
Lorsqu’une erreur survient, le statut HTTP de la page est modifié et une erreur à l’exécution sera affichée avec un numéro personnalisé.
Les erreurs suivantes peuvent survenir durant l’exécution du script :
Data Source=DB_SERVER_1;Initial Catalog=WFGEN;User ID=WFGEN_USER;Password=admin123!;Data Source=DB_SERVER_2;Initial Catalog=WFGEN;User ID=WFGEN_USER;Password=admin123!;c:\Inetpub\dossier2
c:\Inetpub\dossier2
c:\Inetpub\dossier2\abc\def
Dossier spécifique uniquement
http://mondomaine/dossier/*
HTTP à partir d'un dossier spécifique uniquement
http://mondomaine/dossier*
Tous les fichiers et dossiers dont les noms commencent par folder
📌 Exemples :
http://mondomaine/dossierfichier.jpg
http://mondomaine/dossier/fichier.jpg
http://mondomaine/dossier2/fichier.jpg
http://mondomaine/dossier/fichier.jpg
Fichier spécifique uniquement
c:\Inetpub\dossier2\abc\def
Dossier spécifique uniquement
http://mondomaine/dossier/*
HTTP à partir d'un dossier spécifique uniquement
http://mondomaine/dossier*
Tous les fichiers et dossiers dont les noms commencent par folder
📌 Exemples :
http://mondomaine/dossierfichier.jpg
http://mondomaine/dossier/fichier.jpg
http://mondomaine/dossier2/fichier.jpg
http://mondomaine/dossier/fichier.jpg
Fichier spécifique uniquement

Chemin de la feuille XSL utilisée pour transformer le contenu RSS.
📌 Exemple : http://votresite/portlet.xsl
Date de publication du contenu du canal
language
rss/channel
Langue du canal
item
rss/channel
Nœud de conteneur de catégories
title
rss/channel/item
Titre de la catégorie
link
rss/channel/item
Lien contextuel de la catégorie dans WorkflowGen
description
rss/channel/item
Valeur de la catégorie
category
rss/channel/item
Nom de la catégorie
Nombre d’actions d’équipe à faire en retard
ACTION_TOASSIGN_NB
Nombre d’actions à affecter
ACTION_TOASSIGN_OVERDUE_NB
Nombre d’actions à affecter en retard
REQUEST_CLOSED_NB
Nombre de demandes clôturées depuis mon dernier accès
REQUEST_CLOSED_OVERDUE_NB
Nombre de demandes en retard clôturées depuis mon dernier accès
REQUEST_TOFOLLOW_NB
Nombre de demandes à suivre
REQUEST_TOFOLLOW_OVERDUE_NB
Nombre de demandes en retard à suivre
ACTION_TOFOLLOW_NB
Nombre d’actions à suivre
ACTION_TOFOLLOW_OVERDUE_NB
Nombre d’actions en retard à suivre
NEW_REQUEST
Liste des processus disponibles que l’utilisateur peut lancer
102
500
Paramètre
Description
USERNAME
Récupère les données pour cet utilisateur. Le login actuel est supposé si ce paramètre est manquant.
📌 Exemple : wfgen_admin
CATEGORY
Liste des catégories à récupérer séparées par ; (point-virgule). Si ce paramètre est manquant, toutes les catégories disponibles sont retournées.
📌 Exemple : REQUEST_RUNNING_NB;ACTION_TODO_NB
PROCESS
Permet au contenu d’être filtré par des processus spécifiques. Spécifiez les noms des processus séparés par ; (point-virgule).
📌 Exemple : DDE_CONGES
PROCESS_CATEGORY
Permet de filtrer le contenu par des catégories spécifiques de processus. Spécifiez les noms des catégories séparés par ; (point-virgule).
📌 Exemple : RH
SHOW_NEW_REQUEST
Récupère la liste des processus que l’utilisateur courant peut lancer.
📌 Exemple : Y
Nom
Chemin
Description
channel
rss
Nœud racine
title
rss/channel
Titre du canal
📌 Exemple : WorkflowGen
description
rss/channel
Description du canal
📌 Exemple : WorkflowGen
pubdate
Nom
Description
REQUEST_RUNNING_NB
Nombre de demandes en cours
REQUEST_RUNNING_OVERDUE_NB
Nombre de demandes en cours en retard
ACTION_TODO_NB
Nombre d’actions à faire
ACTION_TODO_OVERDUE_NB
Nombre d’actions à faire en retard
ACTION_TEAM_NB
Nombre d’actions d’équipe à faire
Titre
Description
Numéro
Statut HTTP
Unable to connect to the database
La base de données n’est pas disponible.
100
500
Unknown user
L’utilisateur envoyé par le paramètre USERNAME ne correspond pas à un utilisateur existant de WorkflowGen.
101
500
Error during the execution of the request <CATEGORY>
XSL
rss/channel
ACTION_TEAM_OVERDUE_NB
Une erreur survient durant l’exécution de la requête SQL correspondant à la catégorie <CATEGORY>.
http://votresite/wfgen/show.aspx?QUERY=SHOW_RSS&USERNAME=jeandhttp://votresite/wfgen/show.aspx?QUERY=SHOW_RSS&USERNAME=jeand&CATEGORY=ACTION_TODO_NB;ACTION_TODO_OVERDUE_NBhttp://votresite/wfgen/show.aspx?QUERY=SHOW_RSS&PROCESS_CATEGORY=RH<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title>WorkflowGen</title>
<description>WorkflowGen</description>
<pubdate>Fri, 24 Oct 2011 15:19:42 GMT</pubdate>
<language>en-US</language>
<item>
<title>Ongoing requests</title>
<link>http://yoursite/wfgen/...</link>
<description>15</description>
<category>REQUEST_RUNNING_NB</category>
</item>
<item>
<title>Actions to do</title>
<link>http://yoursite/wfgen/...</link>
<description>10</description>
<category>ACTION_TODO_NB</category>
</item>
</channel>
</rss>Des styles personnalisés peuvent être créés et déployés sur le serveur en suivant la structure suivante :
\wfgen\App_Data\Templates\Forms\[langue]\[nom du dossier]\css\[nom du style].css
📌 Exemple
\wfgen\App_Data\Templates\Forms\Fr\MonEntreprise\css\MonStyle.css
L'Éditeur d’apparence vous permet de personnaliser l'apparence des éléments de formulaire individuels ainsi que d'autres options. Vous pouvez changer l'apparence des en-têtes et pieds de page, les champs et leurs libellés, les boutons de radio et cases à cocher, et les boutons Envoyer et Enregistrer en brouillon.
Vous pouvez utiliser l'Éditeur d'apparence en mode Express ou Avancé.
Pour éditer en mode Express, passez la souris sur l'élément et une barre d'outils s'affichera dans laquelle vous pouvez changer l'apparence du texte et la taille du haut de page. (Si l'élément comprend plusieurs champs, des barres d'outils s'afficheront dans les positions correspondantes.) Vous pouvez aussi changer la largeur des libellés et des champs.
Le mode Avancé propose de plus amples options. Pour afficher le menu du mode Avancé, passez la souris sur l'élément pour afficher la barre d'outils Express, puis cliquez sur l'icône crayon.
Texte vous permet de modifier l'apparence du texte, l'alignement et l'espacement entre les mots. Disposition vous permet de modifier la largeur et le rembourrage de l'élément. Bordures vous permet d'ajouter des bordures et en modifier l'apparence. Disposition du conteneur vous permet de régler les marges du haut, de gauche et de droite du conteneur.
Vous pouvez également ajouter des images aux en-têtes et aux corps des sections :
URL de l'image de fond : L'URL de l'image à afficher
Répétition de l'image définit si/comment l'image sera répétée :
Aucune répétition : l'image ne sera pas répétée
Répétition : l'image sera répétée à la fois verticalement et horizontalement (valeur par défaut)
Répétition x : l'image sera répétée horizontalement seulement
Répétition y : l'image sera répétée verticalement seulement
Position de l'image "x" aligne l'image à gauche, au centre horizontal, ou à droite
Position de l'image "y" aligne l'image en haut, au centre vertical, ou en bas
Depuis l'onglet Appliquer sur... vous pouvez spécifier les éléments auxquels vous désirez appliquer les paramètres d'apparence personnalisés.
Pour appliquer vos paramètres d'apparence personnalisés et fermer le menu du mode Avancé, cliquez sur l'icône encoche. Pour annuler les changements et fermer le menu, cliquez sur l'icône x.
L'écran Comportement permet de définir visuellement et à l’aide de simples clics le comportement des sections et des champs du formulaire pour chacune des actions du workflow.
Pour activer la vue interactive du workflow et définir le comportement du formulaire cliquez sur Comportement dans la barre d'outils.
Pour définir le comportement des sections et des champs du formulaire au niveau d’une action, cliquez sur l’action souhaitée au niveau de la vue interactive du workflow.
Une fois l’action sélectionnée, les paramètres Requis, Lecture seule et Caché s’activent à l’écran sous forme de bouton cliquable pour chaque section et champ du formulaire.
Pour définir le comportement du formulaire au niveau des autres actions du workflow, cliquez sur une autre action via la vue interactive et répétez l’opération précédente selon le comportement souhaité.
Sections
Requis
Lecture seule
Caché
Toutes les sections
✔️
✔️
✔️
Champs par défaut
Requis
Lecture seule
Caché
Pièce jointe (contrôle FileUpload .NET standard)
✔️
✔️
✔️
Pièce jointe (contrôle WorkflowFileUpload)
❌
✔️
✔️
Case à cocher
* Sauf dans les conditions de champs.
L’écran Correspondance permet de définir visuellement et à l’aide de simples clics ou de boîtes de dialogue les valeurs par défaut (données en entrée) et/ou les données qui seront stockées par le workflow (données en sortie) des champs du formulaire pour chacune des actions du workflow.
Pour afficher la vue workflow interactive et gérer les correspondances du formulaire, cliquez sur Correspondance dans la barre d'outils.
Lorsque l'action est sélectionnée, les boutons Valeur d'entrée et Valeur de sortie seront activés pour chaque section du formulaire.
Une valeur par défaut va alimenter automatiquement un champ lors de l’affichage du formulaire suite au lancement d’une action. Ces valeurs par défaut peuvent être de plusieurs types.
Texte saisi manuellement
Une macro sélectionnée dans la liste des macros disponibles
Une donnée du workflow sélectionnée dans la liste des données
Pour définir les valeurs d'entrée par défaut des champs du formulaire au niveau d’une action, cliquez le bouton Valeur d'entrée du côté droit du champ.
Dans la boîte de dialogue qui apparaît, définissez la valeur par défaut du champ en saisissant un texte dans la zone Texte, en sélectionnant une macro dans la liste déroulante Macro ou en sélectionnant une donnée du processus dans la liste déroulante Donnée puis cliquez sur la coche en haut à droite pour enregistrer.
Pour définir les valeurs par défaut des autres champs du formulaire au niveau de chacune des actions du workflow, cliquez sur une autre action via la vue interactive et répéter l’opération précédente.
Pour définir les données du formulaire qui seront stockées au niveau d’une action, cliquez sur l’action souhaitée au niveau de la vue interactive du workflow.
Les champs dont la valeur a été envoyée sont alors automatiquement déclarés dans l’onglet Données de la définition du processus et seront exploitables :
Dans les conditions de transitions du workflow
Dans l'affectation d'une action, pour définir le délai d'action et le contenu des notifications
Dans les fonctionnalités de suivi et de statistiques (reporting)
Pour envoyer la valeur d’un champ du formulaire et par conséquent la stocker en donnée du processus, cliquez sur Valeur de sortie du côté droit de chaque champ concerné.
Les champs dont la valeur a été envoyée sont alors automatiquement déclarés dans l’onglet Données de la définition du processus et seront exploitables dans les conditions de transitions du workflow, les fonctionnalités de suivi et de statistiques (reporting), etc...
Pour définir les données stockées au niveau de chacune des actions du workflow, cliquez sur une autre action via la vue interactive et répéter l’opération précédente.
Pour activer la fonctionnalité Approbation rapide sur les actions de validation, cliquez Activer l'approbation rapide depuis l'onglet Approbation rapide. Vous pourrez alors définir des mots-clés d'approbation par email et activer les commentaires.
Nom complet
Filtre sur le nom affiché du groupe
Nom distinctif
Filtre sur le nom distinctif du groupe
Identifiant système
Filtre sur l’identifiant système du groupe
Teste
Teste de la syntaxe de la requête et du nombre d’utilisateurs
Adresse email du groupe
Code groupe
Code du groupe
Nom affiché
Nom affiché du groupe
Nom distinctif
Nom distinctif du groupe
Identifiant système
SID du groupe
Utilisateur(s)
Nombre d’utilisateurs associés au groupe
Un lien permet d’afficher les utilisateurs correspondants.
Synchronisé
Détermine si le groupe est synchronisé

L’application de workflow GETUSERSFROMDIR permet la récupération d’une liste de noms d’utilisateurs, d’une liste d’emails ou d’une liste des IDs utilisateur. Ces listes s’obtiennent via une action automatique WorkflowGen qui exécute des requêtes SQL sur la base de données WorkflowGen. Elle peut être utilisée pour les notifications automatiques ou pour définir (filtrer) les utilisateurs d’une action d’un processus WorkflowGen.
Le caractère x : Le caractère x dans certains noms de paramètres signifie qu’il peut exister plus d’une instance du paramètre. Par exemple, QUERYx_CMD signifie qu’il peut-y avoir QUERY1_CMD, QUERY2_CMD, QUERY3_CMD etc...
Action : Vous devez créer une action WorkflowGen de type GETUSERSFROMDIR pour utiliser cette application.
Voici les champs et macros disponibles pour les requêtes créées dans les paramètres QUERYx_CMD. Ils peuvent être utilisés dans les conditions de ces requêtes afin de filtrer leurs résultats.
Cet exemple retourne une liste des noms d’utilisateur des utilisateurs de la province du Québec :
Cet exemple retourne une liste des noms d’utilisateur des utilisateurs dont l’adresse email termine par advantys.com :
Cet exemple retourne une liste des noms d’utilisateur des utilisateurs appartenant au groupe de développement :
QUERY1_CMD : Exécution d’une requête SQLPour lancer une requête SQL vous devez ajouter le paramètre (IN) QUERY1_CMD à l’action. Si le paramètre est vide ou inexistant l’opération ne sera pas exécutée.
Cet exemple retourne la liste des utilisateurs de la ville de Montréal dans le paramètre RESULT_LIST :
RESULT_LIST / QUERYx_RESULT_LIST : Capture du résultat des requêtesPour récupérer le résultat de toutes les requêtes (liste des utilisateurs au format chaîne de caractères) vous devez ajouter le paramètre (OUT) RESULT_LIST à l’action. Pour récupérer le résultat individuel par requête vous devez ajouter le paramètre (OUT) QUERYx_RESULT_LIST pour chaque requête.
Cet exemple retourne la liste des utilisateurs de Montréal, Toronto et New York dans le paramètre RESULT_LIST. QUERY1_RESULT_LIST contient la liste des utilisateurs de Montréal, QUERY2_RESULT_LIST contient la liste des utilisateurs de Toronto et QUERY3_RESULT_LIST contient la liste des utilisateurs de New York :
QUERY1_DIR : Définition de l’annuaireVous pouvez définir l’annuaire des utilisateurs sur lequel vous voulez que porte la requête. Vous devez ajouter un paramètre (IN) QUERY1_DIR dans l’action. Si ce paramètre est NULL ou n’existe pas l’annuaire par défaut est WORKFLOWGEN (ou l’annuaire défini comme défaut par l’administrateur).
Cet exemple retourne la liste des noms d'utilisateur des utilisateurs de l’annuaire VotreSociété dans le paramètre RESULT_LIST :
QUERYx_CMD : Utilisation de plusieurs requêtesVous pouvez ajouter plusieurs requêtes dans la même action WorkflowGen et récupérer les résultats dans une liste complète ou dans une liste par requête. Vous devez ajouter le paramètre (IN) QUERYx_CMD dont x est le numéro de la requête. Vous devez ajouter les paramètres (OUT) QUERYx_RESULT_LIST pour récupérer les résultats de chaque requête.
Cet exemple retourne la liste des noms d'utilisateur des utilisateurs de Montréal de l’annuaire WORKFLOWGEN dans le paramètre (IN) QUERY1_RESULT_LIST, la liste des noms d'utilisateur des utilisateurs de Montréal de l’annuaire INTRANET dans le paramètre (IN) QUERY2_RESULT_LIST et la liste complète des noms d'utilisateur des deux requêtes dans le paramètre (IN) RESULT_LIST :
QUERYx_TOP : Définition du nombre maximum d’enregistrements du résultatVous pouvez spécifier le nombre maximum d’enregistrements retournés par les requêtes en ajoutant le paramètre (IN) QUERYx_TOP à l’action. Cette requête ne sera pas capable de retourner plus de résultats que le nombre défini dans ce paramètre.
Cet exemple retourne seulement les deux premiers noms d'utilisateur de cette requête :
Cet exemple retourne tous les noms d'utilisateur de cette requête :
QUERYx_DEFAULT_VALUE : Définition d’une valeur par défautVous pouvez définir une valeur par défaut à retourner pour les valeurs qui ne retournent pas de valeur. Vous devez ajouter un paramètre (IN) QUERYx_DEFAULT_VALUE à l’action.
Dans cet exemple, la requête ne retourne aucune valeur car la société définie n’existe pas. Ainsi le paramètre RESULT_LIST contiendra la valeur défaut1 :
RESULT_SEPARATOR : Définition d’un séparateurVous pouvez définir un caractère de séparation des résultats dans la liste retournée en ajoutant un paramètre (IN) RESULT_SEPARATOR à l’action. Le séparateur par défaut est , (virgule).
Pour cet exemple, la valeur retournée dans le paramètre RESULT_LIST est nom1***nom2***nom3 :
Cet exemple retourne la valeur nom1,nom2,nom3 :
RESULT_COUNT / QUERYx_RESULT_COUNT : Compteur du nombre d’enregistrements retournésVous pouvez récupérer le nombre d’enregistrements retournés par chaque requête ou par toutes les requêtes. Pour le nombre total d’enregistrements retournés par toutes les requêtes vous devez ajouter le paramètre (OUT) RESULT_COUNT à l’action. Pour le nombre d’enregistrements retournés par requête vous devez ajouter le paramètre (OUT) QUERYx_RESULT_COUNT à l’action.
L’exemple suivant retourne le nombre total d’enregistrements dans le paramètre RESULT_COUNT et le nombre d’enregistrements par requête (QUERY1 et QUERY2) dans les paramètres QUERY1_RESULT_COUNT et QUERY2_RESULT_COUNT :
Vous pouvez utiliser des paramètres dans les conditions SQL contenues dans le paramètre QUERYx_CMD. Vous devez ajouter des paramètres IN avec des noms différents des noms réservés suivants :
QUERYx_CMD
QUERYx_DIR
QUERYx_TOP
Vous pouvez alors appeler ces paramètres dans la condition en les préfixant par le caractère @ (arobase).
Cet exemple retourne la liste des noms d'utilisateur des utilisateurs de Montréal de l’annuaire WORKFLOWGEN :
N’oubliez pas que le nom du paramètre utilisé dans la condition doit être le même que celui défini dans l’action WorkflowGen.
QUERYx_CMD : Utilisation des macros dans les conditions des requêtes SQLVous pouvez utiliser des macros dans les conditions SQL contenues dans les paramètres QUERYx_CMD. Vous devez simplement ajouter une macro disponible dans la condition.
L’exemple suivant retourne la liste des noms d'utilisateur des utilisateurs membres du groupe Dev venant de Montréal et associés à l’annuaire WORKFLOWGEN :
Il est important de respecter la syntaxe dans la liste des macros disponibles.
RESULT_LIST_EMAIL / QUERYx_RESULT_LIST_EMAIL : Capture des résultats des requêtes sous forme de liste d’emailsPour récupérer la liste des emails résultant de toutes les requêtes vous devez ajouter un paramètre (OUT) RESULT_LIST_EMAIL à l’action. Si vous voulez retrouver les emails par requête vous devez ajouter un paramètre (OUT) QUERYx_RESULT_LIST_EMAIL pour chaque requête.
Cet exemple retourne la liste des emails des utilisateurs de Montréal et Toronto dans le paramètre RESULT_LIST_EMAIL. Les paramètres QUERY1_RESULT_LIST_EMAIL et QUERY2_RESULT_LIST_EMAIL contiennent respectivement la liste des emails des utilisateurs de Montréal et de Toronto :
Vous devez ajouter une action corrective liée à l’action GETUSERSFROMDIR afin de gérer les erreurs d’exécution. Cette action corrective est de type manuel et est lancée sur erreur d’exécution. Ainsi vous devez ajouter cette exception sur la transition entre les deux actions. Vous trouverez ci-dessous la liste des erreurs les plus fréquentes retournées par l’application.
Il existe une constante GetUsersFromDirMaxResultNb dans le fichier web.config contenant le nombre maximum d’enregistrements pouvant être retourné par une requête. Cette limite réduit le risque d’une erreur d’expiration d’un temps limite qui peut se produire lorsque les résultats des requêtes sont trop nombreux. Si le nombre d’enregistrements retournés est supérieur à la valeur de cette constante un message d’erreur indiquant que les requêtes retournent trop d’enregistrements (« The queries returned too many records ») sera affiché.
Numéro de téléphone mobile
PAGER
Numéro de téléavertisseur
FAX
Numéro de fax
OFFICE
Numéro de bureau
DEPARTMENT
Département
COMPANY
Société
JOBTITLE
Fonction
PERSONALTITLE
Titre
EMPLOYEENUMBER
Matricule
EMPLOYEETYPE
Type d’employé
POSTALADDRESS
Adresse
ZIPCODE
Code postal
CITY
Ville
STATE
État/Région
COUNTRY
Pays
EXTATT_1
Extended attribute 1
EXTATT_2
Extended attribute 2
EXTATT_3
Extended attribute 3
EXTATT_4
Extended attribute 4
EXTATT_5
Extended attribute 5
{ISMEMBER(groupname)}
Retourne les membres du groupe
QUERYx_RESULT_COUNTQUERYx_RESULT_LIST
RESULT_LIST
RESULT_COUNT
RESULT_SEPARATOR
Modifiez le nom de ce paramètre pour un nom différent de ceux réservés par WorkflowGen pour les paramètres.
Les requêtes retournent trop d’enregistrements (The queries return too many records)
Ajouter des conditions dans les paramètres QUERYx_CMD pour filtrer les résultats.
Le paramètre « (nom du paramètre) » doit avoir une valeur (The parameter "parameter name" must have a value)
Vérifiez dans l’action de WorkflowGen si ce paramètre est vide.
Le paramètre « (nom du paramètre) » est obligatoire ("Parameter name" parameter is required)
Ajouter ce paramètre à l’action WorkflowGen.
Champs disponibles
Définition
LASTNAME
Nom
FIRSTNAME
Prénom
USERNAME
Nom d'utilisateur
EMAIL
Adresse email
PHONE
Numéro de téléphone
Macro disponible
Définition
{ISMEMBER(groupname)}
Retourne les membres du groupe
Message d’erreur
Solution
Cet annuaire n’existe pas (This directory does not exist)
Vérifiez que l’annuaire défini dans la requête est valide.
Contexte XML vide ou incorrect (XML context is empty or incorrect)
Vérifiez si l’application est réellement exécutée par WorkflowGen
Erreur de connexion à la base de donnée (Database connection error)
Vérifiez si la chaîne de connexion à la base de données dans le fichier « config.inc » est valide.
Erreur de requête (Query error)
Vérifiez si les champs ou les macros utilisés dans le paramètre QUERYx_CMD sont valides.
La requête retourne trop de valeurs (The queries return too many values)
Ajouter des conditions dans le paramètre QUERYx_CMD pour filtrer les résultats.
MOBILE
Le paramètre « (nom du paramètre) » possède le même nom qu’un nom de paramètre réservé par WorkflowGen. Vous devez modifier ce nom. (The parameter "(parameter name)" has the same name as a WorkflowGen reserved parameter. You must change the name.)
QUERY1_CMD: STATE = 'QC'
RESULT_LISTQUERY1_CMD: EMAIL LIKE '%ADVANTYS.COM'
RESULT_LISTQUERY1_CMD: {ISMEMBER(DEV)}
RESULT_LISTQUERY1_CMD: CITY = 'MONTREAL'
RESULT_LISTQUERY1_CMD: CITY = 'MONTREAL'
QUERY2_CMD: CITY = 'TORONTO'
QUERY3_CMD: CITY = 'NEW YORK'
QUERY1_RESULT_LIST
QUERY2_RESULT_LIST
QUERY3_RESULT_LIST
RESULT_LISTQUERY1_CMD: CITY = 'MONTREAL'
QUERY1_DIR: VotreSociété
RESULT_LISTQUERY1_CMD: CITY = 'MONTREAL'
QUERY1_DIR: WORKFLOWGEN
QUERY2_CMD: CITY = 'MONTREAL'
QUERY2_DIR: INTRANET
QUERY1_RESULT_LIST
QUERY2_RESULT_LIST
RESULT_LISTQUERY1_CMD: CITY = 'MONTREAL'
QUERY1_TOP: 2
RESULT_LISTQUERY1_CMD: CITY = 'MONTREAL'
RESULT_LISTQUERY1_CMD: COMPANY = 'SOCIETE_FICTIVE'
QUERY1_DEFAULT_VALUE = défaut1
RESULT_LISTQUERY1_CMD: CITY = 'MONTREAL'
RESULT_SEPARATOR: ***
RESULT_LISTQUERY1_CMD: CITY = 'MONTREAL'
RESULT_LISTQUERY1_CMD: CITY = 'NY'
QUERY1_DIR: WORKFLOWGEN
QUERY2_CMD: CITY = 'NY'
QUERY2_DIR: INTRANET
RESULT_LIST
RESULT_COUNT
QUERY1_RESULT_COUNT
QUERY2_RESULT_COUNTQUERY1_CMD: CITY = @PARAM1
PARAM1: MONTREAL
RESULT_LISTQUERY1_CMD: CITY = 'MONTREAL' and {ISMEMBER(Dev)}
RESULT_LISTQUERY1_CMD: CITY = 'MONTREAL'
QUERY2_CMD: CITY = 'TORONTO'
QUERY1_RESULT_LIST_EMAIL
QUERY2_RESULT_LIST_EMAIL
RESULT_LIST_EMAILLiens
Remarques
Nouvelle application
Affiche l’écran d’édition des applications en mode ajout
Rafraîchir
Rafraîchit la liste des applications
Filtrer sur *
Remarques
Nom
Filtre par nom d’application
Description
Filtre par description d’application
* Un filtre peut s’appliquer à une partie d’un champ.
Filtres externes
Remarques
Active uniquement
Affiche seulement les applications actives
Champs
Remarques
Nom
Identifiant unique pour l’application; doit être conforme à la nomenclature et limité à 30 caractères (champ obligatoire)
Description
Description de l’application limitée à 255 caractères (champ obligatoire)
Type
Types d’application possible :
Application Web
Assembly
Client non interactif
URL
URL relative ou absolue de l’application (champ obligatoire)
WSDL
L’URL de WSDL pour définir un service Web (si nécessaire); voir la section pour plus de renseignements sur les services Web avec WSDL.
* Requis seulement pour les procédures Web et les services Web.
Colonnes
Remarques
Ordre
Ordre d’affichage de l’application dans la liste
Nom
Nom de l’application (un lien permet d’afficher la fiche d’édition de l’application)
Description
Description de l’application
Actif
L’application est active
Utilisation
Nombre d’actions dans lesquelles l’application est utilisée
Colonnes
Remarques
Nom
Nom du paramètre de l’application
Type de donnée
Type de donnée du paramètre de l’application
Direction
Direction du paramètre de l’application
Obligatoire
Paramètre obligatoire
Par défaut
Paramètre optionnel affiché dans la liste des paramètres des actions en fonction de l’action actuelle
* Le lien de suppression est identifié par un x visible uniquement si l'application n'est pas utilisée par une action de processus.
Pour ajouter un paramètre, cliquez sur le lien Paramètres sur l'écran d'édition de l'application, puis cliquez sur Ajouter sur l'écran Liste des paramètres.
Champs
Remarques
Nom
Nom du paramètre de l’application (champ obligatoire)
Description
Description du paramètre de l’application (champ obligatoire)
Type de donnée
Type de donnée du paramètre de l’application :
Texte
Numérique
Date/Heure
Direction
Direction du paramètre de l’application :
IN : Entrée (Input)
OUT : Sortie (Output)
INOUT : Entrée/Sortie (Input/Output)
Obligatoire
Le paramètre est-il obligatoire ?
Oui (désactive la propriété par défaut)
Non (autorise la propriété par défaut)
Une application ne peut pas être supprimée si elle est utilisée dans un processus.
Un paramètre ne peut pas être supprimé si son application est utilisée dans un processus.
Ce type d’application vous permet de déclarer une méthode .NET d’une classe comme une application de workflow. C'est la solution la plus rapide pour développer une application de workflow personnalisée (par rapport à des services Web). La performance d'exécution est exceptionnelle car WorkflowGen instancie directement l’assembly sans communication réseau ou d'authentification du service Web.
Copiez un assembly .DLL dans le répertoire \wfgen\bin de WorkflowGen.
Dans le module d’administration, cliquez sur Applications, puis Nouvelle application.
Saisissez les informations suivantes :
Nom : SAMPLE_GET_STRING
Description : Retourne une chaîne de caractères avec ! (point d’exclamation)
Type : Assembly
Nom ou chemin de l’assembly : WorkflowAppSample
Cliquez sur Enregistrer.
Nom de la classe : Sélectionnez la class désirée WorkflowApp.Test
Méthode : Sélectionnez la méthode désirée GetString
Les paramètres suivants sont automatiquement générés :
IN : message (texte)
OUT : RETURN_VALUE (texte)
Vous pouvez maintenant utiliser votre application de workflow dans vos processus.
Ce type d’application vous permet de déclarer un proxy client d’un service Web WCF comme application de workflow.
Dans le module d’administration, cliquez sur Applications, puis sur Nouvelle application.
Saisissez les informations suivantes :
Nom : WCFSERVICE_SAMPLE_GET_STRING
Description : Retourne une chaîne de caractères avec ! (point d’exclamation)
Type : Service WCF
Nom ou chemin de l’assembly : WorkflowAppWCFSampleTest
Cliquez sur Enregistrer.
Nom de la classe : Sélectionnez la classe désirée workflowAppWCFSampleTest.ServiceClient
Méthode : Sélectionnez la méthode désirée GetString
Les paramètres suivants sont automatiquement générés :
IN : message (texte)
OUT : RETURN_VALUE (texte)
Vous pouvez maintenant utiliser votre application de workflow dans vos processus.
Nom : WCFSERVICE_SAMPLE_GET_STRING
WorkflowGen supporte les Web Services basés sur le standard SOAP. Les Web Services peuvent s’intégrer avec WorkflowGen sans programmation et être utilisés par des actions de processus. Vous pouvez prédéfinir des services web et les références en utilisant leurs fichiers WSDL (Web Services Description Language).
Il est nécessaire d’avoir un URL qui pointe au fichier de définition WSDL pour que les méthodes web se rendent disponibles à WorkflowGen. Suite à l’ajout du WSDL (dans le répertoire d’application WorkflowGen), la sélection d’un service web sera disponible, et les paramètres de l’application WorkflowGen sont générés automatiquement.
Les types de données des paramètres sont associés aux types des données WorkflowGen correspondants (numérique, texte, datetime, fichier). Tous les types XML complexes sont associés à une donnée de type fichier.
Les services de Web publics sont disponibles pour consomption publique. Pour voir un exemple WorkflowGen, suivez l'exemple ci-dessous.
Dans le module d’administration, créez une nouvelle application et définissez ce qui suit :
Nom
Description
Type : Service Web
Nom d’utilisateur : [un administrateur valide de WorkflowGen]
Mot de passe : [le mot de passe valide pour le nom d’utilisateur]
Définissez un URL service Web valide et son WSDL associé, et sauvez l’application.
📌 Exemple d'URL :
📌 Exemple de WSDL :
Choisissez la méthode à employer. Le WSDL définit quelles méthodes sont disponibles. Suite à la sélection d’une méthode Web, les paramètres associés seront automatiquement associés et l'application pourra être employée par les actions de processus.
Les services de Web privés sont des services de Web qui ne sont pas disponibles pour être réutilisés au public. Ils emploient généralement un URL qui exige de l'authentification interne à votre organisation. Pour voir un exemple WorkflowGen, suivez l'exemple ci-dessous.
Dans le module d’administration, créez une nouvelle application et définir ce qui suit :
Nom
Description
Type : Service Web
Nom d’utilisateur : [un administrateur valide de WorkflowGen]
Mot de passe : [le mot de passe valide pour le nom d’utilisateur]
Définissez un URL Web Service valide et son WSDL associé et sauvegardez l'application.
L'exemple ci-dessous décrit l'utilisation d'un service Web situé sur un site Web 2007 de SharePoint. Dans cet exemple, le Web Service s'appelle lists.asmx. Pour plus d'information, référez-vous à .
📌 Exemple d'URL :
📌 Exemple de WSDL :
Choisissez la méthode à employer. Le WSDL définit quelles méthodes sont disponibles. Suite à la sélection d’une méthode Web, les paramètres associés seront automatiquement associés et l'application pourra être employée par les actions de processus.
WorkflowGen créera quelques paramètres supplémentaires en mettant en référence un WSDL. Ces autres paramètres peuvent être employés en plus de ceux déjà définis dans le dossier de WSDL.
Les autres paramètres qui sont définis par WorkflowGen sont les suivants :
RETURN_VALUE : Si le service Web renvoie une valeur, WorkflowGen ajoutera automatiquement un paramètre OUT.
WFG_WS_URL : Spécifie un URL de service Web pour outrepasser l'URL prédéfini.
WFG_WS_USERNAME : Spécifie un nom d’utilisateur pour outrepasser le nom d’utilisateur prédéfini.
WFG_WS_PASSWORD : Spécifie un mot de passe pour outrepasser le mot de passe prédéfini.
Colonnes
Remarques
Ordre
Les flèches permettent la modification de l’ordre d’affichage du participant
Nom
Nom du participant (un lien affiche l’écran du participant) Le lien Ajouter permet d’associer un participant global ou de créer un nouveau participant spécifique au processus.
Description
Description du participant
Rôle
Rôle du participant dans le processus
Utilisateurs
Nombre d’utilisateurs potentiels du participant
Champs
Remarques
Portée
Information de portée : Processus ou Global
Nom [1]
Champ obligatoire
Identifiant unique pour le participant (même les globaux); doit être conforme à la nomenclature et limité à 30 caractères
Description [1]
Champ obligatoire
Description du participant limité à 255 caractères
Rôle [2]
Rôle du participant dans le processus
Demandeur
Acteur
Superviseur du processus [5]
Type de participant [1]
Champ obligatoire
Type de participant, définissant les associations possibles avec l’annuaire :
Personne
Liste de personnes
Liste de personnes avec coordinateur(s)
1. En mode lecture seule si le participant est de type global. 2. Un demandeur unique est autorisé par processus. 3. Accessible seulement aux participants de type Liste de personnes et Liste de personnes avec coordinateur. 4. Accessible seulement aux participants de type Liste de personnes avec coordinateurs. 5. Le participant superviseur ne doit pas être obligatoirement associé à une action.
Champs
Remarques
Nom *
Filtre par nom de personne
Disponible
Liste des associations possibles avec l’annuaire
Sélectionné
Liste des associations actuelles avec l’annuaire
* Visible seulement si associé à un utilisateur ou un coordinateur et lorsque le nombre d’utilisateurs dans la base est supérieur à la limite définie par l’administrateur du logiciel.
Un participant de type Personne est associé à un seul utilisateur.
Un participant de type Liste de personnes est associé à un ou plusieurs utilisateurs ou groupes ou annuaires.
Un participant de type Liste de personnes avec coordinateur est associé à un ou plusieurs coordonnateurs et à un ou plusieurs ou groupes ou annuaires.
Un participant ne peut pas être supprimé si la personne est associée à une action d’un processus.
Un participant global ne peut être associé qu’une seule fois avec un processus.
Il ne peut y avoir qu’un seul participant de rôle Demandeur dans un processus.
Il peut y avoir plusieurs participants de rôle Superviseur dans un processus, chacun avec sa propre configuration de sécurité et de suivi précisée dans la requête de portée limitée des superviseurs.
Les conditions suivantes s'appliquent lors de la modification du type de participant :
Personne à Liste de personnes ou Liste de personnes avec coordinateur(s) : Le participant ne doit pas être utilisé dans une action de processus.
Liste de personnes à Personne : Un seul utilisateur doit être associé au participant et le participant ne doit pas être utilisé dans une action de processus.
Liste de personnes à Liste de personnes avec coordinateur(s) : Ajoutez au moins un coordinateur.
Liste de personnes avec coordinateur(s) à Liste de personnes : Le participant ne doit pas être utilisé dans une action de processus où l'affectation est effectuée par le coordinateur.
La fonctionnalité de portée limitée des superviseurs permet aux participants de type Superviseur de processus le filtrage dynamique des suivis des demandes. Lorsqu'un utilisateur est associé à un participant de type Superviseur de processus avec une requête de portée limitée définie, sa page d’accueil de suivis, sa portlet de syndication RSS, ses résultats de recherche de suivis et ses rapports de statistiques seront filtrés d’après la requête. La requête est définie avec des conditions de critères dont la syntaxe est comparable aux conditions de critères SQL. De plus, la définition de la requête, plus spécifiquement les critères de filtrage, supporte l'utilisation les champs du profil d’utilisateur et les données de processus.
La requête de portée limitée des superviseurs peuvent être défini par les participants de type Superviseur de processus seulement. Pour activer la fonctionnalité de la portée limitée, il s’agit seulement de définir la requête pour un superviseur de process existant ou en créant un participant à nouveaux. La requête est limitée à un maximum de 255 caractères.
Si la requête non définie, le superviseur peuvent accéder tous les demandes et tous les actions d’un processus.
L’aide en ligne est disponible pour la requête de portée limitée des superviseurs en cliquant le lien Aide.
Cliquez le lien Test pour valider la syntaxe de la requête de portée limitée. Une sauvegarde d’une requête non valide n’est pas autorisée.
Voici une liste des champs et macros disponibles pour l’utilisation dans une demande de portée limitée des superviseurs. Les champs disponibles sont ceux disponibles dans le profil des utilisateurs. Les données d’un processus peuvent aussi être utilisées comme valeur de comparaison dans les critères de conditions pour que la requête puisse filtrer les résultats.
Champs disponibles
Définitions
LASTNAME
Nom
FIRSTNAME
Prénom
USERNAME
Nom d'utilisateur
EMAIL
PHONE
Téléphone
* Les macros supportent seulement du texte statique comme paramètre. Indiquer le nom d’un champ dans le processus n’est supporté. Par exemple :
Valide : {ISMEMBER(my_group_name)}
Non valide : {ISMEMBER(@GROUP_NAME)}
Cet exemple produit les demandes/actions pour les utilisateurs dans la province de Québec :
Cet exemple produit les demandes/actions pour les utilisateurs dont l’adresse email se termine avec advantys.com :
Cet exemple produit les demandes/actions pour les utilisateurs faisant parti du groupe MONGROUPE :
Cet exemple produit les demandes/actions dont le département est égal à la valeur d’une donnée de processus DEPT_DATA :
Pour comparer un texte à une donnée de demande, vous devez inverser l'ordre de comparaison, avec le texte en premier suivi de l'opérateur et la donnée.
Cet exemple produit les demandes/actions dont la ville de l’utilisateur est égale à la valeur d’une donnée de process MA_VILLE et le pays de l’utilisateur est égal à la valeur d’une donnée de process MON_PAYS :
Vous pouvez utiliser les opérateurs de comparaison standards SQL tels que =, !=, <>, IS NULL, NOT IS NULL, LIKE, NOT LIKE, etc...
Pour une meilleure compatibilité, il est recommandé d’utiliser les opérateurs standards qui sont supportés par la base de données hébergeant WorkflowGen.
Cet exemple produit les demandes/actions des utilisateurs qui ne sont pas situés à Montréal :
CITY <> 'MONTREAL'
Vous pouvez utiliser les opérateurs standards de SQL tels que AND et OR pour combiner plusieurs critères de conditions jusqu’à un maximum de 255 caractères. Il est fortement recommandé d’utiliser des parenthèses pour logiquement enclore plusieurs critères ensembles.
Cet exemple produit les demandes/actions dont l’utilisateur est situé au Canada, plus précisément soit à Toronto ou à la valeur contenue dans la donnée du processus CITY_DATA :
Les valeurs texte utilisé dans les critères de conditions doivent être comprises entre apostrophes. Les guillemets ne sont pas supportés comme délimiteurs mais sont valide comme valeur de critère. Les caractères de remplacement tels que %* et _ peuvent être utilisé avec l’opérateur LIKE.
Cet exemple produit les demandes/actions dont le nom débute avec AN :
Vous pouvez utiliser les données du processus dans les critères de conditions pour filtrer les demandes dynamiquement car la valeur des données peuvent différer d’une demande à l’autre. Vous devez tout simplement faire appel aux données de processus et les préfixer avec le caractère @ (a-commercial).
Cet exemple renvoie les demandes/actions dont la société de l’utilisateur est égale à la valeur de la donnée de processus DATA1 :
(DATA1 est utilisé comme exemple; n’importe quelle donnée de processus peut être utilisée.)
Vous pouvez aussi utiliser des macros dans les critères de conditions des requêtes. Vous devez tous simplement ajouter une macro de la liste des macros disponibles à votre critère de conditions.
Cet exemple produit les demandes/actions dont l’utilisateur est membre du groupe Dev situé à Montréal.
Il est très important de respecter la syntaxe des macros disponibles dans la liste de macros.
La portée limitée est appliquée avec des opérateurs LIKE et/ou les caractères de substitution (%, _) dans les critères de conditions. La raison est due à la grande quantité d’information qui aura besoin d’être filtré par le moteur de workflow avant d’être affichée aux utilisateurs.
Nous suggérons de tester l’impact de la requête de portée limitée des superviseurs dans un environnement de développement avant de la mettre en production.
❌
✔️
✔️
Case à cocher – liste
❌
✔️
✔️
Case à cocher – liste verticale
❌
✔️
✔️
Monétaire
✔️
✔️
✔️
Date
✔️
✔️
✔️
Date heure
✔️
✔️
✔️
Liste déroulante
✔️
✔️
✔️
Tableau
✔️*
✔️
✔️
Tableau – Colonne
✔️*
❌
❌
Libellé
❌
❌
✔️
Liste
✔️
✔️
✔️
Numérique
✔️
✔️
✔️
Mot de passe
✔️
✔️
✔️
Bouton radio
❌
✔️
✔️
Bouton radio – liste
✔️
✔️
✔️
Bouton radio – liste verticale
✔️
✔️
✔️
Monétaire – lecture seule
❌
❌
✔️
Date – lecture seule
❌
❌
✔️
Date heure – lecture seule
❌
❌
✔️
Numérique – lecture seule
❌
❌
✔️
Texte – lecture seule
❌
❌
✔️
Texte multi-lignes
✔️
✔️
✔️
Texte
✔️
✔️
✔️

STATE = 'QC'EMAIL LIKE '%ADVANTYS.COM'{ISMEMBER(MONGROUPE)}DEPARTMENT = @DEPT_DATACITY = @MA_VILLE AND 'CANADA' = @MON_PAYSCOUNTRY = 'CANADA' AND (CITY = 'TORONTO' OR CITY = @CITY_DATA)LASTNAME LIKE 'AN%'COMPANY = @DATA1CITY = 'MONTREAL' and {ISMEMBER(Dev)}Procédure Web Asynchrone
Service WCF
Service Web
Webhook entrant
Nom d’utilisateur *
Nom d’utilisateur utilisé si une authentification est demandée pour accéder à l’URL de l’application
Mot de passe *
Mot de passe utilisé si une authentification est demandée pour accéder à l’URL de l’application
Encodage
Type d’encodage des données utilisé lors du retour de l’application vers WorkflowGen :
Par défaut (application/x-www-form-urlencoded)
Upload (multipart/form-data)
application/xml; charset=UTF-8
Paramètres
Paramètres de l’application (un lien permet d’afficher la fiche d’édition des paramètres)
Application par défaut
L’application est celle par défaut si l’option est sélectionnée
Actif
L’application active si l’option est sélectionnée
Schéma XML
Choisissez le type de Schéma XML entre ADO recordset ou WorkflowGen
Schéma embarqué
Le Schéma sera incorporé au XML si l’option est sélectionnée
Suppression *
Lien permettant la suppression du paramètre de l’application
Défaut
Le paramètre est affiché dans la liste des paramètres de l’action de l’application actuelle si cette option est sélectionnée
Utilisateur(s)
Liste des utilisateurs associés au participant
Un lien permet l’ajout ou la suppression des utilisateurs.
Groupe(s) [3]
Liste des groupes associés au participant
Un lien permet l’ajout ou la suppression des utilisateurs
Annuaire(s) [3]
Liste des annuaires associés au participant
Un lien permet l’ajout ou la suppression des annuaires
Coordinateur(s) [4]
Liste des coordinateurs associés au participant
Un lien permet l’ajout ou la suppression des coordinateurs.
Suivi graphique
Autorise les utilisateurs associés au participant à visualiser le suivi graphique des demandes du process et l’aide graphique du processus depuis le portail d’utilisateur
Permissions pour superviseurs
Réaffecter les actions en cours
Annuler les demandes en cours
Accéder aux statistiques
Permissions pour commentaires
Aucune : La liste des commentaires ne sera pas accessible aux utilisateurs du participant
Lire : Les utilisateurs du participant peuvent accéder à la liste des commentaires en lecture
Lire + Écrire : Les utilisateurs du participant peuvent consulter et envoyer de nouveaux commentaires.
✏️ Note : Les superviseurs du processus auront toujours les permissions de lecture et écriture.
Requête (Aide)
La fonctionnalité de portée limitée des superviseurs permet aux participants de type « Superviseur de processus » le filtrage dynamique des demandes et des actions
Un lien pour effectuer un test est disponible pour valider la syntaxe de la requête.
MOBILE
Portable
PAGER
Téléavertisseur
FAX
Fax
OFFICE
Bureau
DEPARTMENT
Département
COMPANY
Société
JOBTITLE
Fonction
PERSONALTITLE
Titre
EMPLOYEENUMBER
Matricule
EMPLOYEETYPE
Type d’employé
POSTALADDRESS
Adresse postale
POSTALCODE
Code postal
CITY
Ville
STATE
État/Région
COUNTRY
Pays
EXTATT_1
Champ personnalisé 1
EXTATT_2
Champ personnalisé 2
EXTATT_3
Champ personnalisé 3
EXTATT_4
Champ personnalisé 4
EXTATT_5
Champ personnalisé 5
Macros disponibles
Définitions
{ISMEMBER(groupname)} *
Membre du groupe groupname
{ISMANAGER(username)} *
Responsable de l’utilisateur username
{ISSTAFFMEMBER(username)} *
Collaborateur de l’utilisateur username
http://quickstarts.asp.net/QuickStartv20/webservices/Samples/MathService/vb/Server/MathService.asmxhttp://quickstarts.asp.net/QuickStartv20/webservices/Samples/MathService/vb/Server/MathService.asmx?WSDLhttp://myspsserver/_vti_bin/lists.asmxhttp://myspsserver/_vti_bin/lists.asmx?WSDL


L’application de workflow XMLTODATABASE vous permet d’exporter les données depuis un document XML vers une ou plusieurs bases de données. C’est une application asynchrone qui ne nécessite pas d’action d’un utilisateur. La configuration des transactions SQL est effectuée via un fichier XML qui active les requêtes SQL sur des sources de données ODBC ou OLEDB.
Le moteur WorkflowGen appelle l’application XMLTODATABASE avec le contexte et les paramètres afin d’obtenir les éléments suivants :
Le document XML contentant les données à exporter
Le fichier de transaction contenant :
Les informations de connexion à la base de données
Les informations de localisation des données dans le document XML contenant les données (en utilisant des XPath)
Après que XMLTODATABASE ait rassemblé toutes ces informations, elle est prête à exporter, et retourne ensuite le contexte à WorkflowGen afin que le workflow puisse continuer.
Le document de transactions XML spécifie les commandes SQL qui seront exécutées sur les bases de données. Il est utilisé pour deux fonctions principales: la connexion à la base de données et le mappage des champs de la requête aux champs du document de données XML. N'oubliez pas que le document de données XML (généralement nommé FORM_DATA) peut être construit de plusieurs façons. Pour cette raison, les XPath sont utilisés pour mapper les champs de base de données aux champs XML.
Toute activité XMLTODATABASE peut avoir un nombre illimité de bases de données et un nombre illimité de commandes par base de données. Cela signifie que l'exportation peut être effectuée vers plusieurs bases de données et que chaque base de données peut avoir plusieurs commandes.
transactiondatabasecommandweb.config :Il y a quatre possibilités différentes pour stocker la définition de la transaction d’une action de type XMLTODATABASE. Dans tous ces cas, la transaction doit être définie ainsi :
Pour trouver la définition de sa transaction une action de type XMLTODATABASE va effectuer une recherche dans l’ordre suivant :
Dans un paramètre nommé TRANSACTIONS_TEXT.
Dans un fichier dont le chemin est dans un paramètre nommé TRANSACTIONS_FILE.
Dans un fichier nommé MyTransaction.xml placé dans le dossier ..\App_Data\Files\XmlToDatabase.
L’ordre de priorité est donc :
Le paramètre TRANSACTIONS_TEXT.
Le paramètre TRANSACTIONS_FILE.
Le fichier MyTransaction.xml.
Le fichier de transaction commun nommé Transactions.xml se trouve dans le répertoire \wfgen\App_Data\Files\XmlToDatabase. L’application XMLTODATABASE effectue une recherche dans ce fichier pour trouver votre transaction.
L’action de type XMLTODATABASE contient les paramètres suivants :
TRANSACTION : Direction IN, type texte
XML : Direction IN, type fichier
Si la transaction ne se trouve pas dans le fichier Transactions.xml, l’application XMLTODATABASE effectue une recherche pour un fichier XML du même nom que votre transaction. La transaction devrait être créée dans le fichier MyTransaction.xml.
L’action de type XMLTODATABASE a les mêmes paramètres que pour un fichier commun.
Si vous ne pouvez pas accéder au dossier ..\App_Data du serveur Web, ou si vous souhaitez inclure votre transaction dans la définition de votre processus (pour pouvoir l’exporter et le partager par fichier XPDL), vous pouvez écrire votre transaction dans une donnée de type fichier de votre processus. Pour ce faire :
Créez une donnée de type fichier contenant votre transaction.
Éditez votre action de type XMLTODATABASE puis ajoutez un nouveau paramètre nommé TRANSACTIONS_FILE et liez-le à la donnée précédemment créée.
Si vous ne pouvez pas accéder au dossier ..\App_Data du serveur Web, ou si vous souhaitez inclure votre transaction dans la définition de votre processus (pour pouvoir l’exporter et le partager par fichier XPDL), vous pouvez écrire votre transaction dans une donnée de type texte de votre processus.
Pour ce faire :
Créez une donnée de type texte contenant votre transaction.
Éditez votre action de type XMLTODATABASE puis ajoutez un nouveau paramètre nommé TRANSACTIONS_TEXT et liez-le à la donnée précédemment créée.
Vous pouvez indiquer à l’application la liste des champs qui doivent avoir un format date ou numérique.
Les paramètres supplémentaires suivants peuvent être utilisés dans les actions qui utilisent XMLTODATABASE:
Les champs de type date sont formatés comme ci-après : yyyy-mm-dd hh:MM:ss
Les champs de type numérique sont formatés comme ci-après : XXXX.XX
Règle : Tous les nœuds trouvés dans le document XML avec le nom REQUEST_DATE et le nœud spécifique situé à /MyData/MonExemple/Champ_Date seront formatés comme des dates.
Méthode : XML_FIELDS_DATE = //*/REQUEST_DATE, /MyData/MyExample/Date_Field
Les commandes SQL peuvent être exécutées dans des transactions. Si des erreurs interviennent, un « rollback » est exécuté et l’état initial de la base de données est restauré. La valeur de l’attribut transaction du nœud database doit être réglée sur yes.
Si la transaction agit sur plusieurs bases de données, l’exécution des commandes sera multi-transactionnelle : si une erreur intervient dans une commande d’une des bases de données, une restauration générale sera exécutée sur la transaction en question.
Les transactions peuvent être testées avant d’être lancées sur les bases de données. La valeur de la constante XmlToDatabaseTestMode dans le fichier de configuration doit être réglée sur Y.
Si le paramètre XmlToDatabaseEnableTrace dans le fichier web.config du service Web est réglé sur Y, un fichier de log sera généré dans le répertoire \wfgen\App_Data\LogFiles\XmlToDatabase.
Les entrées du log sont au format suivant :
Date; [Database name;] Transaction name; SQL query; Execution result
Les valeurs execution result sont :
Si la requête a été exécutée avec succès : OK
Si une erreur est intervenue : ERROR : code erreur – description
Les erreurs suivantes peuvent intervenir lors de l’exécution des transactions :
Structure du fichier XML :
Le nœud command pourrait ressembler à ceci :
La balise XPATH: dans la requête sera remplacée par /data/ qui est la valeur de l’attribut XPath.
La balise PARAM: est utilisée pour identifier un paramètre WorkflowGen à la place d’utiliser un champ XML.
Voici un exemple plus complexe utilisant la propriété loop.
Structure du fichier XML :
Le nœud command pourrait ressembler à ceci :

La fonctionnalité d’Approbation à distance permet à l’utilisateur d’effectuer ses actions d’approbation par email, comme une alternative au lancement du formulaire dans le Portail utilisateur WorkflowGen.
L’Approbation à distance est une option facultative pour une action d’approbation standard dans un processus WorkflowGen. Elle est intégrée dans l’action d’approbation d’un formulaire qui lance une notification à un utilisateur de manière asynchrone depuis le moteur de notification WorkflowGen.
Les utilisateurs peuvent toujours approuver les demandes par le procédure d’approbation standard depuis le formulaire. Le système récupéra le résultat dans l’ordre d’arrivée et complétera l’action. Aucune action additionnelle n’est requise dans le processus du design de workflow.

Dans un fichier nommé Transactions.xml placé dans le dossier ..\App_Data\Files\XmlToDatabase.
Le fichier Transactions.xml.
L’opération de « commit » n’a pas réussie.
Erreur lors de l’ouverture du fichier de log (Error while opening log file)
Le fichier de log ne peut pas être ouvert.
Le paramètre TRANSACTION est manquant (The TRANSACTION parameter is missing)
Le paramètre obligatoire TRANSACTION a une valeur nulle ou n’est pas défini.
La définition de la transaction n’a par été trouvée (The definition of the transaction has not been found)
Le fichier transactions.xml ne possède pas de transaction avec un nom d’attribut correspondant avec la valeur du paramètre TRANSACTION.
Instruction SQL invalide : le paramètre n’a pas été trouvé (SQL Instruction not valid: the parameter has not been found)
Le PARAM {nom du paramètre} n’a pas été trouvé.
Erreur d’analyse XML. L’attribut connectionstring est obligatoire. (XML parsing error. The connectionstring attribute is required)
L’attribut connectionstring n’a pas été spécifié dans le nœud de la base de données.
✏️ Note : Il est fortement recommandé d'utiliser un nom de connexion plutôt qu'une chaîne de connexion pour simplifier la gestion multi-environnements.
Le champ XML a été déclaré en tant que date mais sa valeur est invalide (The XML field was expected to be date, but its value is not valid)
Un des XPath indiqué dans XML_FIELDS_DATE fait référence à un champ qui n’est pas une date.
Le champ XML a été déclaré en tant que numérique mais sa valeur est invalide (The XML field was expected to be numeric, but its value is not valid)
Un des XPath indiqué dans XML_FIELDS_NUMERIC fait référence à un champ qui n’est pas numérique.
Le XPath n’est pas une expression XPath valide (The XPath is not a valid XPath expression)
Un des XPath indiqué dans le fichier de transaction n'est pas une expression XPath valide.
Le XPath passé en paramètre n’est pas une expression XPath valide (The XPath passed as a parameter is not a valid XPath expression)
Un des XPath dans les paramètres XML_FIELDS_DATE ou XML_FIELDS_NUMERIC n’est pas une expression XPath valide.
Erreur lors du chargement du fichier XML : fichier non trouvé (Error while loading the XML file: File was not found)
Le paramètre XML ne pointe pas vers un fichier XML.
Erreur de connexion à la base de données (Database connection error)
La connexion à la base de données ne peut pas être établie. Vérifiez la validité de la chaîne de connexion contenue dans l’attribut connectionstring du nœud de la base de données.
Erreur lors de l’exécution de la commande SQL (Error during the execution of the SQL command)
L’exécution de la commande SQL a échoué. Vérifiez la syntaxe de la commande SQL correspondante.
Erreur lors de l’exécution de la commande SQL loop (Error during the execution of the SQL loop command)
L’exécution de la commande SQL a échoué. Vérifiez la syntaxe de la commande SQL correspondante.
Instruction SQL non valide : le champ XML n’a pas été trouvé (SQL instruction not valid: the XML field has not been found)
Une des expressions XPath utilisée dans vos paramètres de la commande ne retourne aucun champ. Vérifiez la syntaxe de vos expressions XPath .
Le code culture pour le fichier XML dans le paramètre XML_LOCALE n’est pas valide (The culture code for the XML file in the param XML_LOCALE is not valid)
Vérifiez que le paramètre XML_LOCALE possède le bon format (ex. : fr-FR ou en-US)
Attribut
Description
name
Utilisé pour lier la transaction à l’action (activité) XMLTODATABASE
Dans WorkflowGen, un paramètre TRANSACTION (texte) devra être défini pour chaque action (activité) XMLTODATABASE. Le texte saisi dans le paramètre doit correspondre avec le nom de l’attribut de la transaction afin d’utiliser la bonne transaction pour la bonne action (activité).
Attribut
Description
name
Le nom de la base de données utilisée pour l’exportation
connectionstringname
Contient le nom d'une chaîne de connexion gérée de manière centralisée dans le fichier web.config de WorkflowGen (voir l'exemple ci-dessous)
connectionstring
Contient le ConnectionString pour la connexion à la base de données
provider
Utilisé pour informer XMLTODATABASE du espace de noms à utiliser pour accéder à la base de données (System.Dta.OleDb ou System.Data.Odbc)
✏️ Note : Cet attribut ne peut être utilisé qu'avec l'attribut connectionstring.
transaction
Utilisé pour informer XMLTODATABASE de l’utilisation ou non d’une transaction pour l’exportation vers une base de données (valeurs : yes ou no)
Attribut
Description
type
Utilisé pour informer XMLTODATABASE du type de commande exécuté
Les valeurs possibles peuvent être n'importe quelle commande SQL valide, sauf si elle appelle une procédure stockée. Dans ce cas, le type doit être PROCEDURE.
loop
Utilisé pour exécuter un lot de commandes en utilisant toutes les valeurs renvoyées par le XPath dans l'attribut xpath du nœud command (valeurs possibles: yes ou no)
Par exemple, si l’attribut loop est réglé sur yes et si un XPath dans la requête retourne 10 résultats, le XPath de la commande sera exécutée 10 fois (une fois pour chaque résultat). Si l’attribut loop est réglé sur no, la commande sera exécutée une seule fois avec le retour du premier nœud pour le XPath contenu dans la requête.
xpath
Utilisé pour factoriser une partie des XPath utilisés dans la requête.
Paramètre
Description
XML_FIELDS_DATE
Liste des champs de type date; doit contenir une liste d'expressions XPath séparées par des caractères ,(virgule)
XML_FIELDS_NUMERIC
Liste des champs de type numérique; doit contenir une liste d'expressions XPath séparées par des caractères , (virgule)
XML_LOCALE
Code de culture à utiliser pour formater les valeurs date et numériques (ex. : fr-FR ou en-US)
Erreur
Cause
Le paramètre du fichier XML est manquant (The XML file parameter is missing)
Le paramètre obligatoire XML a une valeur nulle ou n’est pas défini.
Le contexte XML ne peut pas être vide (The XML context cannot be empty)
L’application XMLTODATABASE doit recevoir un contexte de WorkflowGen; elle ne peut pas être utilisée sans être associée à un processus WorkflowGen.
Erreur d’analyse XML (1) (XML parsing error (1))
Le paramètre XML point vers un fichier XML invalide.
Erreur d’analyse XML (2) (XML parsing error (2))
Le fichier de transaction XML est un fichier XML invalide.
Erreur d’analyse XML. L’attribut du provider est obligatoire. (XML parsing error. The provider attribute is required.)
L’attribut provider de la base de données n’est pas présent dans la transaction.
Impossible de confirmer les transactions (Unable to commit transactions)
<transactions>
<transaction name="">
<databases>
<database name="" connectionstring="" provider="" transaction="">
<command type="" loop="" xpath="">
[REQUÊTE ICI]
</command>
</database>
</databases>
</transaction>
</transactions>...
<database name="MYDB" connectionstringname="MYDBSOURCE">
....
<connectionStrings>
<add name="MYDBSOURCE" connectionString="Data Source=MYSQLSERVER;Initial Catalog=MYDB;User ID=user;password=pwd;" providerName="System.Data.SqlClient"/>
<connectionString>
...<transactions>
<transaction name="MY_TRANSACTION">
...
</transaction>
</transactions>02/12/2020 4:41:23 PM; ACCESS; TEST_TRANS; INSERT INTO DATA ...; OK02/12/2020 4:41:24 PM; ACCESS; TEST_TRANS; DELETE FROM DATA2; ERROR: 1234-Table was not found<data>
<request_number>1</request_number>
<request_first_name>John</request_first_name>
<request_last_name>Smith</request_last_name>
</data><command type="INSERT" loop="no" xpath="/data/">
INSERT INTO EXAMPLE (request_number, request_first_name, request_last_name, request_date)
VALUES (
{XPATH:request_number},
{'XPATH:request_first_name'},
{'XPATH:request_last_name'},
{'PARAM:REQUEST_DATE'})
</command><Library>
<publishers>
<publisher>Grasset</publisher>
</publishers>
<AUTHORS>
<author id="100">
<name>Stephen King</name>
<description>Auteur de livres d’horreur</description>
<birth_date>1947-09-21</birth_date>
</author>
<author id="200">
<name>Jean Sologne</name>
<description>Description de l’auteur</description>
<birth_date>1972-06-06</birth_date>
</author>
</AUTHORS>
<BOOKS>
<book id="38">
<title>Titre du livre no°38</title>
<description>Description du livre n°38</description>
<author id="100"/>
</book>
<book id="39">
<title>Titre du livre n°39</title>
<description>Description du livre n°39</description>
<author id="200"/>
</book>
<book id="40">
<title>Titre du livre n°40</title>
<description /> // Insérera une valeur NULL automatiquement</span>
<author id=""/> // Insérera une valeur NULL automatiquement</span>
</book>
</BOOKS>
</Library><command loop="yes" type="INSERT" xpath="/Library/AUTHORS/">
INSERT INTO AUTHORS
([AUTHOR_ID],[AUTHOR_NAME],[AUTHOR_DESC],[AUTHOR_PUBLISHER])
VALUES ({XPATH:author/@id},
'{XPATH:author/name}',
'{XPATH:author/description}',
'{XPATH::/Library/publishers/publisher}’ )
</command>
<command loop="yes" type="INSERT" xpath="/Library/BOOKS/">
INSERT INTO BOOKS
([BOOK_ID],[BOOK_TITLE],[BOOK_DESCRIPTION],[BOOK_AUTHOR_ID])
VALUES ({XPATH:book/@id},
'{XPATH:book/title}',
'{XPATH:book/description}',
'{XPATH:book/author/@id}')
</command>Liens
Remarques
Infos
Affiche l’écran d’édition des processus en mode ajout
Participants
Affiche la liste des participants du processus
Données
Affiche la liste des données du processus
Formulaire
Affiche l’éditeur du formulaire
Workflow
Affiche la liste des actions du processus
Liens
Remarques
Plein écran
Affiche le contenu des différents onglets de la barre de menu en plein écran
Rapport
Affiche la documentation du processus et vérifie la validité de la définition du processus
Tester
Lance une nouvelle demande test pour ce processus
Champ
Remarques
Modèle
Sélection d’un modèle de workflow directement testable, modifiable et utilisable parmi la liste Par défaut ou dans la Librairie
Par défaut :
Deux niveaux d’approbation
Actions en parallèle
Approbation simple
Nom
Identifiant unique pour le processus; doit être conforme à la nomenclature et limité à 30 caractères (champ obligatoire)
Version
Le numéro de version du processus est en lecture seule et utilise un incrément automatique par défaut
Description
Description du processus limitée à 255 caractères (champ obligatoire)
Statut
Statut du processus :
Actif
En test
En construction (par défaut)
Fonctions
Remarques
Nouvelle version
Crée une nouvelle version lors du processus de construction avec la possibilité de créer une nouvelle version depuis un fichier de définition XPDL Le numéro de version trouvé dans le XPDL sera conservé si celui-ci n’est pas déjà utilisé pour le processus actuel, sinon l’incrément automatique est utilisé.
Dupliquer
Duplique la définition du processus vers un nouveau processus
Déplacer
Permet le déplacement vers un nouveau dossier
Exporter
Permet l’exportation du processus dans un fichier XPDL
Importer
Permet la création du processus depuis un fichier XPDL
Champs
Remarques
Type de demande
Type des demandes à supprimer :
Toutes
En test
Réelles
Statut des demandes
Statut des demandes à supprimer :
Toutes
En cours
Clôturée
Période d’exécution
Définit la période d’exécution des demandes à supprimer Des pictogrammes affichent un calendrier permettant de choisir la date visuellement.
Numéro des demandes
Numéro des demandes à supprimer (séparée par des virgules)
Seuls les gestionnaires et les administrateurs peuvent supprimer un processus. La suppression d’un processus induit la suppression des demandes associées.
Si le processus possède des demandes « réelles », seuls les administrateurs peuvent supprimer le processus. La suppression est seulement autorisée si le processus n’est pas utilisé en tant que sous-processus par une action d’un autre processus.
Les demandes associées à un processus en test peuvent seulement être supprimées par le gestionnaire de processus ou un administrateur.
Les demandes associées à un processus actif peuvent seulement être supprimées par un administrateur.
Si le processus est actif, les opérations sur celui-ci sont limitées aux suivantes :
Modification du statut du processus
Modification des catégories du processus
Modification du texte, du lien ou de l’email de support du processus et des actions
Suppression du processus
Création d’une nouvelle version du processus
Duplication du processus
Suppression des demandes associées
Modification des associations du participant avec les annuaires
Modification des attributs des données (sauf leurs sécurités)
Si le processus est archivé, les opérations sur celui-ci sont limitées aux suivantes :
Suppression du processus
Création d’une nouvelle version du processus
Duplication du processus
Suppression des demandes associées
Modification des associations du participant avec les annuaires
Modification des attributs des données (sauf leurs sécurités)
L’activation d’un processus induit l’archivage de la version active. Les demandes en cours utilisent la version du processus active au moment de leur création.
Seul l’administrateur WorkflowGen peut déplacer un processus d’un dossier à un autre. Ceci n’impacte pas les utilisateurs finaux, mais pourrait impacter quels gestionnaires de processus ou de dossier pourront accéder au processus.
Zone / Actions
Remarques
Disponibles
Catégories disponibles
Sélectionnées
Catégories sélectionnées
Ajouter ...
Lien vers un simple écran d’ajout des catégories
Cliquez >> ou double-cliquez sur un élément dans la liste Disponibles
Ajoute les catégories sélectionnées dans la liste Disponibles dans la liste Sélectionnées
Cliquez << ou double-cliquez sur un élément dans la liste Sélectionnées
Supprime les catégories de la liste Sélectionnées
Seul un administrateur WorkflowGen ou un gestionnaire de processus peuvent exporter et importer un processus dans un fichier au format XPDL.
Éléments
Description
Informations de processus
Toutes les informations générales du processus
Participants
Toutes les informations des participants
Données
Toutes les informations des données
Formulaire
Toutes les informations du formulaire
Workflow
Toutes les informations des action du workflow
Éléments
Description
Informations de processus
Toutes les informations générales du processus
Participants
Toutes les informations des participants
Données
Toutes les informations des données
Formulaire
Toutes les informations du formulaire
Workflow
Toutes les informations des actions du workflow
Éléments
Règles
Version du processus
Lors de la création d’un nouveau processus par importation d’un XPDL, le numéro de version du processus dans le XPDL sera utilisé.
Lors de la création d’un nouveau processus depuis la base de données WorkflowGen, le numéro de version du nouveau processus sera le dernier numéro de version disponible.
Lors de la création d’une nouvelle version d’un processus par importation d’un XPDL, le numéro de version du nouveau processus sera le numéro de version dans le XPDL si ce numéro n’a pas déjà été utilisé; sinon le dernier numéro de version sera automatiquement incrémenté pour le nouveau processus.
Catégorie du processus
Aucune catégorie ne sera ajoutée au processus si l’information catégorie n’est pas présente dans le fichier XPDL. Si la catégorie n’existe pas dans WorkflowGen elle ne sera pas ajoutée au processus.
Notification de clôture du processus au demandeur
La notification sera sélectionnée si la valeur de notification n’est pas présente dans le fichier XPDL ou si la valeur est définie comme Y. Si la valeur est définie comme N dans le fichier XPDL la notification est désélectionnée.
Portée du participant
Voir la prochaine section, .
Utilisateur(s) associé(s) au participant
Aucun utilisateur ne sera ajouté au participant si les informations des utilisateurs sont manquantes dans le fichier XPDL. Si l’utilisateur n’existe pas dans WorkflowGen il ne sera pas ajouté au participant.
Les règles d’importation des participants varient et dépendent de si les participants sont globaux ou par processus, si un participant avec le même nom existe déjà et si l’importation est effectuée par un administrateur ou par un gestionnaire de processus.
Si un participant global avec le même nom que le participant global que vous importez existe déjà :
Le participant global existant sera associé au processus que vous importez.
Les associations dans le fichier XPDL seront ajoutées au participant global existant si l’option Importer les associations dans les participants globaux existants est cochée; sinon, les associations dans le fichier XPDL seront ignorées.
✏️ Note : L’option Importer les associations dans les participants globaux existants est toujours disponible aux administrateurs, mais est disponible aux gestionnaires de processus seulement quand l’option Restreindre les gestionnaires de dossiers d'éditer les participants globaux est décochée dans la section Sécurité dans l’onglet Administration du Panneau de configuration.
Si un participant de processus avec le même nom que le participant global que vous importez existe déjà :
Le participant sera créé avec une portée processus.
Les associations dans le fichier XPDL seront ajoutées au nouveau participant de processus.
Si le participant n’existe pas :
Seuls les administrateurs peuvent créer des nouveaux participants globaux. (Les gestionnaires de processus ne peuvent créer que des participants de processus.)
Le participant sera créé avec une portée globale.
Les associations dans le fichier XPDL seront ajoutées au nouveau participant global.
Si un participant global (dans WorkflowGen) avec le même nom que le participant de processus que vous importez existe déjà :
Le participant global existant sera associé au processus que vous importez.
Les associations dans le fichier XPDL seront ajoutées au participant global existant si l’option Importer les associations dans les participants globaux existants est cochée; sinon, les associations dans le fichier XPDL seront ignorées.
✏️ Note : L’option Importer les associations dans les participants globaux existants est toujours disponible aux administrateurs, mais est disponible aux gestionnaires de processus seulement quand l’option Restreindre les gestionnaires de dossiers d'éditer les participants globaux est décochée dans la section Sécurité dans l’onglet Administration du Panneau de configuration.
Si un participant de processus (dans WorkflowGen) avec le même nom que le participant de processus que vous importez existe déjà :
Le participant sera créé avec une portée processus.
Si le participant n’existe pas :
Le participant sera créé avec une portée processus.
Cliquez sur Importer.
Parcourir l’explorateur de fichier vers le fichier XPDL.
Sélectionnez l’option Importer les nouveaux participants en tant que participants globaux.
Si les participants du processus exporté étaient à l'origine les participants globaux, ils seront toujours importés en tant que participants globaux.
Si les participants du processus exporté étaient à l'origine les participants spécifiques de processus, la sélection de cette option les importera en tant que participants globaux. Si laissé non sélectionné, ils seront importés en tant que participants spécifiques de processus.
Sélectionnez l’option Importer les associations avec l’annuaire pour importer les utilisateurs manquants dans les participants globaux existants.
Sélectionnez l’option Importer le numéro de version du processus pour importer le numéro de version.
Cliquez sur Importer pour commencer l’importation.
À partir de la version 7.21.0 de WorkflowGen, l'Approbation à distance supporte les délégations où les délégués peuvent effectuer des approbations par email.
La configuration de l’Approbation à distance est paramétrée sur l’onglet Approbation à distance dans le Panneau de configuration (voir Approbation à distance).
L’Approbation à distance nécessite des paramètres pour définir quels informations sont à fournir à l’approbateur à distance, et de quelle façon. Ces paramètres contrôlent aussi la façon de retourner les résultats de l’approbation ainsi que d’autres informations au système WorkflowGen.
L’Approbation à distance nécessite des paramètres additionnels à ajouter à une action EFORMASPX. Ces paramètres définissent les questions à poser à l’approbateur à distance et la correspondance de sa réponse avec l’action.
Pour réaliser avec succès une action de formulaire Web avec l'Approbation à distance, l'action doit avoir un paramètre IN FORM_DATA valide. Dans le cas d'une première action (lorsque les données du formulaire ne sont pas disponibles), FORM_DATA doit avoir un fichier XML modèle au format suivant :
Seules les réponses aux approbations et les informations de l’approbateur doivent être retournées via les paramètres d’Approbation à distance. Les autres paramètres qui passent les valeurs d’entrée et de sortie du formulaire Web demeurent inchangés.
Pour envoyer un email de notification à l’approbateur, une notification personnalisée doit être définie. Depuis l’onglet de notification d’une action d’approbation, ajoutez une notification additionnelle avec À faire comme événement, l’utilisateur auquel l’action est affectée comme destinataire et un gabarit d’email personnalisé avec les informations sur l’approbation. Cette notification personnalisée est la même que pour n’importe quelle autre action WorkflowGen.
Paramètre
Type
Direction
Description
FORM_DATA (obligatoire)
FILE
IN/OUT
Le paramètre d’entrée/sortie qui contient le fichier de données du formulaire WorkflowGen. Ceci est un paramètre par défaut pour les actions EFORMASPX.
FORM_ARCHIVE
FILE
OUT
L’Approbation à distance nécessite l’envoi de la donnée de processus FORM_ARCHIVE en tant que paramètre WorkflowGen afin de récupérer toutes les mises à jour des champs durant l’approbation. La direction du paramètre doit être OUT afin d’envoyer le contenu de l’archive mise à jour à WorkflowGen.
✏️ Notes :
Aucune mise à jour ne sera apportée au formulaire Web archivé si le paramètre FORM_ARCHIVE n’est pas défini dans l’action d’Approbation à distance.
Qx_KEYWORDS_n
Paramètre
Type
Direction
Description
KEYWORDS_BRACKETS
TEXT
IN
Pour répondre à une question d’Approbation à distance, il faut suivre une syntaxe pré-définie :
Q1: [réponse]
Les crochets ([ et ]) seront la valeur par défaut si ce paramètre n’est pas utilisé. Vous pouvez utiliser d’autres caractères à la place des crochets; par exemple, vous pouvez régler KEYWORDS_BRACKETS à ##* pour le format de réponse suivant :
Q1: #réponse#
✏️ Notes :
USER_NAME_FORMAT
TEXT
IN
Le nom complet de l’approbateur qui répond sera récupéré dans la base de données WorkflowGen. Le nom complet de l’approbateur sera retourné au contrôle de champ dans le formulaire Web si USER_NAME_FIELDNAME est défini.
Par défaut, le nom complet de l’utilisateur sera dans le format Firstname Lastname (Prénom Nom). Vous pouvez personnaliser ce format en utilisant les caractères de contrôle L (pour nom) et F (pour prénom). Par exemple :
Jean Dupont → F L
Dupont, Jean → L, F
Jean (Dupont) → F (L)
USER_NAME_FIELDNAME
L’Approbation à distance supporte trois types de questions d’approbation : choix multiples, questions avec des réponses numériques et questions avec des réponses textes à structure libre.
En général, l’Approbation à distance est utilisée pour fournir des questions d’approbations avec deux réponses possibles (par exemple, Oui et Non. Pour ce faire, trois paramètres principaux sont utilisés :
Qx_KEYWORDS_n : Ce paramètre contient une liste de mots-clés possibles (séparés par virgules) pour le choix n.
Qx_RESULT_n : Ce paramètre contient la réponse normalisée pour la choix n.
Qx_RETURN_FIELDNAME : Ce paramètre contient le nom de champ du formulaire Web qui contient la réponse normalisée finale pour la question x.
Comme il peut y avoir plus d’une question dans une action, la lettre x dans ces paramètres représente le numéro de la question. La lettre n à la fin représente le choix de réponse. Vous pouvez définir autant de mots-clés et de résultats que vous avez besoin.
Dans cet exemple, il y a deux questions O/N (oui/non) dans une action d’Approbation à distance :
Si l’approbateur répond o à la première question et rejeté à la deuxième, les réponses normalisées des questions 1 et 2 seront donc oui et refusé, respectivement.
Si vous devez définir plus de deux choix, vous devez ajouter une nouvelle combinaison de mots-clés et résultats. Par exemple :
Vous pouvez définir autant de combinaisons de mots-clés et de résultats que vous avez besoin.
L’Approbation à distance permet aussi des questions de type numérique et de type texte à structure libre.
Une question de type numérique nécessite les combinaisons de mots-clés et de résultats suivantes :
Qx_KEYWORDS_1=[0-9] ([0-9] est un mot-clé réservé aux questions de type numérique; il suffit d’utiliser Qx_KEYWORDS_1)
Qx_RETURN_FIELDNAME (le nom du champ du formulaire Web qui contient la réponse récupérée)
Une question de type texte à structure libre ne nécessite pas de mot-clé, seulement Qx_RETURN_FIELDNAME (le nom du champ du formulaire Web qui contient la réponse récupérée).
Il y a deux modes de réponse d’Approbation à distance : normal et rapide.
Dans le mode normal, un email d’Approbation à distance peut demander plus d’une question, nécessitant des réponses dans un format structuré.
Dans le mode rapide, le destinataire de l’email peut répondre à la première question sans aucun formatage requis. Le destinataire peut également inclure un commentaire en l’ajoutant à la deuxième ligne sous la réponse de la première question. Ce mode accepte une seule question, donc des questions autres que Q1_RETURN spécifiées comme paramètres d’action ne seront pas prises en compte.
Un email d’approbation contient le suivant :
Pour répondre à ces questions, il faudra répondre à l’email avec la syntaxe suivante :
Chaque réponse est précédée par Qx:, dont x représente le numéro de la question. De plus, les réponses sont encadrées dans des crochets afin d’indiquer le début et la fin de la réponse. De même, le commentaire a la même structure, mais est précédé par le mot réservé COMMENT:.
Seul un mot-clé pour la première question est requis, avec un commentaire facultatif. Dans l’exemple ci-dessous, la première ligne représente la réponse à la première question, et la deuxième ligne est le commentaire :
Une notification « à faire » personnalisée doit être définie afin d’être envoyée aux cessionnaires d’actions pour une action d’Approbation à distance. Ceci ressemble à la notification « à faire » par défaut d’une action EFORMASPX standard. L’email personnalisé utilise le système de notification de WorkflowGen afin de distribuer l’email d’approbation à un ou plusieurs approbateurs.
Afin d’éviter du pourriel ou la réception d’autres emails hasardeux dans la boîte de réception d’Approbation à distance, ainsi que pour s’assurer de l’identité de l’approbateur, une réponse valide à une demande d’Approbation à distance doit adhérer aux quatre conditions suivantes :
Le sujet de l’email ne peut être vide.
L’email de réponse doit avoir la même clé d’en-tête (« Thread-Index ») que celle configurée pour l’action de demande associée dans la base de données WorkflowGen.
L’adresse email de l’approbateur à distance doit correspondre à celle utilisée par WorkflowGen afin d’assurer que l’adresse de réponse appartienne à un utilisateur WorkflowGen valide.
L'approbateur à distance doit être un des utilisateurs assignés à l'action.
Les emails invalides seront automatiquement supprimés de la boîte de réception.
Voici un exemple d’un sujet email avec les identifiants de demande et action WorkflowGen :
Autorisation de dépenses requise #1374-4
Ici, Autorisation de dépenses est le sujet, 1374 est l’identifiant de la demande (précédé d’un carré) et 4 est l’identifiant de l’action (précédé d’un trait d’union).
Le sujet de l’email est défini dans la première ligne du gabarit d’email personnalisé, précédé de SUBJECT. Les identifiants de demande et d’action WorkflowGen peuvent être ajoutés au sujet avec les macros WorkflowGen <WF_PROCESS_INST_ID> et <WF_ACTIVITY_INST_ID>, respectivement.
L’Approbation à distance validera la réponse en vérifiant les identifiants de demande et action récupérés du sujet de l’email. Les conditions de validation 2 et 3 ci-dessus sont toujours applicables durant le processus de validation.
Il faut définir un email de notification personnalisé afin de distribuer les emails d’Approbation à distance aux approbateurs.
La création des notifications personnalisées suivent les mêmes règles que n’importe autre notification personnalisée WorkflowGen; tous les macros WorkflowGen sont supportées. Voir Notifications personnalisées pour plus de renseignements.
Les données de processus de type fichier peuvent être attachées à un email d’Approbation à distance afin que l’approbateur puisse accéder directement à n’importe quelle donnée de type fichier. Une macro spéciale peut être utilisée pour ajouter une donnée de type fichier à l’email :
<WF_PROCESS_INST_RELDATA_FILE.XXXXX>
Ajoutez cette balise au corps du texte de l’email, puis le fichier de la donnée XXXXX sera annexé à l’email comme pièce-jointe. Le gabarit ne sera pas traduit en texte dans le corps de l’email. Si plusieurs pièces-jointes sont requises, ajoutez cette balise plusieurs fois avec le nom de donnée correspondant.
Si une notification de retard doit être envoyée, ajoutez une notification additionnelle en spécifiant l’événement comme « en retard », utilisant le même gabarit d’email de notification.
L’Approbation à distance tente de traiter une réponse d’approbation comme si un approbateur a effectivement lancé une action d’approbation et soumis le formulaire Web. Les données du formulaire et les valeurs de paramètres d’actions sont mises à jour en conséquence. Donc, quand la prochaine action est lancée, WorkflowGen récupérera les données de formulaire de l’Approbation à distance et pourra afficher le résultat dans le formulaire Web.
Pourtant, afin de refléter le résultat de l’approbation dans les archives du formulaire, le contrôle du champ d’approbation doit être visible avant que l’action d’approbation à distance soit soumise. L’Approbation à distance met à jour l’archive du formulaire générée par l’action précédente en cherchant le contrôle du champ correspondant et ensuite en attribuant la valeur via JavaScript. Le formulaire Web ne sera pas rendu de nouveau. Par exemple, si un processus comprend deux actions, et que le champ d’approbation dans la première action est caché par défaut dans le formulaire Web, l’archive du formulaire générée par la première action ne contiendra pas le contrôle du champ d’approbation.
L’Approbation à distance ne remplira pas le résultat d’une approbation dans l’archive du formulaire bien que WorkflowGen peut toujours récupérer les données du formulaire les plus récentes ainsi que les valeurs des paramètres des actions.
Les champs d’Approbation à distance supportent seulement les contrôles CheckBoxList, RadioButtonList, ListBox et DropdownListBox. Les champs de commentaires d’Approbation à distance supportent seulement les contrôles TextBox et TextArea.
En considérant l’ajout de l’Approbation à distance dans une action, nous vous suggérons de :
Régler le champ d’approbation toujours visible mais en lecture seule dans l’action précédente.
Régler le champ d’approbation comme visible uniquement après que SubmitToWorkflow() ne soit appelé dans l’action précédente afin d’y ajouter le champ d’approbation sur la page de l’archive uniquement.
Utiliser CSS pour cacher le champ d’approbation dans l’action précédente.
L’Approbation à distance générera automatiquement des événements dans l’Observateur d’événements de Windows, ainsi que des fichiers de log détaillés dans le dossier WorkflowGen \App_Data. Par défaut, le fichier de log se trouve dans le dossier Web WorkflowGen DISQUE:\wwwroot\wfgen\App_Data\LogFiles\RemoteApproval.
Si vous avez configuré WorkflowGen pour utiliser une autre ApplicationDataPath (défini dans le fichier web.config), les fichiers de log se trouveront dans le chemin spécifié dans le fichier config. Par exemple, si ApplicationDataPath est réglé sur \SERVEUR_B\App_Data\, les fichiers log d’Approbation à distance seront créés dans \SERVEUR_B\App_Data\LogFiles\RemoteApproval.
Le nom du fichier de log est la date, au format suivant : AAAA-MM-DD.log.
Le fichier de log contient un résumé des activités, y compris les détails des problèmes techniques, et des informations sur les actions WorkflowGen clôturées depuis l’application d’Approbation à distance. Il y a cinq niveaux de détails :
0 – Désactivé : Aucun (aucun fichier de log ne sera créé)
1 – Messages généraux : Résumé des messages d’exécution seulement
2 – Messages d’erreur : Messages d’erreur d’exception seulement
3 – Messages généraux et messages d’erreurs : Résumé des messages d’exécution et messages d’erreur d’exception
4 – Détails complets pour déboggage (incluant l'Observateur d'événements) : Résumé des messages d’exécution et messages d’exception détaillés (y compris les logs de l’Observateur d’événements)
Le niveau 3 (messages généraux et messages d’erreurs) est recommandé car la taille des fichiers et des détails sont bien balancés.
Le niveau des détails du fichier log est réglé dans le Panneau de configuration du Module d’administration (voir Approbation à distance dans la section Panneau de configuration.
Le tableau ci-dessous présente des messages d’erreur possibles et leurs descriptions, qui se trouvent dans le fichier de log d’Approbation à distance.
Message d’erreur
Description
Socket Error: No such host is known.
L’application n’a pas pu se connecter au serveur de réception des emails. Vérifier le réglage de IncomingServerAddress.
Server Respond: ERR access denied.
Il y a une erreur dans le nom d’utilisateur du serveur de réception des emails. Vérifier les orthographes de IncomingServerUsername et IncomingServerPassword.
Socket Error: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond [server address]:[port number].
Le serveur email ne répond pas et s’est déconnecté. Des raisons possibles :
System Error: The token supplied to the function is invalid.
Sécurité de serveur email incorrecte possible. Vérifier MailServerSecurity.
Server Respond: ERR maildrop already locked.
L’email de réponse est verrouillé par le serveur email.


<?xml version="1.0" standalone="yes"?>
<NewDataSet>
<Table1>
<CURRENT_REQUEST></CURRENT_REQUEST>
</Table1>
</NewDataSet>Q1_KEYWORDS_1=oui,o,ok
Q1_RESULT_1=oui
Q1_KEYWORDS_2=non,n,refusé
Q1_RESULT_2=nonQ2_KEYWORDS_1=approuvé,approuver,ok
Q2_RESULT_1=approuvé
Q2_KEYWORDS_2=refusé,refuser,rejeté,rejeter
Q2_RESULT_2=refuséQ1_KEYWORDS_1=oui,o,ok
Q1_RESULT_1=oui
Q1_KEYWORDS_2=non,n,refusé,refuser
Q1_RESULT_2=non
Q1_KEYWORDS_3=modifier,plus d’info
Q1_RESULT_3=plusinfoQuel est votre choix ?
Question 1: O ou N
Question 2: O ou NQ1: [O]
Q2: [N]
COMMENT: [Demande approuvée.]O
Demande approuvée.FORM_ARCHIVE est requis pour les actions EFORMASPX uniquement.Seulement deux caractères (pour l’ouverture et la fermeture) sont permis.
Pour respecter la syntaxe, il ne faut pas mettre d’espace avant les deux points (:).
TEXT
IN
Voir la section Personnalisation des emails pour des informations sur ce paramètre.
Qx_RESULT_n
TEXT
IN
Voir la section Personnalisation des emails pour des informations sur ce paramètre.
Qx_RETURN_FIELDNAME
TEXT
IN
Le résultat du paramètre Qx_RESULT_n sera envoyé au nom du champ spécifié par ce paramètre.
✏️ Note : Aucun autre paramètre ne doit être défini dans une approbation à distance avec le suffixe _RETURN_FIELDNAME.
TEXT
IN
Les formulaires Web standard peuvent utiliser des macros WorkflowGen pour récupérer le nom complet de l’utilisateur assigné. Dans l’Approbation à distance, l’approbateur est défini basé sur la réception de la réponse à l’approbation; un paramètre spécifique est nécessaire pour retourner le nom de l’approbateur réel.
Créez ce paramètre pour spécifie l’identifiant de contrôle du champ qui recevra le nom de l’approbateur renvoyé. Seulement les contrôles du champ de type TextBox sont supportés.
USER_FIRSTNAME_FIELDNAME
TEXT
IN
Créez ce paramètre en définissant l’identifiant de contrôle du champ dans votre formulaire pour afficher le prénom de l’approbateur dans le profil d’utilisateur WorkflowGen dans la page d’archive du formulaire.
USER_LASTNAME_FIELDNAME
TEXT
IN
Créez ce paramètre en définissant l’identifiant de contrôle du champ dans votre formulaire pour afficher le nom de l’approbateur dans le profil d’utilisateur WorkflowGen dans la page d’archive du formulaire.
USER_TITLE_FIELDNAME
TEXT
IN
Créez ce paramètre en définissant l’identifiant de contrôle du champ dans votre formulaire pour afficher le titre de l’approbateur dans le profil d’utilisateur WorkflowGen dans la page d’archive du formulaire. Seuls les identifiants de contrôle des champs de type TextBox, RadioButtonList et DropDownList sont supportés.
COMMENT_FIELDNAME
TEXT
IN
Créez ce paramètre en définissant l’identifiant de contrôle du champ dans votre formulaire pour afficher les commentaires des approbateurs dans la page d’archive du formulaire. Seuls identifiants de contrôle des champs de type TextBox sont supportés.
✏️ Note : Vous pouvez spécifier l’identifiant de contrôle en saisissant la chaîne de texte ou en envoyant une donnée du processus seulement si la donnée contient l’identifiant de contrôle. Si aucun identifiant de contrôle n’est trouvé ou si l’identifiant est invalide, aucun nom ne sera affiché et ce paramètre ne sera pas pris en compte.
COMMENT_REQUIRED_RESULTS
TEXT
IN
Créez ce paramètre en définissant les résultats de l’approbateur qui nécessiteront un commentaire obligatoire. Le résultat de l’approbateur est représenté par le paramètre Qx_RESULT_n. Vous pouvez saisir une chaîne de texte séparé par virgules afin de spécifier plus d’un résultat nécessitant un commentaire.
📌 Exemple :
Q1_RESULT_2,Q2_RESULT_2,Q3_RESULT_1
Ici, les deuxièmes réponses aux questions 1 et 2 (Q1 et Q2) et la première réponse à la troisième question (Q3) nécessiteront des commentaires.
✏️ Notes :
Les commentaires obligatoires nécessitent le paramètre COMMENT dans l’action.
Tous les résultats nécessaires partagent le même paramètre COMMENT.
L’approbateur recevra un email de ré-approbation si un commentaire obligatoire est manquant.
QUICKAPPROVALMODE
TEXT
IN
Le mode rapide peut être activé ou désactivé par défaut pour toutes les actions d’Approbation à distance de façon globale dans le Panneau de configuration. Par contre, si le paramètre QUICKAPPROVALMODE est défini pour une action d’Approbation à distance particulière, ce défaut global sera passé outre.
✏️ Note : La seule chaîne de texte permise pour ce paramètre est Y ou N.
The request failed with HTTP status 401: Unauthorized.
Le nom d’utilisateur ou le mot de passe utilisés pour connecter à WorkflowGen est erroné.
wfgResponse Error: Remote reply for action (Req #xxxx) cannot be accepted. Action may have already been expired/opened/completed by webform.
L’application ne peut compléter l’action, possiblement à cause d’une erreur de connexion à WorkflowGen, ou bien l’action serait peut-être expirée, clôturée ou complétée dans le portail d’utilisateur de WorkflowGen.
Cannot clean up temp file ([FILENAME]) yet. It may be still in use.
L’application a fait le ménage des fichiers temporaires dans le dossier tmp tandis qu’un fichier soit toujours en service; dans ce cas, l’application sautera la suppression de ce fichier.
The response for Request #xxxx is in an incorrect format ([YOUR ANSWER]). An email has been sent.
Le formatage d’une réponse est incorrect, aucun mot-clé n’a été détecté dans le corps de l’email, ou le mot-clé est invalide. Vérifier aussi si le mode d’application est réglé à QuickApprovalMode.
Email subject does not indicate it is a Remote Approval reply; email has been removed from mailbox.
Un email reçu par le serveur ne contient pas le préfixe obligatoire « RE: » qui indique que l’email s’agit d’une réponse à une demande d’approbation à distance. Cet email sera automatiquement supprimé du serveur.
Error parsing request information or reading email header/content before processing reply.
Un email reçu par le serveur ne contient pas toutes les informations nécessaires, par exemple le thread-index ou les IDs de demande/action dans le sujet, qui sont requis pour identifier l’action WorkflowGen associé. Vérifier si le thread-index a été supprime de la configuration du serveur email, ou bien ajouter les IDs de demande/action au sujet de l’email de notification.
The response for Request #XXXX is missing a mandatory comment for answer ([YOUR ANSWER]). An email has been sent.
La réponse fournie nécessite un commentaire obligatoire. L’approbateur doit ajouter COMMENT: [YYYYYY] (ou YYYYY si QuickApprovalMode = Y) dans la réponse email. L’email sera automatiquement supprimé du serveur.
Client found response content type of ‘text/html; charset=utf-8’, but expected ‘text/xml’
Le service Web WorkflowGen API ne retourne pas les bonnes données XML. Vérifier que le dossier \ws est activé en tant qu’application IIS.
Applicative error + detail (level 4)
Cette erreur s’agit du détail d’exception qui détermine le source de l’erreur. Vérifier les configurations suivantes qui pourraient causer l’application à lancer une erreur applicative :
Demande simple
Librairie :
Demande de changement informatique
Demande de congés
Demande d’investissement
Demande de support
Demande de travaux
Demande d’habilitation informatique
Création d’un nouveau produit
Note de frais
Un modèle de workflow personnalisé peut être créé et déployé sur le serveur avec la structure de dossier et fichiers suivante :
\wfgen\App_Data\Templates\Processes\[langue]\[nom du dossier]\[nom du processus]v[x].xml
📌 Exemple :
\wfgen\App_Data\Templates\Processes \Fr\MonEntreprise\MON_PROCESSUSv1.xml
✏️ Note : Seuls les processus avec formulaire intégré sont supportés en tant que modèle de workflow.
Clôturée – annulée
Formulaire intégré
Activer l’éditeur de formulaire intégré
Sous-processus
Détermine si le processus peut être utilisé en tant que sous-processus par un autre processus, à partir d'un appel d'API ou en tant que processus autonome
Niveau d’accès
Champ obligatoire si l’option sous-processus est sélectionnée Si le processus a été déclaré en tant que sous-processus, vous pouvez choisir entre deux niveaux d’accès :
Privé : le processus peut seulement être instancié par un processus parent
Publique : le processus peut être exécuté manuellement depuis le module utilisateur ou instancié par processus parent ou une application externe
Catégories
Liste des catégories
Le lien Ajouter permet d'ajouter ou de supprimer des catégories du processus.
Délai de réalisation
Délai avant que le processus ne soit considéré comme en retard
Unités :
Années
Mois
Jours (prend en compte les jours ouvrés)
Heures (prend en compte les jours et heures ouvrés)
Minutes (prend en compte les jours et heures ouvrés)
Secondes (prend en compte les jours et heures ouvrés)
Vous pouvez choisir la manière dont le délai sera calculé en sélectionnant (ou pas) l’option Tenir compte des jours/heures ouvrés lors du calcul du délai.
Tenir compte des jours/heures ouvrés lors du calcul du délai
Calculer la durée en fonction des heures de bureau
Notifier le demandeur de la clôture
Envoyer un email au demandeur du processus lors de la clôture du processus (sélectionné par défaut)
Archiver les résultats des actions
Enregistrer le résultat de chacune des actions de la demande à chaque étape du processus (désélectionné par défaut) Si cette option n’est pas activée, tous les fichiers intermédiaires sont supprimés lors de la clôture de la demande.
Stockage de données de processus
Stocker les données de type fichier (fichier joint compris) dans la base de données afin de permettre une sauvegarde sans interruption de service (les utilisateurs peuvent continuer à travailler pendant la sauvegarde)
Texte d’aide
Texte d’aide sur le processus dans le module utilisateur (un lien permet l’édition de ce texte)
Lien d’aide
URL d’un document d’aide externe sur le processus, visible dans le portail utilisateur
Test
Teste le lien d’aide dans un nouveau navigateur Windows
Email de support
Email de support du processus affiché dans le module utilisateur
Supprimer les demandes
Affiche l’écran de suppression des demandes
Enregistrer
Enregistre les modifications
Fermer
Ferme la fenêtre
Groupe(s) associé(s) au participant
Aucun groupe ne sera ajouté au participant si les informations des groupes sont manquantes dans le fichier XPDL. Si le groupe d’un annuaire n’existe pas dans WorkflowGen il ne sera pas ajouté au participant.
Annuaire(s) associé(s) au participant
Aucun annuaire ne sera ajouté au participant si les informations des annuaires sont manquantes dans le fichier XPDL. Si l’annuaire n’existe pas dans WorkflowGen il ne sera pas ajouté au participant.
Coordinateur(s) associé(s) au participant
Aucun coordinateur ne sera ajouté au participant si les informations des coordinateurs sont manquantes dans le fichier XPDL. Si le coordinateur n’existe pas dans WorkflowGen il ne sera pas ajouté au participant.
Sécurité des données
Dans le cas d’accès autorisés pour des participants spécifiques, si l’utilisateur n’existe pas dans WorkflowGen il ne sera pas ajouté à la liste d’autorisation d’accès.






Synchronisation
Permet la création d’une action de type synchronisation
Manuel
Permet la création d’une action de type manuelle
Sous-processus indépendant
Permet la création d’une action de type sous-processus indépendant
Sous-processus lié
Permet la création d’une action de type sous-processus lié
Champs
Remarques
Infos
Affiche l’écran d’édition de l’action
Paramètres
Affiche la liste des paramètres obligatoires et supplémentaires d’une action de ce type
Actions suivantes
Affiche la liste des actions suivant l’action actuelle dans le workflow du processus
Notifications
Affiche la liste des notifications automatiques et supplémentaires de l’action
Champs
Remarques
Type d’application ou d’action
Type d’action ou d’application utilisé par l’action
Nom
Identifiant unique pour l’action; doit être conforme à la nomenclature et limité à 30 caractères (champ obligatoire)
Description
Description de l’action limitée à 255 caractères (champ obligatoire)
Participant [1]
Participant associé à l’action (champ obligatoire)
Sous-process [1]
Sous-processus associé à l’action (champ obligatoire) La liste des sous-processus disponibles est générée en fonction du statut du processus :
Si le processus est actif, vous ne pouvez choisir que des sous-processus actifs ou archivés
Si le processus est en test ou en construction, vous pouvez choisir parmi les sous-processus de test, actifs ou archivés
⚠️ Attention : Si vous changez le sous-processus en un autre, tous les paramètres actuels du sous-processus précédent seront supprimés.
Si l’action est un sous-processus.
Si l’action est une application.
Disponible pour les méthodes d’affectation automatique à la personne et manuelles.
Actif si la méthode d’affectation est manuelle.
Actif si un délai de retard est défini.
La limite de texte d'aide par défaut de 10 000 caractères peut être personnalisée en modifiant la valeur du paramètre AdministrationMaxHelpTextSize dans le fichier web.config.
Seuls les gestionnaires de processus et les administrateurs peuvent supprimer une action. Si le processus est actif ou archivé, l’action ne peut pas être supprimée.
Il n’est pas possible de créer une boucle avec la première action du processus. Vous devez ajouter une nouvelle action affectée automatiquement au demandeur et créer une boucle avec celle-ci.
Ici, l’action MODIFIER est ajoutée :
- SAISIR > VALIDER > MODIFIER > VALIDER > MODIFIER > VALIDER > ...
Méthode
Remarques
Automatique au demandeur
L’action est affectée à l’utilisateur qui a initié la demande (ex. : la première action du processus est affectée au demandeur).
Automatique à l’initiateur de l’action [1]
L’action est affectée à l’utilisateur qui a fait l’action précédente (ex. : lancement de plusieurs actions consécutives par la même personne)
Automatique à la personne (action affectée par utilisateur) [2]
Si le type de participant est une Personne, l’action est affectée à l’utilisateur associé au participant. Si le type de participant est une Liste de personnes, l’action peut être affectée à l’utilisateur dont le nom d’utilisateur est récupéré dans la donnée du processus sélectionnée. Si la donnée du processus contient une liste de noms d’utilisateurs (séparés par une virgule), une instance de l’activité concernée (action) est créée et affectée pour chaque utilisateur de la liste.
Automatique à la personne qui a fait ... (une action)
L’action est affectée à l’utilisateur qui a fait l’action sélectionnée (ex. : la dernière validation doit être effectuée par le même utilisateur qui a effectué la première validation)
Automatique au gestionnaire du demandeur
L’action est affectée au gestionnaire de l’utilisateur qui a initié la demande. Une erreur d’affectation peut arriver si aucun gestionnaire n’est associé à l’initiateur de l’action
La méthode Automatique à l’initiateur de l’action est disponible si le participant de l’action précédente est le même que celui de l’action actuelle.
Si la méthode Automatique à la personne est sélectionnée, le champ Récupérer l’utilisateur depuis une donnée doit être défini.
Méthode
Remarques
Manuelle par l’initiateur de l’action
L’utilisateur qui a effectué l’action précédente doit sélectionner l’utilisateur qui sera affecté à l’action suivante dans la liste des utilisateurs du participant.
Manuelle par la personne qui a fait ... (action)
L’utilisateur qui a effectué l’action sélectionnée doit sélectionner l’utilisateur qui sera affecté à l’action suivante dans la liste des utilisateurs du participant. Dans les processus contenant des sous-processus ou des applications automatiques cette méthode peut remplacer Par l’initiateur de l’action lorsque l’action précédente a été effectuée par le système.
Manuelle par le coordinateur
(Répartition / Dispatching) Un des coordinateurs doit affecter l’action à un utilisateur associé au participant de l’action.
Self service
Le premier utilisateur associé au participant qui décide de prendre en charge l’action reçoit l’affectation de l’action (à cet instant les autres ne seront plus capables de prendre en charge l’action).
Le tableau suivant présente les méthodes d'affectation disponibles en fonction du type d'action (synchronisation, application ou sous-processus) et du type d'application d'action (procédure Web, service Web, procédure Web asynchrone ou application Web).
Méthodes d'affectation disponibles
Synchronisation
Procédure Web, service Web, procédure Web asynchrone
Application Web
Sous-processus
Automatique
Automatique au demandeur
❌
❌
Voir matrice suivante
La méthode Automatique à l’initiateur de l’action est disponible si le participant de l’action précédente est le même que celui de l’action actuelle.
Si la méthode Automatique à la personne est sélectionnée, le champ Récupérer l’utilisateur depuis une donnée doit être défini.
La matrice ci-dessous indique les méthodes d’affectations disponibles lorsque l’on sélectionne une action de type Application ou Application Web en fonction du type de participant associé et du rôle de ce participant.
Méthodes d'affectation disponibles
Personne
Liste de personnes : Participant
Liste de personnes : Demandeur
Liste de personnes avec coordinateur : Participant
Liste de personnes avec coordinateur :
Automatique
Automatique au demandeur
❌
La méthode Automatique à l’initiateur de l’action est disponible si le participant de l’action précédente est le même que celui de l’action actuelle.
Si la méthode Automatique à la personne est sélectionnée, le champ Récupérer l’utilisateur depuis une donnée doit être défini.
Champs
Remarques
Sélectionnez l’action à ajouter *
Action du processus à ajouter en tant qu’action suivant l’action actuelle
* Une action peut être utilisée une seule fois en tant qu’action suivante dans les transitions d’une autre action.
Colonnes
Remarques
Action suivante
Nom de l’action suivante
Transitions vers
Liste d’actions à suivre possibles
Condition/Exception
Un lien affiche l’écran d’édition de la condition ou exception de la transition
Suppression
Le x permet la suppression de la transition vers l’action suivante
Champs
Remarques
Application
Permet la création d’une action basée sur l’application sélectionnée
Cliquez sur ASP.NET dans la barre d'outils pour ouvrir l'éditeur de code ASP.NET, qui peut être utilisé pour définir des procédures côté serveur, des événements et des variables globales pour gérer des tâches personnalisées spécifiques. Cette fonctionnalité est principalement destinée au développement côté serveur ASP.NET.
Cliquez sur JS dans la barre d'outils pour ouvrir l'éditeur de code JavaScript, qui peut être utilisé pour définir des procédures côté serveur, des événements et des variables globales pour gérer des tâches personnalisées spécifiques. Cette fonctionnalité est principalement destinée au développement côté client JavaScript.
Cochez Activer le mode d'édition de code côté serveur dans l'onglet Général du panneau Configuration du formulaire pour activer ce mode, qui permet aux concepteurs de formulaires de modifier le contenu de la balise de serveur runat (p.ex. <script runat="server") et de la balise de script JavaScript (p.ex. <script jseditor="true">) avec Visual Studio Professional ou Visual Studio Code directement dans le fichier default.aspx généré sur le serveur (normalement situé dans le dossier \wfapps\webforms[PROCESSNAME]\V[VERSION]).
Vous devez enregistrer le formulaire sur l'écran Formulaire de WorkflowGen chaque fois que vous faites des modifications au code d'un script dans le fichier default.aspx afin de maintenir à jour les balises de script HTML du formulaire (FORM_HTML). Ceci est obligatoire avant de pouvoir exporter la définition de processus XPDL pour le déploiement sur un autre serveur.
Si vous utilisez l'éditeur de formulaire, vous pouvez activer le mode AJAX en cochant Activer le mode AJAX dans l'onglet Général du panneau Configuration du formulaire.
Cet écran permet l’édition de la condition qui sera évaluée lors de la transition vers l’action suivante. Le bandeau situé au-dessus de la zone de saisie permet l’édition rapide et fiable de la syntaxe de l’expression de la condition. N’importe quelle expression JavaScript ou VBScript avec une syntaxe correcte peut être insérée en tant que condition (choisissez JavaScript ou VBScript à côté de Langue). La syntaxe est vérifiée lors de l’enregistrement ou en cliquant le bouton Vérifier la syntaxe.
En mode JavaScript, utilisez le bouton Fnc() pour encapsuler la condition dans une expression de fonction appelée immédiatement (IIFE). Par exemple :
Donnée de processus égal à Lorem ipsum :
JavaScript : <DATA> == "Lorem ipsum"
VBScript : <DATA> = "Lorem ipsum"
Vous ne pouvez créer qu’une seule condition par transition. Pour créer des conditions additionnelles entre les mêmes actions, créez des transitions additionnelles entre les actions et placez-y les conditions additionnelles.
Vous ne pouvez pas créer plus d’une condition ou exception sur une transition.
Chaque condition est évaluée individuellement. Par exemple, s’il y a deux conditions sur des transitions séparées entre actions, et les deux sont TRUE, la prochaine action sera créée deux fois.
Vous ne pouvez créer qu’une seule exception par transition. Pour créer des exceptions additionnelles entre les mêmes actions, créez des transitions additionnelles entre les actions et placez-y les exceptions additionnelles.
Vous ne pouvez pas créer plus d’une exception ou condition sur une transition.
Chaque exception est évaluée individuellement. Par exemple, s’il y a deux exceptions sur des transitions séparées entre actions, et les deux exceptions interviennent, la prochaine action sera créée deux fois.
Version du sous-process
La version du sous-processus (facultatif)
Auto trouve la version active, en test ou archivée (dans cet ordre) la plus récente et la choisit, mais si vous saisissez une version spécifique dans le champ Numéro, cette version sera choisie indépendamment de son statut.
Méthode d’affectation [2]
Méthode d’affectation d’une action à un participant (champ obligatoire)
Demandeur du sous-processus [1]
Utilisateurs du processus définis automatiquement en tant que demandeurs du sous-processus (champ obligatoire)
Récupérer les utilisateurs depuis [3]
Donnée du processus contenant la liste des noms d’utilisateurs (séparés par une virgule) des personnes à qui l’action sera affectée (champ obligatoire)
Délai de réalisation [4]
Délai avant que l’action ne soit considérée comme en retard. La valeur peut être définie via une constante ou à travers une donnée du processus dont la valeur sera récupérée à l’exécution. Unités : Vous pouvez choisir la manière dont le délai sera calculé en sélectionnant (ou pas) l’option Utiliser les jours et heures ouvrés pour calculer la durée.
Annuler la prise en charge si le retard est supérieur à [5]
L’affectation de l’action peut être annulée automatiquement si le délai est supérieur à la valeur définie. Vous devez définir une unité de durée pour ce champ.
Mode de clôture
Indique si l’action doit être complétée par le moteur de workflow en arrière-plan Cette option est utile quand la finalisation de la réalisation d’une action prend du temps (beaucoup de notifications, l’action est suivi par un service Web, etc...). Dans ce cas l’utilisateur n’a pas à attendre que l’action se termine, il est redirigé sur la fiche de suivi de la demande ou sur la page d’accueil du portail (selon le paramétrage de la redirection définit dans le panneau de configuration par l’administrateur).
Visible
Indique si l’action est affichée dans l’historique des actions de la fiche de suivi de la demande dans le portail utilisateur
Texte d’aide [6]
Texte d’aide sur l’action dans le module utilisateur (un lien permet l’édition de ce texte)
Lien d’aide
URL d’un document d’aide externe sur l’action, visible dans le portail utilisateur
Email de support
Email de support de l’action affiché dans le portail utilisateur
Taille d’icône
La taille d’icône pour le processus graphique du workflow; cochez Appliquer la taille à toutes les actions pour changer la taille de toutes les icônes d'action en même temps
Identifiant interne
Identifiant de l’action
Automatique au gestionnaire de l’initiateur de l’action
L’action est affectée au gestionnaire de l’utilisateur qui a réalisé l’action précédente. Une erreur d’affectation peut arriver si aucun gestionnaire n’est associé à l’utilisateur qui a réalisé l’action sélectionnée.
Automatique au gestionnaire de la personne qui a fait ... (une action)
L’action est affectée au gestionnaire de l’utilisateur qui a réalisé l’action sélectionnée. Une erreur d’affectation peut arriver si aucun gestionnaire n’est associé à l’utilisateur qui a réalisé l’action sélectionnée.
Automatique au système
Utilisé pour une action de type synchronisation ou application automatique (procédure Web, procédure Web asynchrone, service Web)
✔️
Automatique à l'initiateur de l'action [1]
❌
❌
✔️
✔️
Automatique à la personne [2]
❌
❌
✔️
✔️
Automatique à la personne qui a fait...
❌
❌
Voir matrice suivante
✔️
Automatique au manager du demandeur
❌
❌
Voir matrice suivante
✔️
Automatique au manager de l'initiateur de l'action
❌
❌
Voir matrice suivante
✔️
Automatique à la personne qui a fait...
❌
❌
Voir matrice suivante
✔️
Automatique au système
✔️
✔️
Voir matrice suivante
✔️
Manuelle
Manuelle par l'initiateur de l'action
❌
❌
Voir matrice suivante
❌
Manuelle par la personne qui a fait...
❌
❌
Voir matrice suivante
❌
Manuelle par le coordinateur
❌
❌
Voir matrice suivante
❌
Self-service
❌
❌
Voir matrice suivante
❌
❌
✔️
❌
✔️
Automatique à l'initiateur de l'action [1]
✔️
❌
❌
❌
❌
Automatique à la personne [2]
✔️
✔️
✔️
✔️
✔️
Automatique à la personne qui a fait...
❌
✔️
✔️
✔️
✔️
Automatique au manager du demandeur
❌
✔️
✔️
✔️
✔️
Automatique à la personne qui a fait...
❌
✔️
✔️
✔️
✔️
Automatique au système
❌
❌
❌
❌
❌
Manuelle
Manuelle par l'initiateur de l'action
❌
✔️
✔️
✔️
✔️
Manuelle par la personne qui a fait...
❌
✔️
✔️
✔️
✔️
Manuelle par le coordinateur
❌
❌
❌
✔️
✔️
Self-service
❌
✔️
✔️
✔️
✔️
Enregistre la section ou le champ sélectionné comme un outil.
Dupliquer une section ou un champ
Effectue une copie de la section ou champ sélectionné et l’insère dans le formulaire. La section ou champ doublé apparaîtra en dessous de la section ou champ sélectionné.
Supprimer une section ou un champ
Supprime la section ou le champ sélectionné du formulaire.
Configuration du formulaire
Ouvre la fenêtre de configuration du formulaire
Vue workflow
Affiche la vue interactive du workflow
Annuler/refaire
Annule ou refait les modifications les plus récentes au formulaire.
Styles
Sélectionner un style
Liste de styles personnalisés et par défaut; sélectionnez un style pour changer le style du formulaire actuel.
Outils
Sélectionner un outil
Liste des outils personnalisés et par défaut; sélectionnez un outil en vue d'ajouter l'outil au formulaire en utilisant le bouton Insérer.
Insérer l'outil sélectionné
Insère l'outil sélectionné dans le formulaire.
Id
Éditer l'identifiant des champs
Modifier l'identifiant des sections et des champs
Infobulle
Éditer l'infobulle des champs
Modifier l'infobulle des sections et des champs
Format
Éditer le format des champs
Modifier le format des champs
Apparence
Éditer l'apparence
Personnaliser l'apparence des en-têtes, pieds de pages, libellés et champs (voir )
Comportement
Éditer le comportement des actions
Affiche la vue interactive du workflow, active les options cliquables Requis, Lecture seule et Caché pour chaque champ du formulaire et permet de définir le comportement des sections et des champs du formulaire pour chaque action (voir )
Correspondance
Éditer la correspondance des données d’actions des champs
Affiche la vue interactive du workflow, active les options cliquables Récupérer la valeur et Envoyer la valeur pour chaque champ du formulaire et permet de définir les données en entrées et en sortie au niveau de chaque action (voir )
ASP.NET
ASP.NET
Affiche l'éditeur de code ASP.NET
JS
JavaScript
Affiche l'éditeur de code JavaScript
Affiche l'éditeur de formulaire WYSIWYG
JS
Éditeur JavaScript
Affiche l'éditeur de code JavaScript
Affiche l'éditeur de formulaire WYSIWYG
ASP.NET
Éditeur ASP.NET
Affiche l'éditeur de code ASP.NET
La largeur de l'en-tête du formulaire
Valeur numérique avec ou sans l'unité de mesure (px, pt, in, cm, mm, pc, em, ex, %).
📌 Exemple : 720px
Hauteur
La hauteur de l'en-tête du formulaire
Valeur numérique avec ou sans l'unité de mesure (px, pt, in, cm, mm, pc, em, ex, %).
📌 Exemple : 38px
Alignement de l'image
L'alignement de l'image en-tête :
Droite : L'image sera alignée sur le côté droit
Gauche : L'image sera alignée sur le côté gauche.
Aucune : Pas alignement
URL de l'image
L'URL de l'image à afficher
Largeur de l'image
La largeur de l'image
Hauteur de l'image
La hauteur de l'image
Répétition de l'image
Définit si et comment l'image sera répétée :
Aucune répétition : l'image ne sera pas répétée
Répétition : l'image sera répétée à la fois verticalement et horizontalement (par défaut)
Répétition x : l'image sera répétée horizontalement seulement
Sections
Largeur
La largeur pour toutes les sections
Valeur numérique avec ou sans l'unité de mesure (px, pt, in, cm, mm, pc, em, ex, %).
📌 Exemple : 150px
Appliquer la largeur
Cochez la case pour appliquer la largeur à toutes les sections
Libellés
Alignement
L'alignement des libellés pour tous les champs :
Droite : libellé sera aligné sur le côté droit du champ
Gauche : libellé sera aligné sur le côté gauche du champ
Haut : libellé sera aligné sur le dessus du champ
Largeur
La largeur des libellés pour tous les champs
Valeur numérique avec ou sans l'unité de mesure (px, pt, in, cm, mm, pc, em, ex, %).
📌 Exemple : 150px
Appliquer la largeur
Cochez la case pour appliquer la largeur à tous les libellés
Boutons
Soumission
Le libellé pour le bouton de soumission
Enregistrer en brouillon
Le libellé pour le bouton d'enregistrement en brouillon
Activer le brouillon
Cochez pour activer et afficher le bouton de sauvegarde
Bas de page
Largeur
La largeur du bas de page
Valeur numérique avec ou sans l'unité de mesure (px, pt, in, cm, mm, pc, em, ex, %).
📌 Exemple : 720px
Hauteur
La hauteur du bas de page
Valeur numérique avec ou sans l'unité de mesure (px, pt, in, cm, mm, pc, em, ex, %).
📌 Exemple : 22px
Alignement de l'image
L'alignement de l'image du bas de page :
Droite : l'image sera alignée sur le côté droit
Gauche : l'image sera alignée sur le côté gauche
Aucune : pas d'alignement
URL de l'image
L'URL de l'image à afficher
Largeur de l'image
La largeur de l'image
Hauteur de l'image
La hauteur de l'image
Répétition de l'image
Définit si et comment l'image sera répétée :
Aucune répétition : l'image ne sera pas répétée
Répétition : l'image sera répétée à la fois verticalement et horizontalement (par défaut)
Répétition x : l'image sera répétée horizontalement seulement
Sécurité
Permettre la signature XML
Cocher pour permettre l'usage de la signature XML dans les données du formulaire Les signatures digitales sont utilisées pour certifier qu’un document n’a pas été modifié par le système ou par quelqu’un non autorisé qui a réussit à se connecter au système. La signature XML est un standard du W3C qui définit les règles de procédure pour la création et la représentation de signatures digitales. C’est une méthode d’association d’une clé avec des données de références pour assurer l’intégrité de ces données.
Divers
Afficher un message de confirmation de suppression rapide
Cochez pour afficher un message de confirmation avant la suppression
Icône
Nom
Description
Nouveau formulaire
Crée un nouveau formulaire ou remplacer le formulaire actuel.
Enregistrer le formulaire
Enregistre le formulaire actuel
Imprimer le formulaire
Imprime le formulaire actuel
Icône
Nom
Description
Nouveau
Efface le code ASP.NET
Enregistrer
Enregistre le code ASP.NET
Commenter/Décommenter
Ajoute ou supprime // devant la (les) ligne(s) sélectionnée(s)
Éditeur
Icône
Nom
Description
Nouveau
Efface le code JavaScript
Enregistrer
Enregistre le code JavaScript
Commenter/Décommenter
Ajoute ou supprime // devant la (les) ligne(s) sélectionnée(s)
Éditeur
Nom
Description
Formulaires Web
Activer le mode d'édition de code côté serveur
Voir la section Mode d'édition de code côté serveur
Activer le mode AJAX
Voir la section Mode AJAX
En-tête
Titre
Le titre du formulaire
Nom
Description
Inclure les librairies jQuery API et jQuery UI
Cocher pour inclure les bibliothèques d'API de jQuery (v1.7.2) et jQuery UI (v1.8.20) dans la durée d'exécution (l'exécution du formulaire). Par défaut, ces bibliothèques sont disponibles en mode éditeur.
Texte libre
Références Web personnalisées pour être incluses dans l’élément HTML head qui sera disponible tant dans l’éditeur et d'exécution. Seulement les balises <script>, <meta>, <link> et <style> sont supportées.
📌 Exemple :
<link rel="stylesheet" type="text/css" href="mystyle.css" />
<style type="text/css">
body {background-color:yellow}
p {color:blue}
</style>
<meta name="description" content="my content" />
<script type="text/javascript">
alert("Hello World!");
</script>
<script type="text/javascript" src="myscript.js">
</script>
Pour plier un bloc de code, cliquez sur la flèche vers le bas, ce qui insérera une icône double-flèches à la place du code. Pour déplier le bloc de code, cliquez sur la flèche vers la droite. Appuyez sur Ctrl+Espace pour ouvrir un menu déroulant qui affichera une liste de variables et mots-clés disponibles.
Nom
Description
Sélectionner une langue
L’éditeur de formulaire vous permet de traduire vos formulaires pour toutes les langues définies dans WorkflowGen. Sélectionnez une langue disponible dans la liste déroulante des langues disponibles. ✏️ Note : Les sélections de langues génériques telles que l'anglais, le français, l'espagnol, etc., correspondent à la version de la langue que l'administrateur a initialement utilisée pour créer un formulaire. Par exemple, si l'administrateur a utilisé English (United States) pour créer un formulaire, alors dans ce cas, les sélections English (United States) et English seraient identiques.
Texte libre
Saisir la traduction correspondante à la langue sélectionnée. Si un texte est laissé vide, alors sa valeur sera recherchée dans l’ordre suivant : Culture de la langue > Langue générique > Langue par défaut.
Enregistrer une section ou un champ en tant qu'outil
Éditeur de formulaire
Éditeur de formulaire
Largeur
1 heure = 3 600 000 millisecondes (1 * 60 * 60 * 1000 = 3600000)
1 jour = 86 400 000 millisecondes (1 * 24 * 60 * 60 * 1000 = 86400000)
Dans les conditions, vous pouvez diviser par l’équivalent en millisecondes de l’unité de temps et l’utiliser dans les comparaisons. Par exemple, une notification envoyée lorsqu’une demande est en retard de 12 heures ou plus pourrait ressembler à ceci :
Insère un opérateur logique AND
||
Insère un opérateur logique OR
==
Insère un opérateur logique EQUAL TO
!=
Insère un opérateur logique NOT
null
Fonction de test permettant de savoir si la donnée est vide
getTime()
Retourne la valeur numérique d'une date en millisecondes
VBScript
( )
Isole le texte sélectionné entre parenthèses
Et
Insère un opérateur logique AND
Ou
Insère un opérateur logique OR
Pas
Insère un opérateur logique NOT
IsNull
Fonction de test permettant de savoir si la donnée est vide
DateDiff
Insère la condition DateDiff avec des paramètres vides pour permettre de régler les valeurs (voir )
Donnée de processus supérieure à 5:
JavaScript : <DATA> > 5
VBScript : <DATA> > 5
Comparer les dates des données de processus :
JavaScript : <DATE1> > <DATE2>
VBScript : DateDiff("s",<DATE1>,<DATE2>) > 0
Plus de 5 heures se sont écoulées :
JavaScript : (<WF_SYSTEM_DATETIME> - <DATE1>) * 360000 > 5
VBScript : DateDiff("h",<WF_SYSTEM_DATETIME>, <DATE1>) > 5
Combinaison de différentes comparaisons :
JavaScript : <DATA1> == "Lorem ipsum" || (<DATA2> > 10000 && <DATA3> == "Director")
VBScript : <DATA1> = "Lorem ipsum" Or (<DATA2> > 10000 And <DATA3> = "Director")
Fichier de données de processus n'a pas été défini :
JavaScript : <FILE_DATA> == null
VBScript : IsNull(<FILE_DATA>)
Fichier de données de processus a une taille spécifique (moins de 1 Mo) et un nom de fichier spécifique :
JavaScript : <FILE_DATA.SIZE> < 1024000 && <FILE_DATA.NAME>.indexOf("report") > -1
VBScript : <FILE_DATA.SIZE> < 1024000 And InStr(1,<FILE_DATA.NAME>,"report") > 0
Si une exception conduit à la fin du processus et que cette exception se produise lors de l’exécution, toutes les actions en cours sont annulées et la demande est clôturée avec le statut Clôturée – Annulée.
Champs
Remarques
Données
Liste des données qui peuvent être utilisées dans la condition
Macros
Liste des macros qui peuvent être utilisées dans la condition
Sinon
Insère le mot clé OTHERWISE
JavaScript
Fnc()
Encapsuler la conditions dans une expression de fonction appelée immédiatement (IIFE); voir IIFE ci-dessous
Type d’exception
Remarques
Retard d’une action
Exception lancée par le système lorsqu’une action est en retard
Annulation d’une action
Exception lancée lorsqu’un utilisateur annule une action ou un sous-processus en cours Pour empêcher les utilisateurs et/ou les superviseurs d'annuler l'action, décochez Utilisateurs et/ou Superviseurs. Sinon, Utilisateurs, Superviseurs, Administrateurs et Système sont cochés par défaut et peuvent tous annuler les actions.
✏️ Note : Administrateur et Système ne peuvent pas être décochés et pourront toujours annuler les actions.
Erreur d’assignation
Exception lancée lorsqu’une action est affectée à un utilisateur qui n’est pas associé avec le participant
Erreur d’exécution
Exception lancée par le système lorsqu’une erreur se produit lors de l’exécution automatique d’une application
Par défaut
Exception lancée par défaut
&&
protected void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e);
// Register the custom button to the script manager for postback management in AJAX mode
if (ScriptManager.GetCurrent(this) != null) {
ScriptManager.GetCurrent(this).RegisterPostBackControl(ACTION1_BUTTON1);
}
}<WF_SYSTEM_DATETIME> - <WF_ACTIVITY_INST_LIMIT_DATETIME>) / 3600000 >= 12(function(){
var myVar = <DATA>
return myVar == "Lorem ipsum"
})()Répétition y : l'image sera répétée verticalement seulement
Répétition y : l'image sera répétée verticalement seulement




Les macros suivantes peuvent être insérées dans les conditions de la transition ou dans les paramètres supplémentaires des applications de type action. Elles seront remplacées par leur valeur lors de l’exécution du processus.
* champ : Voir le tableau suivant.
Vous pouvez utiliser les macros dans les transitions et les conditions des notifications supplémentaires ou dans les paramètres des actions. Pour envoyer la valeur de la macro dans la valeur du paramètre, sélectionnez une macro dans la liste ou concaténez des codes de macros dans une valeur texte.
Si vous voulez envoyer le nom d’utilisateur (username) du demandeur dans le champ REQUESTER_USERNAME de l’action, vous devez ajouter un paramètre supplémentaire avec les propriétés ci-dessous :
Nom du paramètre : REQUESTER_USERNAME
Envoyer la valeur d’une macro : Requester.Username
Si vous voulez envoyer le nom et le prénom du demandeur dans le champ REQUESTER_NAME de l’action avec une espace entre les deux, vous devez ajouter un paramètre supplémentaire avec les propriétés ci-dessous :
Nom du paramètre : REQUESTER_NAME
Envoyer la valeur d’un texte : <WF_REQUESTER_FIRSTNAME> <WF_REQUESTER_LASTNAME>
Dans la transition ou les conditions de notification, vous pouvez utiliser les macros suivantes sur les données de processus de type fichier pour accéder aux propriétés du fichier.
Considérant une donnée de type fichier appelée MON_FICHIER.
Règle : Vérifier si le nom du fichier contient le mot clé rapport
Méthode : InStr(1,<MON_FICHIER.FILENAME>,"rapport",1) <> 0
Règle : Vérifier si la taille du fichier est inférieure à 1 Mo
Méthode : <MON_FICHIER.SIZE> < 1024
Règle : Vérifier si le fichier est un document MS Word :
Méthode : <MON_FICHIER.CONTENTTYPE> = "application/msword"
Règle : Vérifier si le fichier a été modifié aujourd’hui :
Méthode : <MON_FICHIER.DATELASTMODIFIED> > [Date]
Vous pouvez également utiliser le nom de la donnée pour vérifier si le fichier existe dans le processus en utilisant la fonction IsNull().
Considérant que la donnée de type fichier appelée MON_FICHIER, vous pouvez utiliser la syntaxe ci-dessous dans une condition pour vérifier si le fichier existe :
IsNull(<MON_FICHIER>)
Le tableau suivant montre des exemples des macros énumérées ci-dessus.
Cette fonctionnalité permet de simplifier le déploiement des processus métiers dans un environnement WorkflowGen multi-instance en vous permettant de définir des données communes ou des données spécifiques à une instance en tant que paire clé-valeur pouvant être utilisée dans votre processus au moyen d'une macro dans les paramètres d'action, dans des conditions de transition pour contrôler le flux et dans des notifications d’action au lieu de coder en dur ces données dans la définition du processus.
Vous pouvez créer vos propres macros en définissant des paramètres d'application personnalisés dans le fichier de configuration Web de WorkflowGen.
Vous devez utiliser le paramètre de configuration EngineMacroAppSettings pour définir vos macros personnalisées. Vous pouvez spécifier le nom de clé exact ou utiliser un préfixe suivi de * (astérisque), comme indiqué dans l'exemple ci-dessous, qui ajoute les trois macros personnalisées (<WF_APP_SETTING_MySecretKey1>, <WF_APP_SETTING_MySecretKey2> et <WF_APP_SETTING_MySecretKey3>).
Les macros <WF_APP_SETTING_MySecretKey1>, <WF_APP_SETTING_MySecretKey2> et <WF_APP_SETTING_MySecretKey3> seront disponibles au moment du design et de l'exécution (runtime) avec le paramétrage de l'application ci-dessous dans le web.config :
Process. Id
<WF_PROCESS_ID>
Identifiant du processus
Process .Nom
<WF_PROCESS_NAME>
Nom du processus
Process. Description
<WF_PROCESS_DESC>
Description du processus
Process .Statut
<WF_PROCESS_STATUS>
Statut du processus
Process. FormUrl
<WF_PROCESS_FORM_URL>
URL du formulaire de processus
Process. Version
<WF_PROCESS_VERSION>
Version du processus
Action. Id
<WF_ACTIVITY_ID>
Identifiant de l’action
Action. Nom
<WF_ACTIVITY_NAME>
Nom de l’action
Action. Description
<WF_ACTIVITY_DESC>
Description de l’action
Action en cours. Id
<WF_ACTIVITY_INST_ID>
Identifiant de l’instance de l’action
Action en cours. Nom
<WF_ACTIVITY_INST_NAME>
Nom de l’instance de l’action
Action en cours. Date de création
<WF_ACTIVITY_INST_CREATION_DATETIME>
Date de création de l’action
Action en cours. Délai
<WF_ACTIVITY_INST_LIMIT_DATETIME>
Délai de réalisation de l’action
Action en cours. Jours pré-retard
<WF_ACTIVITY_INST_PREOVERDUE_DAYS>
Nombre de jours avant que l’action devienne en retard, arrondi vers le haut au jour le plus proche
Action en cours. Heures pré-retard
<WF_ACTIVITY_INST_PREOVERDUE_HOURS>
Nombre d’heures avant que l’action devienne en retard, arrondi vers le haut à l’heure la plus proche
Action en cours. Minutes pré-retard
<WF_ACTIVITY_INST_PREOVERDUE_MINUTES>
Nombre de minutes avant que l’action devienne en retard, arrondi vers le haut à la minute la plus proche
Action en cours. Secondes pré-retard
<WF_ACTIVITY_INST_PREOVERDUE_SECONDS>
Nombre de secondes avant que l’action devienne en retard, arrondi vers le haut à la seconde la plus proche
Action en cours. Jours en retard
<WF_ACTIVITY_INST_OVERDUE_DAYS>
Nombre de jours que l’action est en retard, arrondi vers le bas au jour le plus proche
Action en cours. Heures en retard
<WF_ACTIVITY_INST_OVERDUE_DAYS>
Nombre d’heures que l’action est en retard, arrondi vers le bas à l’heure la plus proche
Action en cours. Minutes en retard
<WF_ACTIVITY_INST_OVERDUE_MINUTES>
Nombre de minutes que l’action est en retard, arrondi vers le bas à la minute la plus proche
Action en cours. Secondes en retard
<WF_ACTIVITY_INST_OVERDUE_SECONDS>
Nombre de secondes que l’action est en retard, arrondi vers le bas à la seconde la plus proche
Action en cours. Compteur
<WF_ACTIVITY_INST_COUNT>
Nombre d’instances complétées de l’action en cours
Demande. Id
<WF_PROCESS_INST_ID>
Identifiant de la demande (instance du processus)
Demande. Id relatif
<WF_PROCESS_INST_RELATIVE_ID>
Identifiant relatif de la demande
Demande. Id relatif mensuel
<WF_PROCESS_INST_MONTH_RELATIVE_ID>
Identifiant mensuel relatif de la demande
Demande. Id relatif annuel
<WF_PROCESS_INST_YEAR_RELATIVE_ID>
Identifiant annuel relatif de la demande
Demande. Nom
<WF_PROCESS_INST_NAME>
Nom de la demande (instance du processus)
Demande. Date de création
<WF_PROCESS_INST_CREATION_DATETIME>
Date de création de la demande (instance du processus)
Demande. Délai
<WF_PROCESS_INST_LIMIT_DATETIME>
Délai de réalisation de la demande (instance du processus)
Action. Participant.Nom
<WF_PARTICIPANT_NAME>
Nom du participant de l’action
Système. Date
<WF_SYSTEM_DATE>
Date système
Système. Date/heure
<WF_SYSTEM_DATETIME>
Date/heure système
Système. Heure
<WF_SYSTEM_TIME>
Heure système
Système. Langue
<WF_SYSTEM_LANGUAGE>
Langue système de l’utilisateur
Système. Null
<WF_SYSTEM_NULL>
Autorise le concepteur du processus à réinitialiser à null la valeur d’un champ d’un formulaire PDF
Système. ApplicationBase Url
<WF_SYSTEM_APPLICATION_BASE_URL>
Renvoie l'URL racine de l'application (p.ex. http://[servername])
Système. ApplicationUrl
<WF_SYSTEM_APPLICATION_URL>
Renvoie l'URL de l'application WorkflowGen (p.ex. http://[servername]/wfgen)
Système. ApplicationPortal ScriptUrl
<WF_SYSTEM_APPLICATION_PORTAL_SCRIPT_URL>
Renvoie l'URL de la page du portail de l'application WorkflowGen (p.ex. http://[servername]/wfgen/show.aspx)
Système. ApplicationConfigPath
<WF_SYSTEM_APPLICATION_CONFIG_PATH>
Renvoie le chemin physique vers le web.config WorkflowGen (p.ex. C:\inetpub\wwwroot\wfgen\web.config)
Système.
ApplicationDataPath
<WF_SYSTEM_APPLICATION_DATA_PATH>
Renvoie le chemin physique du dossier de données d'application (p.ex. C:\inetpub\wwwroot\wfgen\app_data)
Système. Guid
<WF_SYSTEM_GUID>
Identificateur global unique (GUID) généré par le système
⚠️ Important : Le GUID généré sera le même lorsqu'il sera utilisé dans les paramètres d'action standard, sauf si l'option de script est activée. Dans ce cas, chaque expression aura un GUID unique.
Parent. Nom du process
<WF_PARENT_PROCESS_NAME>
Retourne le nom du processus parent dans une action de sous-processus
Parent.
Version du process
<WF_PARENT_PROCESS_VERSION>
Retourne la version du processus parent dans une action de sous-processus
Parent.
Identifiant de la demande
<WF_PARENT_PROCESS_INST_ID>
Retourne l'identifiant de la demande parent dans une action de sous-processus
Parent.
Identifiant de l'activité
<WF_PARENT_ACTIVITY_INST_ID>
Retourne l'identifiant de l'action parent dans une action de sous-processus
Paramètres de l'application de configuration Web
<WF_APP_SETTING_nom>
Macros créées selon des paramètres de l'application de configuration Web (voir la section )
Prénom du gestionnaire
EMAIL
Adresse email
PHONE
Numéro de téléphone
MOBILE
Numéro de téléphone mobile
PAGER
Numéro de pager
FAX
Numéro de fax
OFFICE
Numéro de bureau
DEPARTMENT
Département
COMPANY
Société
JOBTITLE
Fonction
INITIALS
Initiales
TITLE
Titre
EMPLOYEENUMBER
Numéro d’employé
EMPLOYEETYPE
Type d’employé
POSTALADDRESS
Adresse
ZIPCODE
Code postal
CITY
Ville
STATE
État/Région
COUNTRY
Pays
OBJECTSID
SID
EXTATT1
Attribut étendu 1
EXTATT2
Attribut étendu 2
EXTATT3
Attribut étendu 3
EXTATT4
Attribut étendu 4
EXTATT5
Attribut étendu 5
Description du fichier
DATELASTMODIFIED
DATETIME
Date de la dernière modification du fichier
"APPROBATION_SIMPLE"
Process.Description
"Approbation simple"
Process.Statut
"ACTIVE"
Process.FormUrl
"http://mycompany.com/wfgen/wfapps/webforms/MACRO_TEST_2/V1/Default.aspx"
Process.Version
1
Action.Id
2
Action.Nom
"INITIATES"
Action.Description
"Le demandeur lance la demande"
Action en cours.Id
2
Action en cours.Nom
"2-VALIDATES"
Action en cours.Date de création
2019-04-20T20:23:07Z
Action en cours.Délai
2019-04-30-T20:25:25:46Z
Action en cours.Compteur
2
Demande.Id
1701
Demande.Id relatif
12
Demande.Id relatif mensuel
12
Demande.Id relatif annuel
12
Demande.Nom
"2_LEVELS_APPROVAL #1795"
Demande.Date de création
2019-04-20T20:35:00Z
Demande.Délai
2019-04-30T09:00:00Z
Action.Participant nom
"Jean"
Système.Date
4/20/2019
Système.Date/heure
4/20/2019 2:44 PM
Système.Heure
1:44 PM
Système.Langue
"en-US"
Système.Null
<NULL>
Application.BaseUrl
http://myserver.com
Macro
Balise
Valeur
Utilisateur connecté. champ *
<WF_USER_champ> *
Informations sur l’utilisateur
Utilisateur assigné. champ *
<WF_ASSIGNEE_champ> *
Informations sur l’utilisateur délégué
Demandeur. champ *
<WF_REQUESTER_champ> *
Informations sur le demandeur
Initiateur de l’action. champ *
<WF_INITIATOR_champ> *
Champ
Description
LASTNAME
Nom
FIRSTNAME
Prénom
USERNAME
Nom d’utilisateur
MANAGER
Nom d'utilisateur du gestionnaire
MANAGER_LASTNAME
Nom du gestionnaire
Champ
Type
Description
FILENAME
TEXT
Nom du fichier
SIZE
NUMERIC
Taille du fichier en kilooctets
CONTENTTYPE
TEXT
Type de contenu du fichier
DESCRIPTION
Macro
Exemple
Utilisateur connecté.champ
<WF_USER_FIRSTNAME> <WF_USER_DEPARTMENT> donnera "John Accounting"
Utilisateur assigné.champ
<WF_ASSIGNEE_EMPLOYEENUMBER>
<WF_ASSIGNEE_EMPLOYEETYPE> donnera "11225 Permanent"
Demandeur.champ
<WF_REQUESTER_COMPANY>
<WF_REQUESTER_LASTNAME> donnera "My company Smith"
Initiateur de l’action.champ
<WF_INITIATOR_FIRSTNAME>
<WF_INITIATOR_LASTNAME> donnera "John Smith"
Process.Id
12
Informations sur l’initiateur de l’action
MANAGER_FIRSTNAME
TEXT
Process.Nom
Le module Synchronisation des annuaires fournit une manière efficace de synchroniser les utilisateurs et groupes de WorkflowGen avec un ou plusieurs annuaires d’entreprise.
Quelques points clé concernant la synchronisation :
La synchronisation peut être manuelle ou automatique.
L’annuaire prédéfini WORKFLOWGEN ne peut pas être synchronisé.
L’identifiant « Username » d’un utilisateur doit être unique dans l’ensemble des annuaires WorkflowGen.
Vous pouvez synchroniser plusieurs annuaires ou plusieurs portions d’un annuaire avec des connecteurs différents.
En cas de suppression d’un compte, l’utilisateur est archivé ou désactivé selon le paramètre spécifié. Si l’option d’archive est sélectionnée, le « Username » est renommé avec une nomenclature spécifique et le compte est désactivé.
Il est suggéré de synchroniser les nouveaux comptes utilisateurs avec l’option Statut par défaut d’un nouvel utilisateur définie en Inactif. Les nouveaux comptes peuvent être ultérieurement activés par l’administrateur manuellement dans la liste utilisateur/groupe ou automatiquement en utilisant la fonctionnalité d’auto-activation.
L’accès au module de synchronisation est seulement accordé aux utilisateurs avec des profils d'administrateur.
Dans l’interface du module d’administration de WorkflowGen, il est possible de lister et d’ajouter des synchronisations d’annuaires, et d’en modifier les paramètres.
À la création d’une nouvelle synchronisation basée sur Active Directory, le protocole LDAP, ou en mode texte, les champs suivants vont apparaître pour définir la méthode de synchronisation.
Une fois enregistré, il n'est plus possible de modifier le connecteur de répertoire.
Pour le connecteur texte, il est possible de spécifier le caractère de séparation de colonne dans le fichier texte. Par défaut, la valeur est ; (point-virgule), mais elle peut être également , (virgule) ou bien TAB (dans le cas du caractère de tabulation).
Ce champ permet de spécifier un chemin pour accéder aux fichiers pour le connecteur texte. Il prend pour valeur le chemin où se trouvent les fichiers, suivi du nom de la synchronisation.
Dans le cas des connecteurs Active Directory et LDAP, un chemin LDAP est nécessaire pour accéder aux données.
Pour un connecteur d’annuaire de type LDAP, il faut spécifier une commande LDAP afin d’interroger les comptes utilisateurs.
Pour un connecteur d’annuaire de type LDAP, il faut spécifier une commande LDAP afin d’interroger les groupes.
L’annuaire à importer peut nécessiter un login et un mot de passe lors de son accès par le connecteur.
Pour les connecteurs d’annuaires, préciser si la synchronisation devrait inclure seulement le conteneur des unités organisationnelles (OU) ciblés ou s’il devrait aussi inclure tous les enfants des OU ciblés.
Dans WorkflowGen, il est possible de synchroniser les groupes et les utilisateurs. La synchronisation des utilisateurs est obligatoire, mais la synchronisation des groupes peut être activée ou non.
Pour effectuer la synchronisation le module se base sur un champ pour identifier les utilisateurs, et définir les ajouts, suppressions ou mises à jour. Il vous est possible de choisir parmi n’importe quel champ de WorkflowGen (ex. : Ads_Path ; EMPLOYEENUMBER) à condition que celui-ci soit traité par le connecteur.
De même que pour les utilisateurs, le champ de synchronisation des groupes est paramétrable.
Pour faciliter les imports et éviter dans certains cas les doublons sur les noms d’utilisateurs, il est possible de préfixer le nom des utilisateurs par une chaîne de caractères.
📌 Exemple : Domaine\
Pour faciliter les imports et éviter dans certains cas les doublons sur les noms d’utilisateurs, il est possible de préfixer le nom des utilisateurs par une chaîne de caractères.
📌 Exemple : Domaine\
Il existe trois modes de synchronisation : Ajout uniquement permet de ne faire que des ajouts des nouveaux utilisateurs. Ajout et modification permet de mettre à jour les données des utilisateurs déjà existants. Ajout, modification et suppression ajoute la possibilité d’archiver ou de supprimer les utilisateurs de WorkflowGen qui ne font pas partie de l’annuaire importé.
Ajout uniquement : Lors d’une synchronisation, tous les utilisateurs présent dans l’annuaire à importer, et qui n’existe pas dans l’annuaire de WorkflowGen, sont ajoutés à l’annuaire de WorkflowGen.
Les données des utilisateurs existants ne seront pas modifiées. Afin d’être ajouté, un utilisateur doit au moins posséder un nom d’utilisateur (USERNAME), et un nom (LASTNAME). Si cette condition n’est pas respectée, une erreur se produit et l’ajout est annulé. Afin d’utiliser les utilisateurs de WorkflowGen, le prénom (FIRSTNAME) et l’adresse email (EMAIL) sont indispensables.
Si une de ces valeurs est manquante, une alerte (WARNING) est créée. L’importation a bien lieu, mais il est recommandé d’agir afin que les utilisateurs concernés possèdent toutes leurs données.
Pour permettre un bon suivi des utilisateurs, dans WorkflowGen, en cas de demande de suppression, les utilisateurs ayant effectués des actions ne sont pas réellement supprimés mais sont au choix soit désactivés, soit archivés.
Il existe trois modes de synchronisation. Le premier permet de ne faire que des ajouts des nouveaux groupes. Le deuxième permet de mettre à jour les données des groupes déjà existants. Et enfin, le troisième ajoute la possibilité d’archiver ou de supprimer les groupes de WorkflowGen qui ne font pas partie de l’annuaire importé.
Cette option définit le statut par défaut des nouveaux comptes utilisateurs qui ont été créés durant la synchronisation. Définissez le statut Actif si vous souhaitez que le nouveau compte utilisateur soit activé par défaut. Définissez le statut comme Inactif si vous souhaitez gérer manuellement l’activation des nouveaux comptes utilisateurs ou permettre la fonctionnalité d’auto-activation des utilisateurs (recommandé pour les clients qui utilisent le mode de licence par utilisateur).
Cette option permet à un nouveau compte utilisateur qui est inactif de s’activer lui-même lors de sa première connexion à WorkflowGen. Le statut par défaut d’un nouvel utilisateur en Inactif doit être sélectionné en vue d’utiliser cette option.
En vue de proposer une gestion du suivi efficace dans WorkflowGen, quand une demande de suppression d’un utilisateur est réalisée, les utilisateurs qui ont réalisés des actions ne sont pas véritablement supprimés; vous avez le choix de les désactiver ou de les archiver. En cours d'archivage, l'utilisateur conserve son ID interne unique mais son nom d'utilisateur sera renommé avec le suffixe ARCHIVED_ suivi de son nom d’utilisateur.
Le déclenchement peut se faire de façon manuelle (grâce au bouton Synchroniser) ou bien de façon automatique.
Manuelle : Permet d’effectuer la synchronisation que de façon manuelle. Pour cela, cliquez sur le bouton Synchroniser.
Test : Ce mode possède le même mode d’exécution que la synchronisation manuelle, mais le traitement n’est pas réellement effectué. Il s’agit d’une simulation qui permet d’anticiper si une synchronisation va se dérouler correctement ou non. Pour, cliquez sur le bouton Tester. Une synchronisation de test est enregistrée de la même façon qu’une synchronisation réelle.
Automatique : La synchronisation des données peut se faire de façon automatique. Une tâche planifiée analyse quotidiennement la configuration de toutes les synchronisations et effectue les traitements en fonction de la configuration de chacune des synchronisations.
Vous pouvez choisir la fréquence de la synchronisation pour les déclenchements automatiques : soit quotidien, hebdomadaire ou mensuel. Pour une synchronisation automatique, référez-vous à la section pour spécifier les dates et heures spécifiques d’opération.
Le connecteur a pour but d'importer les utilisateurs et les groupes d'un annuaire Active Directory dans un annuaire WorkflowGen. Le connecteur fonctionne avec le protocole LDAP en utilisant ADSI (« Active Directory Service Interface »). L'accès à l'annuaire Active Directory se fait uniquement en lecture seule.
Un accès LDAP en lecture sur l'annuaire Active Directory doit être possible pour le compte anonyme ou pour un compte utilisable par le connecteur. Si le serveur Active Directory se trouve derrière un pare-feu, le protocole LDAP doit être ouvert.
Vous pouvez utiliser l'utilitaire ADSVIEW (disponible gratuitement de Microsoft) pour vérifier que le chemin LDAP que vous utilisez pointe bien vers les utilisateurs et les groupes à synchroniser.
Le connecteur nécessite un chemin LDAP, afin de retrouver les données dans Active Directory. Le chemin LDAP est une chaîne de caractères composée de la séquence suivante :
Le protocole : dans notre cas LDAP://.
Le nom du serveur ou son adresse IP.
Facultativement, le port séparé du nom du serveur par :. Le port par défaut est 389.
Pour exécuter la requête nécessaire à la synchronisation des utilisateurs, il faut lui préciser l'Organisation (O) et les Unités organisationnelles (OU) en partant du bas vers le haut en les précédant de DC= et en les séparant par des , (virgules).
Si la structure LDAP est la suivante :
Domaine de premier niveau (DC) : monorganisation.com
Unité organisationnelle (OU) : groupe à l’intérieur du domaine : Unité2
Sous-groupe (OU) : sous-groupe avec le domaine :
Pour accéder aux utilisateurs et groupes de Département TI, le chemin LDAP devrait être :
Le chemin LDAP ne supporte pas l’opérateur . mais supporte les espaces dont le .com est identifié par l’opérateur DC=com.
La CN est également supporté comme type de récipient.
Seulement une branche de l'annuaire peut être associée à un annuaire. Si des OU multiples au même niveau doivent être utilisé, alors les parents des deux OU doivent être utilisés (sinon deux annuaires devront être créés séparément).
Par exemple, si la structure /Organisation/Département1 et /Organisation/Département2
Pour plus d'informations, voir la section .
La synchronisation se fait pour les utilisateurs, mais il y a aussi la possibilité de synchroniser les groupes, et par conséquent les appartenances des utilisateurs aux groupes.
Les données concernées par l’import sont toutes les données qui font partie de l’OU ou du conteneur ciblé par le chemin. Il est possible d’importer également les utilisateurs des OU ou des conteneurs enfants, en activant la recherche en profondeur dans le panneau de configuration des synchronisations.
Le connecteur Active Directory ne prend pas en compte la propriété Désactivé des comptes utilisateurs AD; ces comptes seront donc synchronisés en tant qu'utilisateurs actifs. Si vous ne souhaitez pas que la synchronisation inclue les comptes AD inactifs, vous devrez utiliser le à la place, avec le filtre (!(userAccountControl:1.2.840.113556.1.4.803:=2))ajouté à la requête de synchronisation des utilisateurs. Assurez-vous également de définir le comportement souhaité pour l'option Si un utilisateur est archivé sur Archiver (par défaut) ou Désactiver chaque fois qu'un compte existant devient inactif dans AD.
Les champs de synchronisation par défaut sont :
Utilisateurs : Identificateur du système
Groupes : nom (sn)
Les informations sont récupérées dans l'annuaire Active Directory grâce au chemin LDAP. Il permet donc un accès en profondeur aux données, en ciblant l'OU dont on veut récupérer les utilisateurs et les groupes.
Voici ci-dessous un tableau de correspondance entre les champs de saisie d'un utilisateur et le nom des champs sous Active Directory. Ces correspondances ne peuvent pas être modifiées. Si vous souhaitez les modifier vous devez utiliser le connecteur d'annuaire LDAP (voir la section ).
Le connecteur a pour but d'importer les utilisateurs et les groupes d'un annuaire générique (ex. : LDAP, AD, Sun ONE, ADAM, etc...) dans un annuaire WorkflowGen. Le connecteur fonctionne avec le protocole LDAP en utilisant ADSI (Active Directory Service Interface). L'accès à l'annuaire LDAP se fait uniquement en lecture seule.
Un accès LDAP en lecture sur l'annuaire LDAP doit être possible pour le compte anonyme ou pour un compte utilisable par le connecteur.
Si le serveur LDAP se trouve derrière un pare-feu, le protocole LDAP doit être ouvert.
Le connecteur nécessite un chemin LDAP, afin de retrouver les données dans Active Directory. Le chemin LDAP est une chaîne de caractères composée de la séquence suivante :
Le protocole : dans notre cas LDAP://.
Le nom du serveur ou son adresse IP.
Facultativement, le port séparé du nom du serveur par :. Le port par défaut est 389.
Si la structure LDAP est la suivante :
Domaine de premier niveau (DC) : monorganisation.com
Unité organisationnelle (OU) : groupe à l’intérieur du domaine : Unité2
Pour accéder aux utilisateurs et groupes de Département TI, il faut les chemins LDAP suivants :
Pour utiliser un CN qui réfère deux groupes, le filtre suivant peut être utilisé :
Seulement une requête d’utilisateurs et une requête de groupe peuvent être associées à un annuaire. Si des OU multiples au même niveau doivent être utilisés, le parent des deux OU devrait être spécifié, sinon on devra utiliser deux annuaires.
Par exemple, si la structure /Societe/Departement1 et /Societe/Departement2 /Societe/Departement3 existe, et seuls départements 1 et 2 doivent être interrogés, alors soit l’ensemble de l’UO /Societe
Pour des exemples supplémentaires sur les requêtes génériques LDAP, référez-vous aux sites suivants :
La synchronisation se fait pour les utilisateurs. Mais il y a aussi la possibilité de synchroniser les groupes, et par conséquent les appartenances des utilisateurs aux groupes.
Pour synchroniser les utilisateurs, leurs attributs sn et sAMAccountName doivent être configurés en Active Directory. Ces attributs correspondent à Nom et Username, respectivement.
Les données concernées par l’import sont toutes les données qui font partie de l’OU ou du conteneur ciblé par le chemin. Il est possible d’importer également les utilisateurs des OU ou des conteneurs enfants, en activant la recherche en profondeur dans le formulaire de configuration des synchronisations.
Les champs de synchronisation par défaut sont les suivants :
Utilisateurs : Identificateur du système
Groupes : Nom (sn)
Voici ci-dessous un tableau de correspondances entre les champs de saisie d’un utilisateur et le nom des champs sous Active Directory, qui est supporté par ce mode de synchronisation. (Les autres genres de LDAP pourraient avoir une correspondance différente).
Si vous utilisez un connecteur LDAP, ces correspondances peuvent être modifiées en cliquant sur le bouton Correspondances dans la page de modification de l’annuaire.
Assurez-vous d'enregistrer les correspondances des champs chaque fois que vous ajoutez ou modifiez une requête LDAP.
Le connecteur a pour but d'importer les utilisateurs et les groupes à partir de fichiers texte dans un annuaire WorkflowGen.
Le connecteur a besoin de trois fichiers textes :
User : Ce fichier doit contenir les données relatives aux utilisateurs devant être synchronisés.
Group : Ce fichier doit contenir les données relatives aux groupes devant être synchronisés.
Usergroup : Ce fichier doit contenir les relations d’appartenances entre les utilisateurs et les groupes synchronisés.
La synchronisation se fait pour les utilisateurs, mais elle peut aussi être activée pour les groupes. Pour cela il suffit de cocher la case correspondante dans la fiche de configuration de la synchronisation.
Les fichiers à importer ayant un suffixe standardisé, il vous suffit de saisir, dans « Chemin des fichiers », le chemin suivi de la partie commune au nom des trois fichiers.
Si vous décidez de nommer votre import importWfGen et que vous l’avez placez dans le répertoire DISQUE:\Extract\ vous devez avoir dans ce répertoire le fichier importWfGen_USER.txt, et si en plus vous décidez de synchroniser les groupes vous devez également avoir les fichiers importWfGen_GROUP.txt et importWfGen_USERGROUP.txt. Ainsi dans le paramétrage de la synchronisation, après avoir choisi le connecteur Text, saisissez DISQUE:\Extract\importWfGen dans « Chemin des fichiers » .
Les fichiers d’import de données doivent être suffixés de la façon suivante :
Le fichier des utilisateurs doit se terminer par _USER.txt .
Le fichier des groupes doit se terminer par _GROUP.txt.
Le fichier d’appartenance des utilisateurs à un groupe doit se terminer par _USERGROUP.txt.
Le reste du nom de fichier doit être commun aux trois fichiers.
Les fichiers textes commencent par la liste du nom des propriétés, séparées par un caractère définit dans les paramètres de la synchronisation.
Ensuite chaque ligne correspond à un enregistrement, c’est à dire à un utilisateur, avec les valeurs également séparées par le caractère de délimitation. Si une propriété est vide, celle-ci doit quand même être délimitée par le caractère de séparation.
Par défaut le délimiteur est ; (point-virgule).
En ce qui concerne le fichier de l’appartenance des utilisateurs à un groupe, celui ne possède que deux champs. Il s’agit des champs de synchronisation des groupes et des utilisateurs. Le choix de ces champs s’effectue dans le module de synchronisation.
De plus il est possible de préfixé le nom de ces champs pour éviter les cas où le nom du champ de synchronisation des utilisateurs est le même que celui des groupes. Ce paramétrage ce fait dans le fichier de « config.inc » de la partie administrative du module de synchronisation.
Par exemple, si le champ de synchronisation des utilisateurs est Username et celui des groupes est Nom, le fichier doit contenir les champs GROUP_sAMAccountName et USER_sAMAccountName.
Si les informations textes sont exportées à partir d’un service AD, le connecteur a besoin du chemin LDAP afin de lui permettre de reconstruire la propriété ADSPATH pour les utilisateurs.
Voici ci-dessous un tableau de correspondance entre les champs de saisie d’un utilisateur et le nom des champs tel qu’on doit les trouver dans le fichier texte. Ces correspondances peuvent être modifiées en cliquant sur le bouton Correspondances dans la page de modification de l’annuaire.
Ci-dessous sont les champs exigés pour le dossier de membre d'utilisateur de groupe :
Nom de champ de synchronisation pour les groupes (ex. : GROUP_SAMAccountName)
Nom de champ de synchronisation pour les utilisateurs (ex. : USER_SAMAccountName)
Il est possible de produire un fichier d'exportation pour des données d'utilisateur en employant la commande suivante :
Avec MONSERVEUR étant le nom du serveur accueillant l'annuaire, file.CSV le nom du fichier résultant, OU=myOu,DC=monorganisation,DC=com le chemin du contenant en lequel vous voulez la liste d'utilisateurs.
Pour exécuter cette synchronisation automatiquement, ce process d'exportation de données doit être ajouté aux tâches planifiées du serveur avant que le script de synchronisation soit couru. Pour ajouter une tâche, voir la documentation d'administrateur pour le module de synchronisation. Cette méthode ne permet pas à des groupes d'être synchronisés.
Le connecteur SCIM vous permet de définir un nouveau répertoire qui sera utilisé par Azure Active Directory pour synchroniser les utilisateurs et les groupes. Pour des informations sur comment le configurer, voir la section dans le guide .
Les fichiers log de la synchronisation des annuaires sont paramétrés dans l’onglet du .
Chaque synchronisation manuelle ou automatique est enregistrée dans les fichiers log et est disponible pour visualisation aux administrateurs en sélectionnant dans le menu d’annuaires.
Par défaut, 31 jours de fichiers log sont entretenus. Ce paramètre peut être changé par l’administrateur dans le panneau de configuration.
Chaque fichier log contient les détails de chaque action de synchronisation effectuée incluant une liste de tous les utilisateurs et groupes ajoutés, modifiés, ou supprimés (archivés). Même les avertissements (ex. : adresses courriels manquantes) et les erreurs sont inclus. Les fichiers log peuvent être visualisés ou supprimés.
Les fichiers logs se retrouvent dans le serveur WorkflowGen sous le répertoire d’application \wfgen dans l’endroit suivant : \wfgen\App_Data\LogFiles\Dir\Synchro.
<configuration>
<appSettings>
<add key="MySecretKey1" value="4n(#N$HT0$Bohv!" />
<add key="MySecretKey2" value="9et9tzV{Hnn]EsDE" />
<add key="MySecretKey3" value="e#8BHvXa8N*LvFaY" />
<add key="EngineMacroAppSettings" value="MySecretKey1, MySecret*" />
</appSettings>
</configuration>Ajout, modification et suppression : Il est possible de supprimer des utilisateurs d’un annuaire de WorkflowGen par synchronisation. Avec ce mode lorsqu’un utilisateur est présent dans l’annuaire WorkflowGen, mais pas dans l’annuaire à importer, celui-ci est supprimé. Cette suppression n’est pas réelle dans certains cas. Pour un meilleur suivi des actions et des utilisateurs, les utilisateurs à supprimer ayant effectués des actions sont soit désactivés soit archivés. Ainsi même après la « suppression » d’un utilisateur, il est possible d’avoir un suivi des traitements qui l’ont concerné.
636Le chemin dans l’arborescence LDAP du serveur.
Département TI/Organisation/Département3/OrganisationLes filtres de requêtes LDAP ne sont pas supportés.
La requête de groupe est fondamentalement le même que la requête de l’utilisateur.
Les groupes et les utilisateurs liés à ceux-ci doivent exister dans le même chemin LDAP, sinon les combinaisons de groupe/utilisateur hors du chemin seront exclues de la synchronisation et apparaîtront comme des erreurs dans le fichier log. Ceci se produit habituellement quand les groupes d’AD sont définis comme des CN dans un OU qui pointe aux utilisateurs qui font partis à d'autres OU en dehors du chemin LDAP fourni.
Par exemple, si le chemin de LDAP est défini comme suit : /Organisation/Département1, et dans cet OU le groupe de /Organisation/Département1/Équipe1 pointe à des utilisateurs dans l’OU /Organisation/Département2, cette situation se manifestera. Dans ce cas-ci, on suggère d’utiliser un chemin de LDAP qui inclut l'OU parent qui sont inclus tous les groupes requis, ou d’utiliser le type de connecteur de « LDAP » pour créer des requêtes raffinées qui pointe spécifiquement aux utilisateurs/groupes nécessaires.
(aucun)
Responsable
manager
Téléphone
telephoneNumber
Portable
mobile
Fax
facSimileNumber
Pager
pager
Bureau
physicalDeliveryOfficeName
Département
department
Entreprise
company
Fonction
title
Type d’employé
employeeType
Initiales
initials
Titre
personalTitle
Numéro d’employé
employeeID
Adresse postale
postalAddress
Code postal
postalCode
Ville
l
État / Région
st
Pays
co
Chemin LDAP
ADsPath
Nom affiché
cn
Nom distinctif
distinguishedName
Champ personnalisé 1
extensionAttribute1
Champ personnalisé 2
extensionAttribute2
Champ personnalisé 3
extensionAttribute3
Champ personnalisé 4
extensionAttribute4
Champ personnalisé 5
extensionAttribute5
Identifiant système
objectSid
cn
Nom distinctif
DistinguishedName
Identifiant système
objectSid
Le domaine de premier niveau.
Le chemin dans l’arborescence LDAP du serveur, et/ou filtres.
Département TILes groupes et les utilisateurs qui leur sont liés doivent exister dans le même chemin LDAP, sinon des combinaisons de groupes et utilisateurs incompatibles seront exclus de la synchronisation et apparaîtront comme des erreurs dans le journal de synchronisation. Cela se produit généralement lorsque des groupes AD sont définis comme des CN dans une UO qui pointent vers des utilisateurs qui sont définis hors de la portée du LDAP spécifié.
Par exemple, cela se produira si le chemin LDAP est défini à lier uniquement à l’UO /Societe/Departement1, et dans cette UO le groupe /Societe/Departement1/Equipe1 pointe vers des utilisateurs dans /Societe/Departement2. Dans ce cas, il est suggéré de choisir une requête utilisateur qui inclut toutes les UO qui sont impliquées dans les groupes.
(aucun)
Responsable (doit être un username valide)
manager
Téléphone
telephoneNumber
Portable
mobile
Fax
facSimileNumber
Pager
pager
Bureau
physicalDeliveryOfficeName
Département
department
Entreprise
company
Fonction
title
Type d’employé
employeeType
Initiales
initials
Titre
personalTitle
Numéro d’employé
employeeID
Adresse postale
postalAddress
Code postal
postalCode
Ville
l
État/Région
st
Pays
co
Chemin LDAP
ADsPath
Nom affiché
cn
Nom distinctif
distinguishedName
Champ personnalisé 1
extensionAttribute1
Champ personnalisé 2
extensionAttribute2
Champ personnalisé 3
extensionAttribute3
Champ personnalisé 4
extensionAttribute4
Champ personnalisé 5
extensionAttribute5
Identifiant système
objectSid
cn
Nom distinctif
distinguishedName
Identifiant système
objectSid
(aucun)
Responsable (doit être un username valide)
manager
Téléphone
telephoneNumber
Portable
mobile
Fax
facSimileNumber
Pager
pager
Bureau
physicalDeliveryOfficeName
Département
department
Entreprise
company
Fonction
title
Type d’employé
employeeType
Initiales
initials
Titre
personalTitle
Numéro d’employé
employeeID
Adresse postale
postalAddress
Code postal
postalCode
Ville
l
État/Région
st
Pays
co
Chemin LDAP
(aucun)
Nom affiché
(aucun)
Nom distinctif
(aucun)
Champ personnalisé 1
(aucun)
Champ personnalisé 2
(aucun)
Champ personnalisé 3
(aucun)
Champ personnalisé 4
(aucun)
Champ personnalisé 4
(aucun)
Identifiant système
(aucun)
WorkflowGen
Active Directory
Username
sAMAccountName
Mots de passe
userPassword
Nom
sn
Prénom
givenName
mail
WorkflowGen
Active Directory
Nom
sAMAccountName
Description
Description
mail
Code groupe
groupCode
Chemin LDAP
AdsPath
WorkflowGen
LDAP
Username
sAMAccountName
Mots de passe
(aucun)
Nom
sn
Prénom
givenName
mail
WorkflowGen
LDAP
Nom
sAMAccountName
Description
Description
mail
Code groupe
groupCode
Chemin LDAP
AdsPath
WorkflowGen
Fichier texte
Username
sAMAccountName
Mots de passe
(aucun)
Nom
sn
Prénom
givenName
mail
WorkflowGen
Fichier texte
Nom
sAMAccountName
Description
Description
Fuseaux horaires par défaut
Nom affiché
Fuseaux horaires par défaut
Nom affiché
Fuseaux horaires par défaut
LDAP://nomduserveur:port/OU=Département TI, OU=Unité2, DC=monorganisation,DC=comLDAP://monserveur:port/DC=monorganisation,DC=com;(&(objectCategory=person)(objectClass=user)(sn=*)(sAMAccountName=*)(memberOf=CN=TheSpecificCN,OU=LowestOU,OU=HigherOU,DC=the company,DC=com)(!(userAccountControl:1.2.840.113556.1.4.803:=2)));adsPath,objectSid,sAMAccountName,sn,GivenName,mail,telephoneNumber,mobile,pager,facSimileTelephoneNumber,department,company,EmployeeType,EmployeeId,title,initials,postalAddress,postalCode,physicalDeliveryOfficeName,st,L,co,manager;subtreeLDAP://monserveur:port/DC=monorganisation,DC=com;(&(objectClass=group));adsPath,objectSid,sAMAccountName,Description;subtreeLDAP://monserveur:port/DC=monorganisation,DC=com;(&(objectCategory=person)(objectClass=user)(sn=*)(sAMAccountName=*) (memberOf=CN=TheSpecificCN,OU=LowestOU,OU=HigherOU,DC=the company,DC=com)(!(userAccountControl:1.2.840.113556.1.4.803:=2)));adsPath,objectSid,sAMAccountName,sn,GivenName,mail,telephoneNumber,mobile,pager,facSimileTelephoneNumber,department,company,EmployeeType,EmployeeId,title,initials,postalAddress,postalCode,physicalDeliveryOfficeName,st,L,co,manager;subtreeLDAP://intellera/dc=intellera,dc=com;(&(objectClass=group)(|(sAMaccountName=Group1) (sAMaccountName=Group2)));adsPath,objectSid,sAMAccountName,Description;subtreecsvde -f file.csv -s MONSERVEUR -d "OU=myOu,DC=monorganisation,DC=com" -p subtree –r "(objectClass=OrganizationalPerson)" -l "ADsPath,cn,displayName,givenName,sn,sAMAccountName,mail, telephoneNumber,mobile, pager,facSimileTelephoneNumber,physicalDeliveryOfficeName,department,company, initials,title,employeeID,employeeType,postalAddress,postalCode,l,st,co,personalTitle"sn;givenName;sAMAccountName;mail;
"UTILISATEUR-01";"Patricia Stone";"pstone";"[email protected]";
"UTILISATEUR-02";"John Doe";"jdoe";"[email protected]";
"UTILISATEUR-03";"Jack Ryan";"jryan";"[email protected]";
"UTILISATEUR-04";"Abed Nadir";"anadir";"[email protected]";sAMAccountName;Description
"HR";"GRP1-01"
"IT";"GRP1-02"GROUP_sAMAccountName;USER_sAMAccountName
"HR";"psmith"
"HR";"jdoe"
"IT";"jryan"
"IT";"tgraham"
L'application de workflow EXECSQL vous permet d'exécuter une ou plusieurs requêtes SQL dans un processus.
Elle vous permet de récupérer des informations au travers de requêtes SELECT par exemple, afin de pouvoir utiliser le résultat dans des conditions du processus.
L'application EXECSQL requiert les paramètres CONNECTION_NAME (qui correspond au nom de la connexion) et QUERY (qui correspond à la requête à exécuter).
Il est possible de spécifier une ou plusieurs commandes par action EXECSQL. Pour ceci, les paramètres doivent être préfixés par CMDx_, où x correspond au numéro de la commande (p.ex. : CMD1_).
Il est possible de définir pour chaque requête des paramètres à utiliser lors de l'exécution. Les paramètres peuvent être définis de deux façons, soit en utilisant le préfixe QUERY_PARAM, soit en utilisant un arobase (@).
Vous pouvez utiliser QUERY_PARAM_MyParam ou @MyParam, où MyParam correspond au nom du paramètre défini dans la requête.
SELECTSCALARSELECTINSERTVoici une autre possibilité pour les paramètres de requête :
UPDATEDELETESCALARLes types de requête supportés sont SELECT, INSERT, UPDATE, DELETE , SCALAR et PROCEDURE.
L'application supporte la gestion des transactions SQL.
Il est possible d'utiliser une connexion globale pour plusieurs commandes. Pour ceci, il ne faut pas préfixer le paramètre CONNECTION_NAME par CMDx_. Il n'est pas possible d'utiliser une connexion globale et une connexion locale (p.ex. : CONNECTION_NAME et CMD2_CONNECTION_NAME).
Il est possible d'utiliser une transaction globale pour plusieurs commandes. Pour ceci, il ne faut pas préfixer le paramètre TRANSACTION par CMDx_. Il n'est pas possible d'utiliser une transaction globale et une transaction locale (ex: TRANSACTION et CMD2_TRANSACTION). Il est nécessaire de définir une connexion globale pour pouvoir définir une transaction globale.
Des logs d'application sont disponibles. Ceux-ci peuvent être spécifiés en définissant la valeur du paramètre ExecSqlLogLevel dans le fichier web.config sur 0 pour désactiver la journalisation, 1 pour les logs d'erreur, 2 pour des logs d'informations ou 3 pour les logs de débogage; la valeur par défaut est 0.
IN
Lorsque défini sur CATCH, l'application ne retournera pas d'erreur à WorkflowGen. Ceci permettra de stocker un message d'erreur dans le paramètre ERROR_MESSAGE et de continuer l'exécution.
Par défaut : THROW
TIMEOUT
NUMERIC
IN
Indique le nombre de secondes à définir dans le temps d'exécution de la commande
Par défaut : 30
FORM_DATA
FILE
INOUT
Fichier FORM_DATA contenant la définition XML du processus
FORM_DATA_GRIDVIEW
TEXT
IN
Identifiant du tableau à alimenter dans le FORM_DATA
RESULT_CSV_SEPARATOR
TEXT
IN
Séparateur utilisé dans la valeur ou fichier CSV de retour
Par défaut : , (virgule)
OUT
Contient le résultat de la requête au format JSON
RESULT_JSON_FILE
FILE
OUT
Contient le résultat de la requête au format JSON stocké dans un fichier .json
RESULT_XML
TEXT
OUT
Contient le résultat de la requête au format XML
RESULT_XML_FILE
FILE
OUT
Contient le résultat de la requête au format XML stocké dans un fichier .xml
RESULT_CSV
TEXT
OUT
Contient le résultat de la requête au format CSV
Les données sont séparées suivant le séparateur défini dans le paramètre RESULT_CSV_SEPARATOR
RESULT_CSV_FILE
FILE
OUT
Contient le résultat de la requête au format CSV stocké dans un fichier .csv
Les données sont séparées suivant le séparateur défini dans le paramètre RESULT_CSV_SEPARATOR
OUT
{ "TABLE":[ { "LASTNAME":"Administrator", "FIRSTNAME":"WorkflowGen", "USERNAME":"wfgen_admin" }, { "LASTNAME":"Doe", "FIRSTNAME":"John", "USERNAME":"john.doe" } ] }
RESULT_JSON_FILE
FILE
OUT
result.json
RESULT_CSV
TEXT
OUT
"LASTNAME","FIRSTNAME","USERNAME" "Administrator","WorkflowGen","wfgen_admin"
"Doe","John","john.doe"
RESULT_CSV_FILE
FILE
OUT
result.csv
RESULT_ROW_LASTNAME
TEXT
OUT
Administrator
RESULT_ROW1_FIRSTNAME
TEXT
OUT
WorkflowGen
RESULT_ROW2_USERNAME
TEXT
OUT
john.doe
INOUT
FORM_DATA
FORM_DATA_GRIDVIEW
TEXT
IN
REQUEST_GRID
IN
INSERT INTO WFCATEGORY (ID_CATEGORY,NAME,DESCRIPTION) VALUES (@IdCategory, @Name, @Description)
QUERY_PARAM_IdCategory
NUMERIC
IN
1
QUERY_PARAM_Name
TEXT
IN
NomCategorie
QUERY_PARAM_Description
TEXT
IN
Description de la catégorie
IN
INSERT INTO WFCATEGORY (ID_CATEGORY,NAME,DESCRIPTION) VALUES (@IdCategory, @Name, @Description)
@IdCategory
NUMERIC
IN
1
@Name
TEXT
IN
NomCategorie
@Description
TEXT
IN
Description de la catégorie
IN
UPDATE WFCATEGORY SET NAME = @Name WHERE ID_CATEGORY = @IdCategory
QUERY_PARAM_IdCategory
NUMERIC
IN
1
QUERY_PARAM_Name
TEXT
IN
NouveauNomCategorie
IN
DELETE FROM WFCATEGORY WHERE ID_CATEGORY = @IdCategory
QUERY_PARAM_IdCategory
NUMERIC
IN
1
IN
INSERT_CATEGORY
QUERY_PARAM_ID_CATEGORY
NUMERIC
IN
1
QUERY_PARAM_NAME
TEXT
IN
NomCategorie
QUERY_PARAM_DESCRIPTION
TEXT
IN
Description de la catégorie
IN
EXEC GET_USER @USERNAME = @User
QUERY_PARAM_User
NUMERIC
IN
wfgen_admin
IN
SELECT COUNT(*) FROM USERS
RESULT
NUMERIC
OUT
2
IN
INSERT INTO WFCATEGORY (ID_CATEGORY,NAME,DESCRIPTION) VALUES (@IdCategory, @Name, @Description)
CMD1_QUERY_PARAM_IdCategory
NUMERIC
IN
1
CMD1_QUERY_PARAM_Name
TEXT
IN
NomCategorie
CMD1_QUERY_PARAM_Description
TEXT
IN
Description de la catégorie
CMD2_QUERY
TEXT
IN
SELECT NAME FROM WFCATEGORY WHERE ID_CATEGORY = @IdCategory
CMD2_@IdCategory
NUMERIC
IN
1
CMD2_RESULT_ROW_NAME
TEXT
OUT
NomCategorie
IN
INSERT INTO WFCATEGORY (ID_CATEGORY,NAME,DESCRIPTION) VALUES (1, "Nom", "Description")
CMD1_TRANSACTION
TEXT
IN
Y
CMD1_ON_ERROR
TEXT
IN
CATCH
CMD1_COMMIT
TEXT
OUT
Y
CMD1_ERROR_MESSAGE
TEXT
OUT
NULL
CMD2_TYPE
TEXT
IN
INSERT
CMD2_QUERY
TEXT
IN
INSERT INTO WFCATEGORY (ID_CATEGORY,NAME,DESCRIPTION) VALUES (1, "AutreNom", "Autre description")
CMD2_TRANSACTION
TEXT
IN
Y
CMD2_ON_ERROR
TEXT
IN
CATCH
CMD2_COMMIT
TEXT
OUT
N
CMD2_ERROR_MESSAGE
TEXT
OUT
Cannot insert duplicate key in object 'dbo.WFCATEGORY'. The duplicate key value is (1).
Paramètre
Type
Direction
Description
CONNECTION_NAME
TEXT
IN
Nom de la connexion à utiliser
Le nom de la connexion doit être défini dans le fichier web.config de WorkflowGen.
QUERY
TEXT
IN
Requête à exécuter
Paramètre
Type
Direction
Description
TYPE
TEXT
IN
Type de la requête à exécuter
Les types supportés sont :
SELECT (par défaut)
INSERT
UPDATE
DELETE
SCALAR
PROCEDURE
TRANSACTION
TEXT
IN
Lorsque défini sur Y , l'application déclenche une transaction SQL avant l'exécution de la requête et effectuera un commit ou rollback en fonction du résultat
Par défaut : N
ON_ERROR
Paramètre
Type
Direction
Description
QUERY
TEXT
IN
SELECT * FROM USERS WHERE LASTNAME = @UserLastname
QUERY_PARAM_UserLastName / @UserLastName
TEXT
IN
Doe
Paramètre
Type
Direction
Description
ERROR_MESSAGE
TEXT
OUT
Contient le message d'erreur dans le cas où la valeur du paramètre contient CATCH et qu'une exception est levée lors de l'exécution
RESULT_COMMIT
TEXT
OUT
Indique si un commit a été exécuté sur la transaction
Valeurs possibles : Y ou N
Paramètre
Type
Direction
Description
RESULT_ROWx_fieldName
TEXT
NUMERIC
DATETIME
OUT
Contient la valeur de la colonne fieldName pour la ligne x
Vous devez remplacer fieldname par votre nom de colonne (p.ex. : LASTNAME) et x par le numéro de la ligne (p.ex. : 2).
RESULT_ROW_fieldName
TEXT
NUMERIC
DATETIME
OUT
Contient la valeur de la colonne fieldName pour la première ligne retournée
RESULT_JSON
Paramètre
Type
Direction
Description
RESULT
NUMERIC
OUT
Contient le résultat numérique d'une requête de type SCALAR
Paramètre
Type
Direction
Valeur
CONNECTION_NAME
TEXT
IN
MainDbSource
QUERY
TEXT
IN
SELECT LASTNAME, FIRSTNAME, USERNAME FROM USERS
RESULT_JSON
Paramètre
Type
Direction
Valeur
CONNECTION_NAME
TEXT
IN
MainDbSource
QUERY
TEXT
IN
SELECT LASTNAME as REQUEST_GRID_LASTNAME, FIRSTNAME as REQUEST_GRID_FIRSTNAME, USERNAME as REQUEST_GRID_USERNAME FROM USERS
FORM_DATA
Paramètre
Type
Direction
Valeur
CONNECTION_NAME
TEXT
IN
MainDbSource
TYPE
TEXT
IN
INSERT
QUERY
Paramètre
Type
Direction
Valeur
CONNECTION_NAME
TEXT
IN
MainDbSource
TYPE
TEXT
IN
INSERT
QUERY
Paramètre
Type
Direction
Valeur
CONNECTION_NAME
TEXT
IN
MainDbSource
TYPE
TEXT
IN
UPDATE
QUERY
Paramètre
Type
Direction
Valeur
CONNECTION_NAME
TEXT
IN
MainDbSource
TYPE
TEXT
IN
DELETE
QUERY
Paramètre
Type
Direction
Valeur
CONNECTION_NAME
TEXT
IN
MainDbSource
TYPE
TEXT
IN
PROCEDURE
QUERY
Paramètre
Type
Direction
Valeur
CONNECTION_NAME
TEXT
IN
MainDbSource
TYPE
TEXT
IN
SELECT
QUERY
Paramètre
Type
Direction
Valeur
CONNECTION_NAME
TEXT
IN
MainDbSource
TYPE
TEXT
IN
SCALAR
QUERY
Paramètre
Type
Direction
Valeur
CONNECTION_NAME
TEXT
IN
MainDbSource
CMD1_TYPE
TEXT
IN
INSERT
CMD1_QUERY
Paramètre
Type
Direction
Valeur
CONNECTION_NAME
TEXT
IN
MainDbSource
CMD1_TYPE
TEXT
IN
INSERT
CMD1_QUERY
TEXT
TEXT
TEXT
FILE
TEXT
TEXT
TEXT
TEXT
TEXT
TEXT
TEXT
TEXT
TEXT
<?xml version="1.0" standalone="yes"?>
<NewDataSet>
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Table1">
<xs:complexType>
<xs:sequence>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="REQUEST_GRID">
<xs:complexType>
<xs:sequence>
<xs:element name="REQUEST_GRID_LASTNAME" type="xs:string" minOccurs="0"/>
<xs:element name="REQUEST_GRID_FIRSTNAME" type="xs:string" minOccurs="0"/>
<xs:element name="REQUEST_GRID_USERNAME" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
<Table1></Table1>
</NewDataSet>L'application de workflow RESTAPICLIENT vous permet d'appeler des points de terminaison de l'API REST pour échanger des informations avec d'autres applications via des requêtes HTTP. Elle peut également être utilisée pour créer des intégrations avec des applications extensibles (telles que les services Azure et Slack).
RESTAPICLIENT vous permet également d'appeler un point de terminaison de l'API REST à l'aide de charges utiles application/json ou application/x-www-form-urlencoded. RESTAPICLIENT recevra et traitera ensuite la réponse de l'API externe en mappant le contenu de la réponse avec les paramètres OUT définis.
L'application RESTAPICLIENT requiert le paramètre APP_URL, qui correspond au point de terminaison de l'API REST.
Le type de contenu du charge utile de demande par défaut (APP_REQUEST_CONTENT_TYPE) est application/json. Le type de contenu application/x-www-form-urlencoded est également supporté.
APP_URL facultatifs📌 Exemple
Les paramètres définis ci-dessus généreront l'URL suivante dans APP_URL :
📌 Exemple
Les paramètres définis ci-dessus généreront deux en-têtes dans la charge utile de la demande :
L'application supporte également certains paramètres d'en-tête d'autorisation prédéfinis afin d'éviter d'ajouter ces paramètres d'en-tête HTTP avec le nom de paramètre APP_HEADER_xxx.
Il existe deux manières différentes de préparer la charge utile de demande. La première consiste à accéder à la totalité de la charge de demande (voir Définir la charge utile de la demande entière via un paramètre ci-dessous); la seconde consiste à créer le JSON ou l'URL codée via les paramètres IN (voir les sections Charge utile de demande encodée en URL et la Charge utile de demande JSON ci-dessous.
Les paramètres suivants peuvent être utilisés lorsque vous avez accès à l'ensemble de la charge utile de demande ou que le type de contenu de la demande n'est pas application/json ni application/x-www-form-urlencoded. Vous pouvez définir la charge de cette demande dans une donnée de type File ou Text ou directement dans la valeur de texte.
Charge utile de demande encodée en URL
Les exemples suivants montrent comment créer une charge utile de demande avec application/x-www-form-urlencoded comme type de contenu.
Charge utile de demande en URL standard
Les paramètres suivants sont utilisés pour créer une charge utile de demande encodée en URL standard :
Les paramètres définis ci-dessus généreront la charge utile de demande suivante :
Charge utile de demande JSON encodée dans un nom de clé
Les paramètres suivants permettent de générer une charge JSON encodée dans un nom de clé :
Les paramètres définis ci-dessus généreront la charge utile de demande suivante :
Charge utile de demande JSON
Les exemples suivants montrent comment créer une charge utile de demande avec application/json comme type de contenu.
Charge utile de demande JSON standard
Les paramètres suivants sont utilisés pour créer une charge utile de demande JSON simple :
Les paramètres définis ci-dessus généreront la charge utile de demande suivante :
Si vous souhaitez convertir ce JSON en tableau, vous devez définir la valeur du paramètre APP_REQUEST_CONTENT_IS_ARRAY sur Y.
Le paramètre APP_REQUEST_CONTENT_IS_ARRAY défini sur Y générera la charge utile de demande suivante :
Pour savoir comment créer un JSON plus complexe, voir les sections Définition d'un tableau JSON dans une propriété JSON et Définition d'un objet ou d'un tableau JSON dans une propriété JSON avec le paramètre de suffixe __JSON ci-dessous.
Définition d'un tableau JSON dans une propriété JSON
Pour définir un tableau dans une propriété JSON, vous devez définir le chemin de la propriété (par exemple, person.spokenlanguages) suivi du suffixe __X, où X est le numéro d'index du tableau.
Les paramètres suivants permettent de définir un tableau JSON dans une propriété JSON :
Les paramètres définis ci-dessus généreront la charge utile de demande suivante :
Si vous souhaitez définir un tableau JSON d'objets JSON (p.ex. "spokenlanguages": [{"spokenlanguage":"french"}, {"spokenlanguage":"english"}]) dans une propriété JSON, voir la section suivante.
Les paramètres du tableau seront ordonnés en fonction de leur numéro d'index.
Les numéros index n'ont pas de limite (p.ex. person.spokenlanguages__9999).
Définition d'un objet ou d'un tableau JSON dans une propriété JSON avec le paramètre de suffixe __JSON
Pour définir un objet / un tableau JSON dans une propriété JSON, vous devez définir le chemin de la propriété (p.ex. person.children) suivi du suffixe __JSON avec l'objet ou le tableau JSON comme valeur de paramètre.
Les paramètres suivants permettent de définir un objet ou un tableau JSON dans une propriété JSON:
Les paramètres définis ci-dessus généreront la charge utile de demande suivante :
Une exception sera levée si plusieurs propriétés JSON sont spécifiées dans les paramètres IN (p.ex. person.childrenetperson.children__JSON).
Le suffixe __JSON utilise
L'application supporte le mappage des paramètres OUT avec la réponse HTTP :
L'application supporte également des paramètres OUT personnalisés supplémentaires pour mapper la charge utile d'une réponse JSON simple.
📌 Exemple
Charge utile de réponse JSON :
Les paramètres suivants permettront de mapper la charge utile de la réponse dans différentes données de processus :
Pour mapper des JSON complexes, voir la section suivante.
L'application supporte le langage de requête JSONPath (similaire aux expressions XPath en XML). Ce langage vous permet d'extraire des données spécifiques d'un fichier JSON. Pour plus de détails sur la syntaxe JSONPath, voir .
📌 Exemple
Charge utile de réponse JSON :
Par exemple, nous voulons ici obtenir les noms des petits-fils de Charles âgés de plus de sept ans, et nous voulons également que ces noms soient séparés par un | (en utilisant le paramètre IN APP_JSONPATH_DELIMITER). Pour obtenir cette information, les paramètres suivants doivent être définis :
Dans le nom du paramètre PARAM1__JSONPATH, le nom de PARAM1 n'est pas pertinent, mais il doit être suivi du suffixe __JSONPATH (deux traits de soulignement sont utilisés dans le suffixe).
Cet exemple montre comment obtenir un jeton d'accès et l'utiliser pour créer une rubrique Event Grid. Cela peut être fait en créant un processus avec deux actions ayant RESTAPICLIENT comme application. Le workflow ci-dessous illustre cet exemple :
Les sections suivantes décrivent les paramètres à déclarer pour chaque action.
GET_TOKEN : Obtention d'un jeton d'accès OAuth 2.0Les paramètres suivants sont nécessaires pour obtenir un jeton d'accès afin d'utiliser l'API de gestion Azure Resource. Ce jeton sera stocké dans le paramètre OUT access_token et sera utilisé lors de la création d'une rubrique Event Grid dans la section suivante.
Les paramètres définis ci-dessus généreront la charge utile de demande suivante :
Voici la réponse de l'API Azure :
Le paramètre OUT access_token est mappé avec la propriété JSON access_token.
Pour plus d'informations sur l'obtention d'un jeton d'accès pour utiliser l'API de ressource Azure, voir .
CREATE_TOPIC : création d'une rubrique Event GridLes paramètres suivants sont nécessaires pour créer une rubrique Event Grid à l'aide de l'API de gestion des ressources Azure.
Les paramètres définis ci-dessus généreront la charge utile de demande suivante :
Voici la réponse de l'API Azure:
Pour plus d'informations sur la création d'une rubrique Event Grid et sur l'API Azure REST, voir .
En cas d'erreur Impossible de créer le canal sécurisé SSL / TLS, le chiffrement renforcé doit être activé en exécutant le code suivant dans PowerShell :
Redémarrez votre serveur IIS après avoir exécuté les commandes.
APP_METHOD) est GET. D'autres méthodes de requête (POST, PUT, DELETE, etc...) sont également supportées.
En cas d'erreur, lorsque le paramètre IN APP_RESPONSE_IGNORE_ERROR est défini et que sa valeur est Y, l'erreur est ignorée et les paramètres OUT définis (APP_RESPONSE_STATUS ou APP_RESPONSE_CONTENT) sont mappés. Sinon, une exception sera levée.
Les paramètres de l’application étant sensibles à la casse, ils doivent utiliser la notation acceptée par l’API.
Le délai d'expiration de la demande par défaut est de 3 000 millisecondes; cette valeur par défaut peut être modifiée en définissant la valeur du paramètre RestApiClientRequestTimeout dans le fichier web.config. Le délai d'expiration de la demande peut également être défini dans le paramètre IN APP_TIMEOUT; le délai d'expiration maximum est de 60 000 millisecondes (1 heure).
✏️ Note : Cette valeur de délai d'expiration doit être inférieure à la valeur de délai d'expiration de la demande IIS.
Les en-têtes de requête HTTP peuvent être définis avec les paramètres APP_HEADER_xxx, où xxx est le nom du champ d'en-tête. Pour plus d'informations, voir la section Paramètres d'en-tête.
La charge utile de la demande peut être définie dans les paramètres IN APP_REQUEST_CONTENT_FILE ou APP_REQUEST_CONTENT. Lorsque les deux paramètres sont définis, le paramètre APP_REQUEST_CONTENT_FILE est prioritaire. Pour plus d'informations sur ces paramètres, voir la section Charge utile de demande.
La réponse de l'API REST peut être mappée sur les paramètres OUT APP_RESPONSE_CONTENT_FILE ou APP_RESPONSE_CONTENT. Les deux paramètres peuvent être définis en même temps. Pour plus d'informations sur ces paramètres, voir la section Charge utile de réponse.
Outre les paramètres facultatifs listés ci-dessous, vous pouvez également ajouter des paramètres supplémentaires IN et OUT personnalisés pour envoyer et recevoir des données personnalisées définies par l'utilisateur vers et depuis l'API externe. Pour plus d'informations et des exemples sur ces paramètres IN et OUT personnalisés, voir les sections Charge utile de demande et Charge utile de réponse.
L'application supporte le langage de requête JSONPath (voir https://github.com/json-path/JsonPath), qui permet d'extraire des données spécifiques à partir d'une réponse JSON (similaire aux expressions XPath en XML). Pour plus d'informations sur l'utilisation de cette application avec des exemples, voir la section Charge utile de réponse.
Des logs d'application sont disponibles. Ceux-ci peuvent être spécifiés en définissant la valeur du paramètre RestApiClientLogLevel dans le fichier web.config sur 0 pour désactiver la journalisation, 1 pour les logs simples ou 2 pour les logs de débogage; la valeur par défaut est 0.
La longueur de réponse maximale par défaut est de 4194304 caractères (4 Mo); cette valeur par défaut peut être modifiée en définissant la valeur du paramètre RestApiClientMaxResponseLength dans le fichier web.config.
La suppression automatique des fichiers temporaires peut être désactivée en définissant la valeur du paramètre RestApiClientEnableFilesCleanUp sur N dans le fichier web.config; la valeur par défaut est Y.
IN
Type de contenu de requête supporté par l'API externe
L’application supporte application/json et application/x-www-form-urlencoded); la valeur par défaut est application/json.
APP_RESPONSE_IGNORE_ERROR
Text
IN
Lorsque défini sur Y, l'application ignore l'erreur lorsqu'une exception WebException se produit ou que l'API externe renvoie un statut de réponse supérieur ou égal à 300; la valeur par défaut est N.
IN
dev-group-advantys
APP_URL_topicName
Text
IN
dev-topic
IN
Jeton du porteur de l'autorisation API
APP_AUTH_AZ_SAS_TOKEN
Text
IN
Jeton SAS Azure de l'autorisation API
IN
payload
IN
30
person.name
Text
IN
John
IN
chinese
Une séquence d'index correcte n'est pas obligatoire (p.ex.person.spokenlanguages__90, person.spokenlanguages__30). La valeur du paramètre __30 sera le premier paramètre de tableau et __90 sera le deuxième.
Une exception sera levée si plusieurs propriétés JSON sont spécifiées dans les paramètres IN (p.ex. person.spokenlanguages etperson.spokenlanguages__0).
Le suffixe __X utilise deux caractères de soulignement.
La valeur du paramètre ne peut être qu'une valeur de texte.
OUT
Charge utile de la réponse ou message d'erreur dans un fichier
APP_RESPONSE_CONTENT
Text
OUT
Charge utile de la réponse ou message d'erreur
APP_RESPONSE_CONTENT_IS_ARRAY
Text
OUT
Renvoie Y si la charge JSON est un tableau
Seulement supporté pour les réponses de type de contenu application/json.
OUT
DATA_AGE
person.name
Text
OUT
DATA_NAME
APP_JSONPATH_DELIMITER est une virgule (,) lorsque ce paramètre n'est pas défini.IN
POST
APP_REQUEST_CONTENT_TYPE
Text
IN
application/x-www-form-urlencoded
grant_type
Text
IN
client_credentials
client_id
Text
IN
b7e29e2f-6e2b-4375-9684-8151431d4ca6
client_secret
Text
IN
lxy/IwKyTedHUWMeeUtyCtu7/YUy0rNGoY3NNWXXotI=
resource
Text
IN
https://management.core.windows.net/
access_token
Text
OUT
DATA_ACCESS_TOKEN
IN
dev-group-advantys
APP_URL_topicName
Text
IN
new-topic-example
APP_URL_api-version
Text
IN
2018-09-15-preview
APP_METHOD
Text
IN
PUT
APP_REQUEST_CONTENT_TYPE
Text
IN
application/json
APP_AUTH_BEARER_TOKEN
Text
IN
DATA_ACCESS_TOKEN
location
Text
IN
canadaeast
Paramètre
Type
Direction
Description
APP_URL
Text
IN
URL de l'API externe
Paramètre
Type
Direction
Description
APP_TIMEOUT
Numeric
IN
Intervalle de temps maximum entre l'envoi de la demande et la réception de la réponse
La valeur par défaut est 3 000 millisecondes et le maximum est 60 000 millisecondes. La valeur par défaut peut être modifiée en définissant la valeur du paramètre RestapiClientRequestTimeout dans le fichier web.config.
✏️ Note : Cette valeur de délai d'expiration doit être inférieure à la valeur de délai d'expiration de la demande IIS.
APP_METHOD
Text
IN
Méthode d'API
La valeur par défaut est GET. POST, PUT, DELETE, HEAD et PATCH sont également supportés.
APP_REQUEST_CONTENT_TYPE
Paramètre
Type
Direction
Description
APP_URL_xxx
Text
IN
Paramètre facultatif d'URL de l'API où xxx est le nom du paramètre d'URL
Paramètre
Type
Direction
Valeur
APP_URL
Text
IN
https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}
APP_URL_subscriptionId
Text
IN
457a2a46-7a7f-4afa-940d-8779e1425fa8
APP_URL_resourceGroupName
Paramètre
Type
Direction
Description
APP_HEADER_xxx
Text
IN
Paramètres d'en-tête de l'API externe où xxx est le nom du champ d'en-tête
Paramètre
Type
Direction
Valeur
APP_HEADER_Authorization
Text
IN
Bearer AbCdEf123456
APP_HEADER_location
Text
IN
canadaeast
Paramètre
Type
Direction
Description
APP_AUTH_BASIC_USERNAME
Text
IN
Nom d'utilisateur de base de l'autorisation API
APP_AUTH_BASIC_PASSWORD
Text
IN
Mot de passe de base de l'autorisation API
API authorization Basic password; doit être utilisé avec le paramètre APP_AUTH_BASIC_USERNAME
APP_AUTH_BEARER_TOKEN
Paramètre
Type
Direction
Description
APP_REQUEST_CONTENT_FILE
File
IN
Demander une charge utile dans un fichier
APP_REQUEST_CONTENT
Text
IN
Charge utile de la demande
Paramètre
Type
Direction
Description
param1
Text
IN
value1
param2
Text
IN
value2
Paramètre
Type
Direction
Description
param1
Text
IN
value1
param2
Text
IN
value2
APP_REQUEST_CONTENT_PAYLOAD_NAME
Paramètre
Type
Direction
Valeur
person.address.street
Text
IN
160 Guy Street
person.address.zipcode
Text
IN
J4G 1U4
person.age
Paramètre
Type
Direction
Description
APP_REQUEST_CONTENT_IS_ARRAY
Text
IN
Lorsque ce paramètre est défini sur Y, l'application convertit la charge utile de la demande JSON en un tableau; la valeur par défaut est N
Uniquement supporté lors de la construction d'une charge utile de demande JSON avec des paramètres IN.
Paramètre
Type
Direction
Valeur
person.spokenlanguages__0
Text
IN
french
person.spokenlanguages__1
Text
IN
english
person.spokenlanguages__2
Paramètre
Type
Direction
Valeur
person.children__JSON
Text
IN
[{"name": "child 1"}, {"name": "child 2"}]
Paramètre
Type
Direction
Description
APP_RESPONSE_STATUS
Text/Numeric
OUT
Code statut de la réponse
APP_RESPONSE_CONTENT_TYPE
Text
OUT
Type de contenu de la réponse
APP_RESPONSE_CONTENT_FILE
Paramètre
Type
Direction
Récupérer la valeur dans une donnée
person.address.street
Text
OUT
DATA_STREET
person.address.zipcode
Text
OUT
DATA_ZIPCODE
person.age
Paramètre
Type
Direction
Valeur IN
OUT Value
APP_JSONPATH_DELIMITER
Text
IN
|
-
PARAM1__JSONPATH
Text
INOUT
person.children[?(@.name == 'Charles')].children[*].children[?(@.age > 7)].name
Paramètre
Type
Direction
Valeur
APP_URL
Text
IN
https://login.microsoftonline.com/{tenandId}/oauth2/token
APP_URL_tenantId
Text
IN
a6e70c61-fabd-4885-89f7-97121e92db7f
APP_METHOD
Paramètre
Type
Direction
Valeur
APP_URL
Text
IN
https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}?api-version={api-version}
APP_URL_subscriptionId
Text
IN
235765d9-5d62-43f4-a730-2ed71a3f8adb
APP_URL_resourceGroupName
Text
Text
Text
Text
Text
Text
File
Text
DATA1_VALUE (value will be: George|Charlotte)
Text
Text
https://management.azure.com/subscriptions/457a2a46-7a7f-4afa-940d-8779e1425fa8/resourceGroups/dev-group-advantys/providers/Microsoft.EventGrid/topics/dev-topicAuthorization: Bearer AbCdEf123456
location: canadaeastparam1=value1¶m2=value2payload: { param1: "value1", "param2": "value2" }{
"person": {
"address": {
"street": "160 Guy Street",
"zipcode": "J4G 1U4"
},
"age": 30,
"name": "John"
}
}[{
"person": {
"address": {
"street": "160 Guy Street",
"zipcode": "J4G 1U4"
},
"age": 30,
"name": "John"
}
}]{
"person": {
"spokenlanguages": ["french", "english", "chinese"]
}
}{
"person": {
"children": [{
"name": "child 1"
}, {
"name": "child 2"
}]
}
}{
"person": {
"address": {
"street": "160 Guy Street",
"zipcode": "J4G 1U4"
},
"age": 30,
"name": "John"
}
}{
"person": {
"name": "Elizabeth",
"children": [
{
"name": "Charles",
"age": 30,
"children": [
{
"name": "Nathalie",
"children": [
{
"name": "George",
"age": 8
},
{
"name": "Charlotte",
"age": 10
},
{
"name": "Jefferson",
"age": 7
}
]
},
{
"name": "Harry"
}
]
},
{
"name": "Bob",
"age": 20,
"children": [
{
"name": "John"
},
{
"name": "Mark"
}
]
}
]
}
}POST https://login.microsoftonline.com/a6e70c61-fabd-4885-89f7-97121e92db7f/oauth2/token HTTP/1.1
Host: login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials&client_id=b7e29e2f-6e2b-4375-9684-8151431d4ca6&client_secret=lxy/IwKyTedHUWMeeUtyCtu7/YUy0rNGoY3NNWXXotI=&resource=https://management.core.windows.net/{
"token_type":"Bearer",
"expires_in":"3600",
"ext_expires_in":"3600",
"expires_on":"1555951493",
"not_before":"1555947593",
"resource":"https://management.core.windows.net/",
"access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1d..."
}PUT https://management.azure.com/subscriptions/235765d9-5d62-43f4-a730-2ed71a3f8adb/resourceGroups/dev-group-advantys/providers/Microsoft.EventGrid/topics/new-topic-example?api-version=2018-09-15-preview
Host: management.azure.com
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1d...
location: canadaeast{
"properties":{
"provisioningState":"Creating",
"endpoint":null
},
"location":"canadaeast",
"tags":null,
"id":"/subscriptions/994e2fc0-937d-4110-b355-e7473acef822/resourceGroups/dev-evt-grid/providers/Microsoft.EventGrid/topics/test-from-wfg",
"name":"test-from-wfg",
"type":"Microsoft.EventGrid/topics"
}Set-ItemProperty -Path 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\.NetFramework\v4.0.30319' -Name 'SchUseStrongCrypto' -Value '1' -Type DWord
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\.NetFramework\v4.0.30319' -Name 'SchUseStrongCrypto' -Value '1' -Type DWord
Un formulaire créé avec l’éditeur intégré dispose d’un en-tête, une ou plusieurs sections, un ou plusieurs champs par section, un bouton Envoyer, un bouton Sauvegarder optionnel et un pied de page.
L’en-tête comprend un titre, un libellé et une image en option.
Le titre peut être utilisé pour afficher le nom du processus. Son texte peut être édité directement sur le formulaire.
Le libellé est utilisé pour afficher le numéro de la demande actuelle. Son identifiant par défaut est CURRENT_REQUEST et peut être référencé dans un paramètre d’action pour recevoir la macro Request.Id.
Une section comprend un titre pour afficher le nom de la section. Son texte peut être édité directement sur le formulaire.
Il peut avoir un ou plusieurs champs.
Chaque section doit avoir un identifiant unique.
Les sections peuvent seulement être alignées verticalement et réorganisées en utilisant le glisser-déplacer avec la souris.
Un champ comprend un libellé et un contrôle de saisie.
Le libellé est utilisé pour afficher le nom du champ. Son texte peut être édité directement sur le formulaire. Il peut être redimensionné et réaligné.
Une largeur fixe peut être définie globalement pour tous les libellés dans la configuration du formulaire (Général / Libellés).
Les boutons Soumettre et Enregistrer peuvent être renommés dans la configuration du formulaire (Général / Boutons).
Le bouton Enregistrer peut être activé ou désactivé.
Leur identifiants sont submitButton et saveAsDraftButton respectivement
Le pied de page comprend un libellé et une image en option.
Le libellé peut être utilisé pour afficher une note. Son texte peut être édité directement sur le formulaire.
L’image est utilisée pour afficher un logo. Elle peut être redimensionnée ou réalignée dans la configuration du formulaire (Général / Pied de page).
Cette fonctionnalité vous permet d'enregistrer une section ou un champ existant en tant que champ ou section personnalisé réutilisable dans le formulaire actuel et dans d'autres formulaires. Tout d'abord, sélectionnez une section ou un champ, puis cliquez sur l'icône Sauvegarder une section ou un champ en tant qu’outil dans la barre d'outils.
Sélectionnez Gérer les outils personnalisés depuis la liste déroulante Outils.
Ces paramètres s'appliquent aux champs de type : case à cocher – liste, case à cocher – liste verticale, bouton de radio – liste et bouton de radio – liste verticale.
Ces paramètres s'appliquent aux champs suivants : monétaire, date, date heure, numérique, mot de passe, texte multi-lignes.
Ces paramètres (exception aux éléments) s'appliquent aux champs suivants : libellé, monétaire - lecture seule, date – lecture seule, date heure – lecture seule, numérique – lecture seule, texte – lecture seule.
L’éditeur de formulaire supporte les outils de champ personnalisé. Ceci est un contrôle d’utilisateur ASP.NET. Vous pouvez créer cet outil et le déployer manuellement sur le serveur. Il doit avoir les structures des éléments, de dossiers et de fichiers suivants :
Le gabarit du contrôle d’utilisateur :
\wfgen\App_Data\Templates\Forms\[langue]\[nom du dossier]\fields\[nom du contrôle d’utilisateur].txt
Les fichiers sources du contrôle d'utilisateur :
ASCX : \wfgen\WfApps\WebForms\[nom du contrôle d’utilisateur].ascx
Quand vous entrez une balise, le champ de contrôle d'utilisateur insère automatiquement sa balise fermante. Pour écrouler un bloc de code, cliquez la flèche vers le bas, qui ensuite insérera une icône double-flèche à la place du code. Pour élargir un bloc de code, cliquez sur la flèche droite. Appuyez sur Ctrl+Espace pour afficher une liste déroulante qui contient les variables et mot-clés disponibles.
Le champ de contrôle utilisateur supporte les paramètres personnalisés des attributs (voir ).
Le menu Id dans la barre d'outils vous permet de modifier l'identifiant des sections et des champs. Vous pouvez modifier l'identifiant du libellé de l'en-tête, des sections et des champs. Les identifiants sont normalement utilisés pour identifier un élément du formulaire comme une section ou un champ d'action dans les paramètres de WorkflowGen (par exemple FORM_FIELDS_REQUIRED) ou dans le formulaire ASP.NET code-behind.
Chaque identifiant doit être unique
Il doit commencer par une lettre
Il ne peut contenir que des caractères alphanumériques et des caractères de soulignement
Il est sensible à la casse
Le menu Infobulle dans la barre d'outils vous permet de modifier les infobulles. Vous pouvez modifier seulement les info-bulles des champs du formulaire. Les infobulles sont normalement utilisés pour afficher plus d'informations sur le champ lorsque l'utilisateur déplace le pointeur de la souris sur le champ.
Le menu Format dans la barre d'outils vous permet de modifier le format des champs. Vous pouvez modifier le format des types de champs suivant : texte, monétaire, date, date heure, numérique, libellé, monétaire en lecture seule, date en lecture seule, date heure en lecture seule, numérique en lecture seule, texte en lecture seule. Les formats sont normalement utilisés pour spécifier la façon de saisir et d'afficher une valeur spécifique basée sur la langue de l'utilisateur et de la culture.
L’image est utilisée pour afficher un logo. Elle peut être redimensionnée ou réalignée dans la fenêtre de configuration du formulaire (Général / En-tête).
Une largeur et une hauteur fixe peuvent être réglées pour l’en-tête.
Lors de l’insertion d’une section sur le formulaire, la nouvelle section sera placée en dernière position.
Les sections seront redimensionnées automatiquement en fonction du plus grand champ sur le formulaire chaque fois qu’il y a un changement d’une largeur de champ.
Une largeur fixe peut être définie globalement pour les sections dans la configuration du formulaire (Général / Sections).
Les paramètres de la section peuvent être édités en utilisant l’icône crayon sur le côté droit du nom de la section.
Chaque champ doit avoir un identifiant unique.
Tous les champs dans la même section sont préfixés avec l'identifiant de la section suivi par une barre de soulignement.
Les champs d’une section peuvent êtres réorganisés verticalement en utilisant le glisser-déplacer avec la souris.
Un champ peut être déplacé d'une section à une autre en utilisant le glisser-déplacer avec la souris.
Lors de l’insertion d'un outil de champ dans le formulaire, le nouveau champ sera placé dans la dernière position de la section sélectionnée ou la première section si aucune section n’a été choisie.
Par défaut, les champs sont alignés verticalement sur la même colonne.
Plusieurs champs peuvent être alignés horizontalement (sur la même ligne) en utilisant le bouton Retirer le saut de ligne (flèche vers la gauche) sur le côté droit du premier champ.
Plusieurs champs peuvent être alignés verticalement en utilisant le bouton Insérer un saut de ligne (flèche vers la droite) sur le côté droit du premier champ.
Les paramètres du champ peuvent être édités en utilisant l’icône crayon sur le côté droit du champ.
Le titre de l’en-tête
L’image de l’en-tête
Le titre du pied de page
L’image du pied de page
Une section qui n’a pas de champs
Demande
Une section qui contient un prénom, nom, et champ de date en lecture seule, ainsi qu’une liste déroulante de catégories et un champ texte multi lignes pour description.
Standard
Une section qui contient un prénom, nom et champ de date en lecture seule
Champs par défaut
Pièce jointe
Joindre un fichier
Case à cocher
Case à cocher
Case à cocher – liste
Plusieurs cases à cocher en alignement horizontal
Case à cocher – liste verticale
Plusieurs cases à cocher en alignement horizontal
Monétaire
Contrôle pour saisir une valeur monétaire
Date
Contrôle pour saisir une valeur date
Date heure
Contrôle pour saisir une valeur date et heure
Liste déroulante
Liste des éléments pour une sélection de choix unique
Tableau
Tableau dynamique de champs de saisie; chaque colonne représente un champ et chaque ligne représente un enregistrement.
Libellé
Texte affiché en lecture seule
Liste
Liste des éléments pour une sélection multiple
Numérique
Contrôle pour saisir une valeur numérique
Mot de passe
Contrôle pour saisir un mot de passe (le texte saisi sera masqué)
Bouton radio
Bouton radio
Bouton radio – liste
Plusieurs boutons radio en alignement horizontal
Bouton radio – liste verticale
Plusieurs boutons radio en alignement vertical
Monétaire – lecture seule
Valeur monétaire en lecture seule
Date – lecture seule
Valeur date en lecture seule
Date heure – lecture seule
Valeur date/heure en lecture seule
Numérique – lecture seule
Valeur numérique en lecture seule
Texte – lecture seule
Valeur texte en lecture seule
Texte multi-lignes
Zone de texte multi-ligne
Texte
Zone de texte uni-ligne
Supprimer l'outil de champ personnalisé
Les champs des sections obligatoires sont basés sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# du côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
En lecture seule
Définit les champs de la section en lecture seule
Condition
Les champs de la section en lecture seule sont basés sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
Caché
Définit les champs de la section comme champs cachés
Condition
Les champs de la section cachés sont basés sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
Affiche la taille du fichier téléchargé à côté du lien de téléchargement
Limite de taille du fichier (ko)
Définit la taille maximale du fichier téléchargé (ko)
Message d'erreur de restriction de taille
Le message d'erreur qui s'affiche lorsque la taille maximale du fichier est dépassée
Extensions autorisées
Limite les types de fichier autorisés par extensions séparées par des virgules (ex. : txt,doc,html,xml,png)
Extensions interdites
Liste d'extensions de fichier interdites pour les liens
Message d'erreur de restriction d'extension
Le message d'erreur qui s'affiche lorsque l'extension de fichier erreur se produit
Message d'erreur de fichier vide
Le message d'erreur qui s'affiche quand il n'y a pas de fichier auquel créer un lien
Libellé du bouton ajout
Le texte d'affichage pour le bouton d'ajout
Libellé du bouton de suppression
Le texte d'affichage pour le bouton de suppression
Libellé du bouton de mise à jour
Le texte d'affichage pour le bouton de mise à jour
Libellé du bouton de remplacement
Vous permet de choisir un nouveau fichier
Mode d'affichage
Définit le mode d'affichage par défaut :
Affichage : le champ est en lecture seule
Édition : le champ peut être modifié
Lien de téléchargement
Cochez la case pour afficher un lien pour télécharger le fichier téléchargé fourni
Validation
Comportement du champ
✏️ Note : Pour aider à la saisie de la condition, une liste exhaustive des champs du formulaire et une liste d’opérateurs sont proposées dans les menus déroulants Sélectionner un champ et Sélectionner un opérateur. Vous pouvez également appuyer sur Ctrl+Espace pour afficher un menu déroulant, qui propose les variables et mots-clés disponibles.
Requis
Définit le champ comme champ obligatoire
Condition
Le champ obligatoire est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
Lecture seule
Définit le champ en lecture seule
Condition
Le champ en lecture seule est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
Caché
Définit le champ comme champ caché
Condition
Le champ caché est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
Attributs personnalisés
Nom
Tout nom qui n'est pas dans la liste du nom de l'attribut standard réservé (id, name, class, style, title, multiple, type, value, checked, runat)
Tout autre nom additionnel de l'attribut réservé spécifique au Fichier joint / Comportement : workflowfileupload, addtext, deletetext
Valeur
Toute valeur
Ajouter un nouvel attribut
Supprimer l'attribut actuel
Valeur de la case à cocher/bouton radio
Libellé
Le texte d'affichage de case à cocher/bouton radio
Ajouter une nouvelle case à cocher/bouton radio
Supprimer la case à cocher/bouton radio actuelle
Validation
Comportement du champ
✏️ Note : Pour aider à la saisie de la condition, une liste exhaustive des champs du formulaire et une liste d’opérateurs sont proposées dans les menus déroulants Sélectionner un champ et Sélectionner un opérateur. Vous pouvez également appuyer sur Ctrl+Espace pour afficher un menu déroulant qui contient les variables et mots-clés disponibles.
Requis
Définit le champ comme champ obligatoire
Condition
Le champ obligatoire est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
✏️ Note : Les champs de type case à cocher (liste ou unique) et bouton de radio unique ne sont pas supportés par ce comportement.
Lecture seule
Définit le champ en lecture seule
Condition
Le champ en lecture seule est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
Caché
Définit le champ comme champ caché
Condition
Le champ caché est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
Attributs personnalisés
aslist
Cette propriété permet à un champ de type bouton radio ou case à cocher avec un item d’être converti en liste de contrôle (bouton radio liste/case à cocher liste) au lieu d’un contrôle de bouton radio/case à cocher dans le formulaire web.
Valeurs booléennes acceptées : true ou false
Définit le champ comme champ obligatoire
Condition
Le champ obligatoire est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
Lecture seule
Définit le champ en lecture seule
Condition
Le champ en lecture seule est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
Caché
Définit le champ comme champ caché
Condition
Le champ caché est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
Expression régulière
Expression
Une expression régulière pour déterminer la validité
📌 Exemple : adresse courriel : \b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}\b
Une expression régulière peut être saisie librement dans la zone à cet effet. Il est également possible d’utiliser une expression régulière dans la liste Sélectionner une expression régulière.
Message d'erreur
Message à afficher lorsque la valeur du champ n'est pas valide
Plage de valeurs
Valeur minimum
Valeur minimum pour le champ en cours de validation
Valeur maximum
Valeur maximum pour le champ en cours de validation
Message d'erreur
Message à afficher lorsque la valeur du champ n'est pas valide
Personnalisé
OnServerValidate
Code de validation de syntaxe C# côté serveur. La valeur de retour doit être une valeur booléenne (vraie ou fausse)
Valider les textes vides
Cochez pour valider le texte d'un contrôle même si le texte est vide
Message d'erreur
Message à afficher lorsque la valeur du champ n’est pas valide
Comparaison
Valeur à comparer
Valeur à comparer
Champ à comparer
Sélectionnez un autre champ du formulaire en comparaison
Opérateur
Opération comparaison à appliquer aux valeurs :
Message d'erreur
Message à afficher lorsque la valeur du champ n’est pas valide
Attributs personnalisés
timezoneconversion
Applicable seulement aux champs de types Date et Date Heure
Cette propriété permet de désactiver le comportement de conversion du fuseau horaire de l’utilisateur quand le format du champ du formulaire est Date ou Date Heure.
Cette fonctionnalité est utile si vous voulez enregistrer et maintenir une valeur unique de date cohérente et des données du processus sans appliquer la conversion de fuseau horaire qui change parfois la valeur de la date dépendamment du fuseau horaire original et des fuseaux horaires des utilisateurs.
Valeurs booléennes acceptées : true ou false
Tout autre nom additionnel spécifique de l'attribut à la validation
maxlength, requiredcondition, readonlycondition, hiddencondition, validationexpression, regularexpressionerrormessage, minimumvalue, maximumvalue, rangeerrormessage, onservervalidate, validateemptytext, customerrormessage, valuetocompare
Valeur de l'élément
Libellé
Texte d'affichage de l'élément
Ajouter un nouvel élément
Supprimer un élément
Liaison de données
Connexion
Sélectionnez le type de connexion pour la liaison de données :
Connexion par nom
Nom
Liste des noms de connexion définis dans le fichier de la configuration Web WorkflowGen (<connectionStrings>)
✏️ Note : Il est fortement recommandé d'utiliser un nom de connexion plutôt qu'une chaîne de connexion pour simplifier la gestion multi-environnements. Les noms de connexion sont gérés de manière centralisée dans le fichier web.config de WorkflowGen.
Requête SQL Select
Requête SQL Select
📌 Exemple : select column_id, column_text from table_name;
Champ de valeur de données
Le champ de données qui fournit la valeur de l'élément
📌 Exemple : column_id
Champ de texte de données
Le champ de données qui fournit le texte de l'élément
📌 Exemple : column_text
Ajout des données liées
Cochez pour ajouter les éléments de données liés à la liste. Sinon, les données liées vont remplacer tous les éléments existants dans la liste.
Paramètres
Nom
Indique le nom du paramètre si la commande « Select » utilise un filtre avec une valeur dynamique à partir d'un paramètre.
📌 Exemple : Nom=PARAM; Select command=select column_id, column_text from table_name where column_id > @PARAM
Type de données
Spécifie le type de données du paramètre : Boolean, Byte, Char, DateTime, DBNull, Decimal, Double, Empty, Int16, Int32, Int64, Object, SByte,
Filtrer par domaine
Spécifie un autre champ dans la forme actuelle où la valeur dynamique sera récupérée
Valeur de filtre par défaut
Indique la valeur par défaut si le champ de paramètre a un vide valeur ou pas de valeur
Si la valeur est vide
Sélectionnez l'une des opérations suivantes :
Connexion par chaîne
Chaîne
Spécifie la chaîne de connexion
📌 Exemple : Data Source=sqlserver_name;Initial Catalog=wfgen;User ID=wfgen_user;Password=abc123!;
Nom du fournisseur
Liste des noms de fournisseurs définis dans le fichier de la configuration Web WorkflowGen (AdministrationFormDataProviderName). Il supporte également des fournisseurs personnalisés tiers .NET :
Requête SQL Select, Champ de valeur de données, Champ de texte de données, Ajout des données liées, Paramètre (Nom, Champ, Valeur par d/faut, Type de données)
Idem que la connexion par nom
Connexion par listes globales
Nom de la liste
Spécifie le nom de la liste
Colonne de valeur
Sélectionne la colonne utilisée pour la valeur de l’élément
Colonne de texte
Sélectionne la colonne utilisée pour le libellé de l’élément
Trier par la colonne
Sélectionne la colonne utilisée pour trier la liste
Ajouter des données liées
Ajoute aux données saisies les données liées à la liste. Sinon, les données liées remplaceront tous les éléments existants dans la liste
Filtre
Colonnes
Spécifie le nom de la colonne utilisée pour filtrer les données
Opérateur de comparaison
Égal (=), non égal (<>), supérieur (>), supérieur ou égal (>=), inférieur (<), inférieur ou égal (<=), contient, commence par, finit par, est nul, n'est pas nul, est dans, n'est pas dans, entre
Filtrer par le champ
Sélectionne le champ du formulaire qui contient la valeur du filtre
Valeur par défaut du filtre
La valeur par défaut si le champ est vide
Si la valeur est vide
Définit le comportement du filtre si la valeur est vide
Connexion par XML
XML
Indique le nom du fichier XML pour la liaison de données 📌 Exemples :
c:\monfichier.xml
http://nom_serveur/monfichier.xml
http://nom_serveur/service.asmx/getmonfichierxml
XPath
Indique l’expression XPath applique aux données XML dans le fichier XML, ex. : rss/channel/item
Fichier de transformation XSL
Indique le nom du fichier de XSL (Extensible Stylesheet Language) qui définit une transformation XSLT pour être exécutée sur le fichier XML
📌 Exemple : c:\monfichier.xsl
Champ de valeur de données, Champ de texte de données, Ajout des données liées
Idem que la connexion par nom
Connexion par SharePoint (2007 et 2010)
✏️ Note : Les paramètres du fichier config doivent être réglés pour détecter SharePoint pour activer cette option.
URL
Adresse URL de la liste SharePoint
📌 Exemple : http://www.monsitesps.com/meslistes
Nom de la liste
Nom de la liste SharePoint
📌 Exemple : Pays
Champ de valeur de données
Nom de colonne représentant la valeur de l'élément
📌 Exemple : Id_Pays
Champ de texte de données
Nom de colonne représentant le texte de l'élément
📌 Exemple : Description
Validation
Comportement du champ
✏️ Note : Pour aider à la saisie de la condition, une liste exhaustive des champs du formulaire et une liste d’opérateurs sont proposées dans les menus déroulants Sélectionner un champ et Sélectionner un opérateur. Vous pouvez également appuyer sur Ctrl+Espace pour afficher un menu déroulant qui contient les variables et mots-clés disponibles.
Longueur maximale
Le nombre maximum de caractères qui peuvent être saisis ✏️ Note : Non disponible pour le champ TextArea.
Requis
Définit le champ en lecture seule
Condition
Le champ obligatoire est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
Lecture seule
Définit le champ en lecture seule
Condition
Le champ en lecture seule est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
Caché
Définit le champ comme champ caché
Condition
Le champ caché est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur.
📌 Exemple : MonTextBox.Text == "Bonjour !"
Attributs personnalisés
timezoneconversion
Applicable seulement aux champs de types Date et Date Heure
Cette propriété permet de désactiver le comportement de conversion du fuseau horaire de l’utilisateur quand le format du champ du formulaire est Date ou Date Heure.
Cette fonctionnalité est utile si vous voulez enregistrer et maintenir une valeur unique de date cohérente et des données du processus sans appliquer la conversion de fuseau horaire qui change parfois la valeur de la date dépendamment du fuseau horaire original et des fuseaux horaires des utilisateurs.
Valeurs booléennes acceptées : true ou false
Tout autre nom additionnel spécifique de l'attribut réservé à la liaison de données
connectionname, connectionstring, providername, xmldatasource, xpath, transformfile, selectcommand, parametername, parametercontrolid, parameterdefaultvalue, parametertype, datavaluefield, datatextfield
Liste des types de champ supportés dans le tableau :
Liste déroulante
Liste
Libellé
Texte de pied de page
Texte d’affichage du pied de page de la colonne
Le texte de pied de page de la colonne peut être un texte ou une expression utilisée pour filtrer les lignes, calculer les valeurs d'une colonne, ou créer une colonne agrégat (ex. : calculer la somme de toutes les valeurs d’une rangée d'une colonne donnée : =SUM)
Pour plus renseignements, référez-vous à DataColumn.Expression au site Microsoft :
Ajouter une nouvelle colonne
Supprimer la colonne actuelle
Affichage
Libellé du bouton d'édition
Le texte d'affichage pour le bouton d'édition
Libellé du bouton de suppression
Le texte d'affichage pour le bouton de suppression
Libellé du bouton de mise à jour
Le texte d'affichage pour le bouton de mise à jour
Libellé du bouton annuler
Le texte d'affichage pour le bouton annuler
Afficher le bouton d'édition
Cocher pour afficher le bouton d'édition
Afficher le bouton de suppression
Cocher pour afficher le bouton de suppression
Afficher l'en-tête
Cocher pour afficher l'en-tête
Afficher le pied de page
Cocher pour afficher le pied de page
Validation
Comportement du champ
✏️ Note : Pour aider à la saisie de la condition, une liste exhaustive des champs du formulaire et une liste d’opérateurs sont proposées dans les menus déroulants Sélectionner un champ et Sélectionner un opérateur. Vous pouvez également appuyer sur Ctrl+Espace pour afficher un menu déroulant qui contient les variables et mots-clés disponibles.
Requis
Définit le champ comme champ obligatoire
Condition
Le champ obligatoire est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur (ex. MonTextBox.Text == "Bonjour !").
Lecture seule
Définit le champ en lecture seule
Condition
Le champ en lecture seule est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur (ex. : MonTextBox.Text == "Bonjour !").
Caché
Définit le champ comme champ caché
Condition
Le champ caché est basé sur une condition personnalisée. Si la condition est vide, alors il sera vrai. La condition personnalisée doit être du code de syntaxe C# côté serveur (ex. : MonTextBox.Text == "Bonjour !").
Tout autre nom additionnel spécifique de l'attribut réservé au tableau / affichage : edittext, deletetext, updatetext, showheader, showfooter
Code-behind : \wfgen\WfApps\WebForms\[nom du contrôle d’utilisateur].ascx.cs
Chaque champ dans une section sera automatiquement préfixé avec l’identifiant de la section suivi d’une barre de soulignement (ex. : section id=ACTION1; field id=ACTION1_MYFIELD1)
Chaque champ dans un tableau sera automatiquement préfixé avec identifiant du tableau suivi d’une barre de soulignement (ex. : identifiants du champ et du tableau : gridview id=ACTION1_MYGRIDVIEW1; field id=ACTION1_MYGRIDVIEW1_TITLE1).
Si le champ est déplacé d'une section à une autre section, l’identifiant du champ sera automatiquement préfixé avec l’identifiant de la nouvelle section.
Si l'identifiant de la section est modifié tous les identifiants des champs de la section sera automatiquement préfixé avec le nouvel identifiant.
6/10/2019 1:45:30 PM ➞ 1:45 PM (en-US)
Heure longue
6/10/2019 1:45:30 PM ➞ 1:45:30 PM (en-US)
Date/heure complète (heure courte)
6/10/2019 1:45:30 PM ➞ Monday, June 10, 2019 1:45 PM (en-US)
Date/heure complète (heure longue)
6/10/2019 1:45:30 PM ➞ Monday, June 10, 2019 1:45:30 PM (en-US)
Date/heure générale (heure courte)
6/10/2019 1:45:30 PM ➞ 6/10/2019 1:45 PM (en-US)
Date/heure générale (heure longue)
6/10/2019 1:45:30 PM ➞ 6/10/2019 1:45:30 PM (en-US)
Mois/jour
6/10/2019 1:45:30 PM ➞ June 10 (en-US)
Date/heure aller-retour
6/10/2019 1:45:30 PM ➞ 2019-06-10T13:45:30.0900000
RFC1123
6/10/2019 1:45:30 PM ➞ Mon, 10 Jun 2019 20:45:30 GMT
Date/heure pouvant être triée
6/10/2019 1:45:30 PM ➞ 2019-06-10T13:45:30
Date/heure universelle pouvant être triée
6/10/2019 1:45:30 PM ➞ 2019-06-10 20:45:30Z
Date/heure complète universelle
6/10/2019 1:45:30 PM ➞ Monday, June 10, 2019 8:45:30 PM (en-US)
Année/mois
6/10/2019 1:45:30 PM ➞ June, 2019 (en-US)
Nom
Description
Gérer les outils personnalisés
Ouvre la fenêtre Gérer les outils personnalisés
Sections personnalisées
Liste de modèles de sections personnalisées
Un modèle de section personnalisée peut être créé en sauvegardant une section en tant qu’outil ou manuellement sur le serveur avec le dossier et structures de fichiers suivante : \wfgen\App_Data\Templates\Forms\[langue]\[nom du dossier]\sections\[nom de la section].txt
📌 Exemple : \wfgen\App_Data\Templates\Forms\FR\MonEntreprise\sections\MaSection.txt
✏️ Note : Un modèle de section personnalisée doit se conformer à la structuration des contenus et les règles utilisées et connues par l’éditeur de formulaire. Ceci est destiné aux utilisateurs avancés.
Champs personnalisés
Liste des modèles de champs personnalisés
Un modèle de champ personnalisé peut être créé en sauvegardant un champ en tant qu’outil ou manuellement sur le serveur avec le dossier suivant et structures de fichiers suivantes : \wfgen\App_Data\Templates\Forms\[langue]\[nom du dossier]\fields\[nom du champ].txt
📌 Exemple : \wfgen\App_Data\Templates\Forms\Fr\MonEntreprise\fields\MonChamp.txt
✏️ Note : Un modèle de champ personnalisé doit se conformer à la structuration des contenus et les règles utilisées et connues par l’éditeur du formulaire. Ceci est destiné aux utilisateurs avancés.
Sections par défaut
Validation
Une section qui contient un prénom, nom, et champ de date en lecture seule, ainsi qu’un bouton radio d’approbation et un champ texte multi-lignes pour commentaires.
Champs
Description
Enregistrer comme outil
Nom
Entrez un nom unique pour l'outil personnalisé
Outils
Sélectionnez un outil existant dans la liste déroulante pour l'écraser
Nom / Icône
Description
Sections
Nom
Nom de l'outil de section personnalisé
Supprimer l'outil de champ personnalisé
Champs
Nom
Nom de l'outil de champ personnalisé
Nom / Icône
Description
Fermer et appliquer les modifications au champ
Fermer et annuler les modifications au champ
Validation
Comportement
✏️ Note : Pour aider à la saisie de la condition, une liste exhaustive des champs du formulaire et une liste d’opérateurs sont proposées dans les menus déroulants Sélectionner un champ et Sélectionner un opérateur. Vous pouvez également appuyer sur Ctrl+Espace pour afficher un menu déroulant qui contient les variables et mots-clés disponibles.
Requise
Définit les champs de la section comme obligatoire
Nom / Icône
Description
Fermer et appliquer les modifications au champ
Fermer et annuler les modifications au champ
Comportement
WorkflowFileUpload
Cochez pour activer l'utilisation du contrôle WorkflowFileUpload. Sinon, le FileUpload .NET v2.0 est utilisé par défaut.
Lien de téléchargement
Vérifier si vous voulez le lien pour ouvrir le fichier permis
Nom / icône
Description
Fermer et appliquer les modifications au champ
Fermer et annuler les modifications
Éléments
Utilisez le glisser-déplacer avec la souris pour changer l'ordre des éléments.
Sélectionné
Cochez les éléments sélectionnés par défaut pour le champ. Une seule sélection est supportée pour un bouton radio alors qu’une case à cocher supporte plusieurs sélections.
Nom / Icône
Description
Fermer et appliquer les modifications au champ
Fermer et annuler les modifications au champ
Validation
Comportement du champ
✏️ Note : Pour aider à la saisie de la condition, une liste exhaustive des champs du formulaire et une liste d’opérateurs sont proposées dans les menus déroulants Sélectionner un champ et Sélectionner un opérateur. Vous pouvez également appuyer sur Ctrl+Espace pour afficher un menu déroulant qui contient les variables et mots-clés disponibles.
Longueur maximale
Le nombre maximum de caractères pouvant être saisis ✏️ Note : Non disponible pour le champ texte multi-lignes.
Nom / Icône
Description
Fermer et appliquer les modifications au champ
Fermer et annuler les modifications au champ
Élément
Utilisez le glisser-déplacer de la souris pour changer l'ordre des éléments
Sélectionné
Cochez les éléments sélectionnés par défaut pour le champ Une seule sélection est supportée pour une liste déroulante. Les listes supportent plusieurs sélections.
Nom / Icône
Description
Fermer et appliquer les modifications au champ
Fermer et annuler les modifications
Colonnes
Utilisez le glisser-déplacer avec la souris pour changer l'ordre des colonnes
Texte d’en-tête
Texte d’affichage de l’en-tête des colonnes.
Type de format
Description
Numérique
La valeur est numérique
Monétaire
La valeur est monétaire
Date et heure (système)
Date et heure par défaut de WorkflowGen
Date courte
6/10/2019 1:45:30 PM ➞ 6/10/2019 (en-US)
Date longue
6/10/2019 1:45:30 PM ➞ Monday, June 10, 2019 (en-US)
Vide
Condition
Afficher la taille de fichier
Valeur
Requis
Valeur
Type de champ
Heure courte
protected void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e);
String stylePath=HttpContext.Current.Request.PhysicalApplicationPath.Replace("WfApps\\WebForms\\","App_Data\\Templates\\Forms\\En\\Default\\css");
Page.Header.Controls.Remove(this.FindControl("StyleSheet"));
Page.Header.Controls.Add(
new LiteralControl(
System.IO.File.ReadAllText(stylePath + "\\" + "metal.css")
)
);
string imageUrl="http://mywebsite/mylogo.jpg"
HeaderImage.Style["background-image"] = "url('" + imageUrl+ "')";
HeaderTitleLabel.Text="My Title #";
FooterTitleLabel.Text="My footer";
imageUrl="http://mywebsite/myfooter.jpg";
FooterImage.Style["background-image"] = "url('" + imageUrl+ "')";
}FooterImage.Style["width"] = "200px";
FooterImage.Style["height"] = "100px";updatetextallowedextensionsdisplaymodedownloadlinkfilesizelimitshowfilesizecontroltocompareoperatorcompareerrormessageSingleStringUInt16UInt32UInt64Le fichier XML doit être structuré de telle sorte que les propriétés de chaque élément sont exprimés sous forme d’attributs. Si vous avez un fichier XML dans lequel les valeurs de propriété sont exprimées dans un format autre que les attributs, vous devez :
Créer un fichier de transformation (.xslt) qui peut dynamiquement reformater le fichier .xml afin qu’il soit compatible avec le contrôle XmlDataSource.
Spécifier le chemin de votre fichier XSLT dans le paramètre « XSL transform file » (voir ci-dessus).
appenddatabounditemsspsdatasourcespsdatalistspsdatavaluefieldspsdatatextfieldTexte
✏️ Notes :
Les types de champs Texte et Texte multi-lignes ne supportent pas les paramètres de validation dans un tableau.
Le type de champ libellé ne supporte pas la liaison de données.




















