Déployer Workey

Préambule

Cette documentation représente l’accès à l’application Workey et cela quelque soit le contexte utilisé.

Il existe deux types de contexte sous l’interface Workey :

  • Le panorama
  • App (applications verticales)

Le panorama

L’approche panorama permet un accès à tous les formulaires associés aux différents workflows métiers crées. Ces derniers sont accessibles par les utilisateurs selon leurs droits en terme de création, lecture ou modification.

Le store

Historiquement ce contexte a été mis en place pour les clients n’utilisant qu’un seule application métier, voire deux.

Il est donc possible de configurer exclusivement des applications métiers selon les besoins utilisateurs.

L’utilisation des deux contextes

Les deux contextes sont utilisables conjointement ou non et cela se décide selon les besoins émis. Le tout doit être préalablement configuré.

Se connecter à Workey version 7

La connexion se réalise à l’aide d’un navigateur internet sur l’URL communiquée

Une fois la connexion établie l’affiche de l’écran panorama est établie et l’utilisateur arrive sur la page d’accueil qui est représentée par la vue à faire

L’interface d’administration simplifiée

Elle est accessible depuis la clé d’engrenage et elle permets l’accès à différentes fonctions d’administration

Sur ce menu d’administration il existe plusieurs items, il convient de les détailler un par un :

  • Listes ; ce sont des listes permettant aux utilisateurs de définir (ajouter ou supprimer des lignes) le contenu d’une ou plusieurs listes utilisées dans des champs de la modélisation
  • Rôles ; c’est la possibilité de définir les rôles du processus concerné, dans cet exemple ci-dessous, il suffit de double cliquer sur l’acteur concerné afin de l’associer au rôle et de finaliser l’opération par le bouton « enregistrer les modifications.

Pour résumer cette opération se déroule en trois étapes ;

  1. Sélection de l’acteur à associer au rôle sélectionné en double cliquant dessus
  2. L’acteur apparait dans la colonne de droite
  3. Cliquer sur enregistrer les modifications afin que l’opération soit effective
  • Unités : ce sont les groupes d’utilisateurs associés aux différentes modélisations, l’association se déroule identiquement qu’au point précèdent, en trois étapes ;
  1. Sélection de l’acteur à associer à l’unité sélectionnée en double cliquant dessus
  2. L’acteur apparait dans la colonne de droite
  3. Cliquer sur enregistrer les modifications afin que l’opération soit effective
  • Utilisateurs : regroupe l’ensemble des utilisateurs de l’annuaire visibles par Workey. Cette vue permet d’accéder ;
    • aux informations de l’utilisateur concerné (login, Nom et prénom, email, gestionnaire du workflow et la langue utilisée par ce dernier)
  • aux rôles joués par l’utilisateur sur chacun des processus auquel il est associé
  • ainsi que ses unités d’appartenance (voir points précédents)
  • Paramétrage ; il permet de définir la ou les applications verticales à associer au contexte store

L’interface d’administration avancée

L’administration avancée est accessible depuis un clic sur le profil utilisateur

Il existe six Chapitres qu’il convient de détailler

Accueil

Système de message interne

Le service d’administration permet de gérer différents types de message en direction des utilisateurs afin de pouvoir les alerter sur un arrêt serveur, par exemple, ou leur délivrer une information générale.

Gestion d’un nouveau message.

Une fois connecté à la console d’administration WEB en qualité de Workflow Manager, Process Manager ou Unit Manager. Depuis l’onglet accueil saisir votre message à l’aide de la zone texte:

Choisir le type d’alerte par rapport à la nature de l’information que vous souhaitez adresser, et cliquer sur le bouton « Créer ». Une fois créé, le message est historisé. Pour supprimer un message, cocher le message et cliquer sur le bouton « Supprimer ».

Affichage d’un nouveau message.

Se connecter en tant qu’utilisateur d’une application Workey. Le message d’alerte est affiché depuis la page web de l’application

Le message apparait en pop-up, il est néanmoins accessible en cliquant sur l’icône 

Le contenu de ce dernier apparait alors dans son intégralité. Après lecture de ce dernier il est possible de cliquer sur « Marquer comme lu et fermer » afin de le faire disparaitre de l’application web

Système de mise en mode maintenance de Workey

Il est possible de basculer en mode maintenance et mode normal via la console d’administration. Si le serveur est en mode maintenance alors un message paramétré par un administrateur s’affichera à la place de l’application Workey lors de sa tentative d’accès, sinon l’application se comportera comme d’habitude.

Depuis la page d’accueil une section nommée Maintenance est accessible

Cette section contient un bouton qui permet de faire basculer le serveur en mode maintenance et en mode normal (maintenance on/off)

En dessous de ce bouton se trouve une zone de texte qui peut contenir du HTML à afficher aux utilisateurs lorsque Workey est en maintenance.

  • Saisir le texte désiré dans la zone de texte dédiée
  • Cliquer sur le bouton appliquer

@@@@Procédure pour activer / désactiver le mode de maintenance :

  • Se connecter en tant que Workflow Manager sur la console d’administration
  • Cliquer sur le bouton ‘maintenance on/off’

Vider le cache de l’annuaire

Cette fonction permet de vider le cache créé par Workey et issu de l’annuaire Ldap de l’entreprise. Une fois le cache vidé, les modifications de l’annuaire sont automatiquement accessibles.

@@@@Vues

Cette page permet de visualiser l’ensemble des vues déployées sur le serveur, c’est à dire les vues génériques, les vues crées par modélisation, les vues administratives et les vues de reporting,

Dans cette vue, la première colonne (à supprimer) sert à sélectionner les vues que l’on désire supprimer, la dernière colonne (visible) est cochée si la vue est visible, c’est à dire montrée dans les interfaces pour l’utilisateur.

Pour modifier les vues, cliquer sur le bouton « Modifier »: les vues dont la colonne  « à supprimer » seront détruites, et les vues seront rendues visibles suivant la valeur de la colonne « visible ».

remplacement d’acteur

Cette fonctionnalité ne peut être activée que lorsque :

  • Le mode maintenance est activé
  • Les agents sont suspendus

Il existe actuellement 3 politiques de remplacement d’acteur dans Workey :

– Remplacement complet

Cette politique correspond au cas où le remplaçant récupère entièrement les droits, tâches et historique du remplacé. Après le remplacement, la situation apparaît comme si le remplaçant avait effectué toute l’activité du remplacé et se retrouve dans la même situation que ce dernier pour agir. La seule trace encore visible du remplacé est dans l’historique des processus, à titre d’information. Le remplacé n’est plus reconnu comme acteur des processus.

Voici une liste de droits récupérés par le nouvel acteur :

  • l’accès aux documents actifs du processus (en lecture, en écriture)
  • l’accès aux documents dans l’état “brouillon”
  • l’historique des documents
  • les délégations posées par les acteurs
  • les alertes déclenchées
  • les vues persistées en base de données
  • les rôles et droits de “management”
  • l’appartenance aux unités organisationnelles

Seule l’historique des documents ne sera pas modifié.

Pour annuler ce remplacement, il faut effectuer un nouveau remplacement avec le nom (CN) de l’ancien acteur comme nouvel acteur.

– Prise de relais

Cette politique correspond au cas où le remplaçant prend le relais du remplacé, ce dernier restant pleinement actif dans les processus.

L’acteur remplaçant doit être connu dans le répertoire ldap, il est créé en tant qu’acteur Workey s’il ne l’est pas déjà.

Plus précisément, les actions suivantes sont effectuées dans le cadre de cette politique:

  • transmission: accès aux documents
  • copie: rôles et droits de “management”
  • transmission: accès aux documents dans l’état “brouillon”
  • copie: appartenance aux unités organisationnelles
  • transmission: délégations posées par les acteurs
  • copie: alertes déclenchées
  • copie: vues persistées en base de données

Après l’application de cette politique, le remplaçant est en mesure d’agir dans les processus dans lesquels le remplacé était impliqué. Il appartient aux mêmes unités que le remplacé et hérite donc des droits attachés. Le remplacé peut continuer à agir dans tous les processus, en concomitance avec le remplaçant.

– Prise de relais et départ

Cette politique reprend les actions de la politique “relais”, et la complète par un volet “arrêt de l’activité du remplacé”.

  • copie: accès aux documents
  • transmission: rôles et droits de “management”
  • transmission: appartenance aux unités organisationnelles
  • transmission: historique des documents
  • transmission: délégations posées par les acteurs
  • transmission: alertes déclenchées transmission vues persistées en base de données

Dans cette situation, toute l’activité du remplacé est reprise par son remplaçant. Le remplacé arrête donc son activité dans les processus où il était présent.

A la différence de la politique de remplacement complet, le remplacé reste connu comme acteur de processus, et peut donc éventuellement se voir confier d’autres activités et attributions. Il peut également visualiser l’activité des processus auxquels il a participé.

Voici une liste de droits récupérés par le nouvel acteur :

  • l’accès aux documents actifs du processus (en lecture, en écriture)
  • l’accès aux documents dans l’état “brouillon”
  • l’historique des documents
  • les délégations posées par les acteurs
  • les alertes déclenchées
  • les vues persistées en base de données
  • les rôles et droits de “management”
  • l’appartenance aux unités organisationnelles

Seule l’historique des documents ne sera pas modifié.

Pour annuler ce remplacement, il faut effectuer un nouveau remplacement avec le nom (CN) de l’ancien acteur comme nouvel acteur.

– Prise de relais

Cette politique correspond au cas où le remplaçant prend le relais du remplacé, ce dernier restant pleinement actif dans les processus.

L’acteur remplaçant doit être connu dans le répertoire ldap, il est créé en tant qu’acteur Workey s’il ne l’est pas déjà.

Plus précisément, les actions suivantes sont effectuées dans le cadre de cette politique:

  • transmission: accès aux documents
  • copie: rôles et droits de “management”
  • transmission: accès aux documents dans l’état “brouillon”
  • copie: appartenance aux unités organisationnelles
  • transmission: délégations posées par les acteurs
  • copie: alertes déclenchées
  • copie: vues persistées en base de données

Après l’application de cette politique, le remplaçant est en mesure d’agir dans les processus dans lesquels le remplacé était impliqué. Il appartient aux mêmes unités que le remplacé et hérite donc des droits attachés. Le remplacé peut continuer à agir dans tous les processus, en concomitance avec le remplaçant.

– Prise de relais et départ

Cette politique reprend les actions de la politique “relais”, et la complète par un volet “arrêt de l’activité du remplacé”.

  • copie: accès aux documents
  • transmission: rôles et droits de “management”
  • transmission: appartenance aux unités organisationnelles
  • transmission: historique des documents
  • transmission: délégations posées par les acteurs
  • transmission: alertes déclenchées transmission vues persistées en base de données

Dans cette situation, toute l’activité du remplacé est reprise par son remplaçant. Le remplacé arrête donc son activité dans les processus où il était présent.

A la différence de la politique de remplacement complet, le remplacé reste connu comme acteur de processus, et peut donc éventuellement se voir confier d’autres activités et attributions. Il peut également visualiser l’activité des processus auxquels il a participé.

Dans cette situation, toute l’activité du remplacé est reprise par son remplaçant. Le remplacé arrête donc son activité dans les processus où il était présent.

– Détail des acteurs

Cette option permets d’identifier le détail des rôles, unités et délégations associées à l’acteur sélectionné et sur l’ensemble des processus auquel il est associé.

A noter que la liste proposée est dépendante des informations saisies manuellement (autocomplétion).

– @@@@Acteurs par rôles & acteurs par unités organisationnelles

Ces deux fonctionnalités permettent de réaliser un export Excel avec soit ;

  • Un tableau avec la correspondance de tous les acteurs et de leurs rôles associés
  • Un tableau de correspondance avec de tous les acteurs et de leur unités associées

– Fichiers de Log

  • Cette fonctionnalité, si elle est activée, permets à un administrateur du workflow de lire et consulter les logs de l’activité du serveur workey.

Il est possible d’activer ou désactiver des fonction de trace, debug, info, warning ou Error

La désactivation de ces fonctions a pour conséquence d’enlever les messages associés

– Ressources de langues

A partir de la Ressource de langues on peut exporter l’ensemble des processus déployés sur la console d’administration. Une liste est à disposition :

Vous pouvez exporter l’ensemble la version du processus attendue et ainsi exporter l’ensemble des mots présents dans le processus afin de pouvoir les traduire dans une autre langue.

Pour ce faire, vous disposez des boutons suivants :

Pour exporter l’ensemble des mots, il suffit de cliquer sur  Exporter les ressources de langues . Un fichier XML va apparaître au bout de quelques secondes avec l’ensemble des éléments contenus dans le processus (opérations, états, champs …).

Il suffit ensuite de dupliquer la ligne à traduire puis de modifier les éléments concernés. Exemple :

<resource xml:lang= »fr » ref= »285″ type= »operation » name= »Cloturer »>

<text>Cloturer</text>

</resource>

<resource xml:lang= »en » ref= »285″ type= »operation » name= »Cloturer »>

<text>Close Case</text>

</resource>

Une fois l’ensemble des traductions effectuées, cliquez sur le bouton Importer les ressources de langues pour que les modifications soient prises en compte.

Pour la traduction des fichiers exportés, il est conseillé d’utiliser un outil de type omegat disponible à l’adresse suivante :

https://omegat.org/fr/

Gestionnaires

L’onglet gestionnaire permet d’afficher sur la partie de gauche de la page les différents types d’accès disponibles. En effet, plusieurs niveaux d’accès peuvent être  définis :

Gestionnaire@@@@Description
de workflow Son rôle est de gérer les différents droits d’accès au niveau desprocessus et des unités. Il est un « Workflow Manager ».
de processusLe gestionnaire de processus a les droits sur le ou les processus définispar le gestionnaire de workflow. Il peut gérer les versions de son oude ses processus et en définir les acteurs.
d’unité         Le gestionnaire d’unité a les droits sur l’unité organisationnelle quele Workflow Manager lui aura attribué.Il pourra ajouter, supprimer ou modifier les affectations sur l’unitégérée.

@@@@Processus

Déployer un processus

Vous ne pouvez déployer un processus que si vous êtes Workflow Manager ou Process Manager du processus en question. Afin de déployer un processus, vous devez indiquer le chemin d’accès au fichier XML généré avec le Designer Workey.

Logiquement cette opération peut être menée depuis le designer.

Il suffit d’appuyer sur le bouton Déployer pour voir s’afficher ensuite la nouvelle version du processus.

Les rôles du processus

Cette section permet de vérifier les personnes affectées à chacun des rôles du processus pour une version donnée. Le bouton « Copie des rôles aux versions précédentes » permets de copier l’affectation des utilisateurs ou unités au rôles de la version courante dans les autres versions du même processus.

Gestion des versions

La section « Versions déployées » s’ouvre en affichant l’historique des déploiement du processus avec l’ensemble de ses versions. Par le biais des boutons d’action, il est possible de:Changer la version active – c’est-à-dire, définir quelle version est activée sur le serveur (il ne peut y avoir qu’une seule version par processus)Supprimer les versions inactives – celle qui ne sont pas actives à l’instant tSupprimer le processus – donc toutes versions du processusEn face de chaque version est indiqué le nombre de documents actifs ou inactifs :Dans cet exemple, cela signifie qu’il y a 6 documents en cours de validation dans les workflows et 0 en fin de vie.

Attention : si on vient toutefois à supprimer une version de processus tous les documents qui lui sont associés seront supprimés définitivement.

Cette règle est aussi vraie dans le cadre d’une suppression d’un processus

@@@@Rôles GénériquesIl est possible d’assigner des acteurs pour les rôles de Superviseur et de Gestionnaire de données.
Ces rôles natifs à l’application ont une fonction bien précise.Superviseur : permet un accès au document en lecture seule. Le Superviseur peut tout voir mais rien modifier.Gestionnaire de données : permet un accès au document en écriture.
Le Gestionnaire de données peur modifier le contenu des champs présentés en écriture mais pas changer les états de documents.Ces rôles sont particulièrement utiles lors de la création des vues personnalisées.

Archivage et processus externes

Cette section permet:

  • de modifier la politique d’archivage du processus.
  • de déclarer la politique d’accueil du processus vis-à-vis des autres processus

Indiquer un nombre entier de jours pour le délai d’archivage: tous les documents en fin de vie seront archivés automatiquement, passé ce délai.

Indiquer si le processus accepte:

  • qu’aucun autre processus ne crée de documents dans ce processus,
  • que d’autres processus puissent créer des nouveaux documents seulement,
  • que d’autre processus puissent créer des documents dans n’importe quel état.

Cette dernière fonctionnalité ne peut être mise en œuvre que si cela a été prévu préalablement dans la modélisation.

@@@@Rôles

Tout processus déployé dans la console d’administration devra préalablement être associé à des rôles afin de permettre son utilisation.

Il est possible d’effectuer des recherches filtrées sur l’ensemble de l’annuaire :

  • soit en remplissant le champ ‘Filtre’,
  • soit en sélectionnant la première lettre de la personne, ou de l’unité, recherchée.

Pour le champ ‘Filtre’, vous devez précéder votre recherche par l’attribut LDAP configuré lors de l’installation du serveur Workey.

Exemple : (cn=jean dupont)

Il est aussi possible de filtrer par la première lettre du nom. Une fois le nom trouvé, il vous suffit de basculer ce dernier dans la fenêtre de droite sans oublier de cliquer sur le bouton Mettre à jour le rôle  afin de prendre en compte les informations.

Pour plus d’informations sur les filtres LDAP, voir la RFC.2254-FR

Attention certains LDAP ne retournent qu’un nombre limité d’entrées (généralement 500). Nous attirons donc votre attention sur le fait que Workey sera contraint par cette limitation lors des requêtes. De plus la visibilité des utilisateurs ainsi que des groupes LDAP associés sont limités au filtre défini dans les paramétrages techniques du serveur.

Unités

Les unités organisationnelles peuvent être définies :

  • dès la modélisation – à partir du Designer Workey.
  • directement depuis l’interface de la Console d’Administration.

Depuis le Designer Workey

Au déploiement du processus, les unités sont créés automatiquement dans la partie Unités Organisationnelles.

Depuis la console d’administration

Les unités directement depuis la console d’administration.

 Permet d’ajouter une unité en dessous de l’unité sélectionnée. Si aucune unité n’est sélectionnée, l’ajout se fait à la racine.

  Permet de supprimer l’unité sélectionnée.

Gestion des relations

Il est possible à présent de gérer différents types de relation depuis les unités organisationnelles.

Type@@@@Description de la relation
HiérarchiqueUnité composée de différents niveaux hiérarchiques(organigramme de l’entreprise).
SémantiqueUn lien sémantique (modélisé en vert dans le Designer Workey)permet de créer une relation fonctionnelle entre plusieurs unités.Il est possible de les nommer afin d’avoir de distinguer plusieurstypes de structure sémantique.

@@@@Agents

Etat du Programmateur

Le Programmateur – aussi désigné sous le nom de ‘Scheduler’ – est

en charge de la gestion des @@@@Agents. Il repose sur le service Quartz (déployé et démarré au lancement du serveur d’application JBoss). Son rôle est double:

  • déterminer les dates de déclenchements des @@@@Agents – au regard des contraintes définies (telles que: intervalle de répétition, dates d’exclusion, …)
  • assurer le déclenchement des tâches des @@@@Agents aux instants prévus.

L’état initial par défaut du Scheduler est: démarré.

Il est possible, alternativement, de Suspendre ou Démarrer le Scheduler en cliquant sur le lien du même nom (entre parenthèse).

  • Suspendre le Scheduler n’a pas pour effet d’interrompre des @@@@Agents qui seraient déjà en cours d’exécution. Cela prévient uniquement tout nouveau déclenchement.
  • Lorsqu’un @@@@Agent est déclenché, le Scheduler calcul automatiquement la date et l’heure du prochain déclenchement.
  • La date et l’heure du serveur Workey sont données à titre indicatif (il est nécessaire de rafraîchir la page pour les actualiser). Les déclenchements des agents sont exprimés par rapport à l’horaire du serveur.

Liste des @@@@Agents

Ce premier tableau présente:

  • une liste d’agents Workey couramment définis,
  • un ensemble d’actions afférentes aux @@@@Agents ou au Scheduler.

Vous trouverez ci-dessous le détail de ses colonnes, ainsi que les actions qu’il est possible de mener.

IDChaque @@@@Agent se voit attribué, lors de sa création, un ID auto généré et unique.Cliquer sur l’ID permet d’accéder au détail de l’@@@@Agent.
Type de tâchePrésente sous forme d’un résumé succinct:le type de l’@@@@Agentle(s) paramètre(s) essentiel(s) de l’@@@@AgentCliquer sur la description de la tâche permet d’accéder au détail de l’@@@@Agent.
ProgramméIndique, par le biais d’une case-à-cocher, si l’@@@@Agent est actuellement programmé. C’est-à-dire que le Scheduler a déterminé l’instant de son prochain déclenchement.Pour chaque @@@@Agent Workey donné, il convient de distinguer:sa définition – tâche, paramètre(s), périodicité …sa programmation dans le Scheduler – détermination de l’instant où la tâche sera déclenchée
Prochain déclenchementLorsque qu’un @@@@Agent est programmé, la date et l’heure de son prochain déclenchement sont indiqués dans cette colonne.Il est nécessaire de rafraîchir la page pour réactualiser les valeurs de cette colonne.
En cours d’exécutionLorsque le Scheduler déclenche l’exécution d’un @@@@Agent Workey, il y a instanciation de la tâche qui lui est associée. Pour chaque instance en cours d’exécution, il s’affichera dans cette colonne une barre indiquant la progression du traitement. La page scrute à intervalle régulier l’état de déclenchement des @@@@Agents listés. Pour un @@@@Agent donné, si les instances multiples ont été autorisées, il est alors possible d’avoir plusieurs barres de progression (instances concurrentes). La couleur des barres de progression désigne:bleue: une instance dont le déclenchement était programmé.jaune: une instance dont le déclenchement à été forcé.Selon l’implémentation de la tâche:l’agent est capable de notifier sa progression (pourcentage et/ou message) dans le traitement en cours.le traitement peut être interrompu à la demande de l’utilisateur: dans ce cas une croix rouge est disponible à droite de la barre de progression. Losque l’utilisateur clique sur la croix, celle-ci se grise – l’instance à été notifiée de la demande d’interruption (il n’est pas possible de recliquer dessus).Une fois interrompue, la barre d’état de l’instance notifiée disparaîtra de la colonne.
(icône d’accès au journal de l’agent)Le fait de cliquer sur l’icône permet d’afficher le contenu du journal d’action de l’@@@@Agent.Le journal d’action est commun à toutes les instances de ce même @@@@Agent.Il est nécessaire d’avoir préalablement activé la journalisation (dans le détail de l’@@@@Agent)

Au pied de cette table récapitulative se trouve un ensemble de lien-action:

ProgrammerSélection multiple possibleProgrammation (calcul du prochain déclenchement) de l’agent en fonction de ses paramètres.Le déclenchement d’un agent programmé est assuré par le Scheduler. Une fois la tâche de l’@@@@Agent instanciée, le Scheduler détermine automatiquement le prochain déclenchement. Il n’est donc pas nécessaire de reprogrammer un @@@@Agent après son déclenchement.
DéprogrammerSélection multiple possibleL’agent ne sera pas déclenché (instancié) par le Scheduler. Si un déclenchement avait déjà été programmé, il est annulé.Déprogrammer ne suspend pas, ni n’interrompt, les instances qui seraient en cours d’exécution.
SupprimerSélection multiple possibleLa suppression d’un @@@@Agent entraine l’effacement de ses paramètres (sa déprogrammation préalable est assurée).Un agent ne peut pas être supprimé si des instances de celui-ci sont en cours d’exécution.
Vider l’historiqueSélection multiple possibleLa journalisation de l’activité d’un @@@@Agent (c’est-à-dire son historique) peut être purgée à l’aide de cette action.Le journal de chacun des agents sélectionnés est alors vidé.
Forcer le déclenchementSélection multiple possiblePermet d’instancier immédiatement la tâche d’un @@@@Agent et cela indépendamment de sa programmation.Forcer un déclenchement ne consiste pas à anticiper un déclenchement déjà programmé.Si la définition de l’@@@@Agent n’autorise pas les instances concurrentes, mais que celui-ci est déjà en cours d’exécution, alors toute nouvelle tentative d’instanciation (forcée ou non) se soldera par une exécution avortée de la tâche: démarrage de la tâche; échec de la tentative d’acquisition de verrou exclusif; terminaison prématurée de la tâche.
Réinitialiser le ProgrammateurAucune sélection nécessaireAnnulation de tous les déclenchements prévus. Il sera nécessaire de programmer de nouveau les agents pour que leur déclenchement soit de nouveau pris en charge par le Scheduler.
Créer nouvel @@@@AgentSélection préalable requise du type de l’@@@@Agent à créer (choix dans la liste déroulante)Permet d’ajouter un nouvel @@@@Agent et d’en définir ses paramètres de fonctionnement.TypeImplémentationTâcheDélaisNativeTraite les évènements de dépassement de délai et les évènements liés aux données.@@@@RôleNativeTraite les documents en endossant un rôle spécifique.@@@@Vue AsynchroneNativeCalcul d’une vue asynchrone.SynchroniseurNativeAssure la synchronisation entre processus distincts.ArchiveurModule optionnelArchive tous les documents éligibles.PersonnaliséSpécifique–Après avoir choisi le type de l’@@@@Agent à ajouter, cliquer sur l’action vous redirigera vers le détail de l’agent en cours de création. Le type Personnalisé désigne des @@@@Agents dont la tâche doit être définie programmatiquement (développement spécifique).

Le type de l’@@@@Agent ne peux pas être modifié après sa création. La création n’est effective qu’après avoir soumis avec succès les paramètres de l’@@@@Agent.

Liste des Calendriers

Ce second tableau présente:

  • la liste des Calendriers actuellement définis.
  • un ensemble d’actions afférentes aux Calendriers.

Vous trouverez ci-dessous le détail de ses colonnes, ainsi que les actions qu’il est possible de mener.

IDChaque Calendrier se voit attribué, lors de sa création, un ID auto généré et unique.Cliquer sur l’ID permet d’accéder au détail du calendrier.
Nom du CalendrierLes Calendriers sont nommés, afin de pouvoir les distinguer plus aisément.Cliquer sur le nom d’un Calendrier permet d’accéder à son détail.
@@@@Agent(s) utilisant le CalendrierLes Calendriers sont exclusivement destinés à être associés aux @@@@Agents, afin d’en affiner leur programmation. Cette colonne liste les @@@@Agents (identifiés par leur ID) qui dépendent du calendrier.
Créer nouveau CalendrierPas de sélectionPour ajouter un calendrier, cliquer sur l’action. Vous serez alors redirigé vers la page d’édition du calendrier en cours de création.La création ne sera effective qu’après avoir validé le détail du Calendrier.
Supprimer CalendrierSélection multiple possibleSupprime la définition d’un calendrier.Un Calendrier ne peut pas être supprimé s’il est en cours d’utilisation par au moins un @@@@Agent. C’est-à-dire, tant qu’un @@@@Agent est associé à ce Calendrier et qu’il est actuellement programmé.

Une fois créé, un Calendrier peut être complété ou modifié. Pour cela, il faut cliquer sur son Nom ou son ID pour accéder à son détail.

Lorsque des modifications sont validées, le Scheduler se charge de recalculer les dates de déclenchement de tous les @@@@Agents (déjà programmés) dépendants du Calendrier mis-à-jour.

Détail d’un @@@@Agent

Le détail de fonctionnement et de paramétrage d’un @@@@Agent est scindé en plusieurs sections – chacune se rapportant à un aspect fonctionnel de la tâche ou du déclenchement:étatoptions génériquestâcheidentitéinformation de déclenchementcalendrier d’exclusionLes propriétés présentes dans les différentes sections peuvent varier selon que l’@@@@Agent est cours de création ou de modification.La création d’un @@@@Agent n’est complète qu’une fois la page de détail soumise et validée.Toute modification doit être validée en cliquant sur le bouton .La soumission entraîne la programmation immédiate de l’@@@@Agent dans le Scheduler.Si l’utilisateur ne souhaites pas modifier l’@@@@Agent, il peut revenir au Tableau de bord des @@@@Agents en cliquant sur l’onglet @@@@Agent du bandeau de navigation.

Etat de l’@@@@Agent

Cette section est exclusivement informative. Elle résume, à un instant donné, les évènements liés au déclenchement de l’@@@@Agent en cours d’édition.

Dernière exécution Indique la dernière date à laquelle l’exécution s’est correctement déroulée (la tâche n’a pas pas été interrompue; aucune erreur fatale n’est survenue; …). Dans certains cas, cet élément peut être renseigné avec la valeur ‘Jamais’, comme par exemple, lors de la création d’un nouvel @@@@Agent.

Actuellement programmé Valeurs: ‘Oui’ / ‘Non’

Rappelle si le déclenchement de l’@@@@Agent est actuellement assuré par le Scheduler. Dans le cas de la création initiale d’un @@@@Agent, celui-ci ne sera automatiquement programmé qu’au moment de la validation.

Dernier déclenchement Tant que l’@@@@Agent est programmé, le Scheduler est en mesure de fournir la date du dernier déclenchement qu’il a assuré depuis la programmation de l’@@@@Agent.

. Si l’@@@@Agent a été déprogrammé puis reprogrammé, il est possible que cette date ne soit pas disponible.

. Les déclenchements ‘manuels’ de l’@@@@Agent n’affectent pas cette date.

Prochain déclenchement Tant que l’@@@@Agent est programmé, le Scheduler conserve la date du prochain déclenchement à venir.

Options génériques de l’@@@@Agent

Par le terme « générique », il est entendu que tous les @@@@Agents Workey disposent des propriétés listées dans cette section; et cela quel que soit l’implémentation de leur tâche.

Toutefois, le paramétrage de ces propriétés:

. reste spécifique à chaque @@@@Agent.

. est susceptible d’être désactivé, verrouillé ou imposé selon la nature de la tâche.

Journalisation de l’activité La case à cocher permet d’activer/désactiver la journalisation de activité de l’@@@@Agent.

. Pour que la journalisation soit effective, il est nécessaire de définir le nombre maximum d’entrées dans le journal. Une fois la taille maximale atteinte, les entrées les plus anciennes sont automatiquement supprimées. Spécifier un nombre négatif ou nul désactive la journalisation.

. Il est possible d’accéder au journal de l’@@@@Agent en cliquant sur l’icône 

Autoriser les instances multiples Lorsque cette option est sélectionnée, toutes les instances de l’@@@@Agent pourront s’exécuter simultanément.

Dans le cas contraire, toute nouvelle instance de l’@@@@Agent s’interrompra si une autre instance est déjà en cours d’exécution.

. L’implémentation de la tâche d’un @@@@Agent peut ne pas autoriser les exécutions concurrentes. Dans ce cas, la case-à-cocher sera grisée (non modifiable). C’est le cas des @@@@Agents de type Délai et @@@@Vue Asynchrone.

. Il s’agit juste de bloquer le déclenchement multiple d’un agent donné (ID), et non pas de l’ensemble des @@@@Agents d’un même type.

Tâche de l’@@@@Agent

Le contenu de cette section est dépendant de la nature de l’@@@@Agent. Elle regroupe les paramètres spécifiques au traitement que réalisera l’@@@@Agent.

Type de tâche Indique le type de l’@@@@Agent.

Lors d’une création d’@@@@Agent, le type aura été désigné avant l’accès à la page d’édition. Les types possibles étant:

. Délais

. @@@@Rôle

. @@@@Vue Asynchrone

. Synchroniseur

. Archiveur

. Personnalisé

Classe JAVA

Cette propriété n’est disponible que dans le cas des @@@@Agents de type Personnalisé.

A la création d’un @@@@Agent de ce type, il est obligatoire de renseigner la propriété avec le nom de la classe JAVA contenant l’implémentation de la tâche.

Il faut indiquer le nom complet de la classe (incluant le package éventuel).

Exemple:

Pour créer un agent personnalisé il suffit de sélectionner le type :

Cliquer ensuite sur « Créer un nouvel @@@@Agent »

Une fois l’agent personnalisé crée saisir la classe java a instancier et ensuite cliquer sur charger la classe

Cette procédure permet de s’assurer de l’accessibilité de la classe sur le classpath et de récupérer ainsi qu’afficher la description de la tâche associée avec les paramètres internes nécessaires au traitement de celle-ci.

A partir du moment où l’@@@@Agent est créé, il n’est plus possible de modifier la classe JAVA sur laquelle il s’appuiera

Pour les autres types d’@@@@Agent, dont l’implémentation est native au moteur, le détail de leur tâche est automatiquement présenté.

@@@@Description de la tâche Résumé du traitement effectué par la tâche.

Paramètre(s) de la tâche Présenté sous forme de table, l’ensemble des paramètres de la tâche est listé afin d’être renseigner ou modifier. Au moment de la validation de la page d’édition (à l’aide du bouton Apply button.png situé en bas de page), les paramètres feront l’objet d’une vérification.

Nom Nom interne du paramètre.

Utilisé La case-à-cocher permet de spécifier explicitement l’usage (ou non) d’un paramètre qui serait optionnel.

Le caractère obligatoire du paramètre est indiqué par la case cochée et grisée (non modifiable).

Valeur Un paramètre ne peut avoir qu’une seule valeur. Selon l’implémentation, le paramètre pourra prendre sa valeur soit dans une liste prédéfinie, soit elle devra être saisie par l’utilisateur. Lorsque le paramètre est obligatoire, une étoile est affichée à côté du champ.

Il n’est pas autorisé de sélectionner la case-à-cocher d’un paramètre optionnel tout en omettant de spécifier sa valeur.

@@@@Description Indique la signification ou l’utilisation qui sera faite de ce paramètre dans le traitement.

@@@@Agent Délai

Les @@@@Agents Délai sont utilisés pour traiter:

les dépassements de délai,

les évènements liés aux données.

Contrainte de définition

. un seul @@@@Agent, au plus, peut être défini pour chacune des unités de temps prises en charge. Cela signifie, par exemple, qu’il ne peut pas y avoir deux @@@@Agents Délai définis avec l’unité hour.

. les instances multiples ne sont autorisées.

ParamètreValeurDéfinition@@@@Description
Delay.UnitdayhourminObligatoireL’@@@@Agent ne traitera que les évènements spécifiés avec cette unité.
onTimetruefalseObligatoireLa valeur false indique à l’@@@@Agent que les évènements devront être traités sans tenir compte de leur date d’échéance. C’est-à-dire que tous les évènements, dont l’unité de temps correspond à celle de l’@@@@Agent, seront traités immédiatement.true est la valeur par défaut de ce paramètre.

@@@@Agent @@@@Rôle

Un agent par rôle est destiné à traiter des documents en endossant un @@@@Rôle spécifique. Ce @@@@Rôle est associé à une identité @@@@Acteur. La création de cette identité, ainsi que son association au @@@@Rôle, est réalisée lors du déploiement des processus qui contiennent des @@@@Rôles joués par des @@@@Agents.

ParamètreValeurDéfinition@@@@Description
batchSizenombre entier non nulOptionnelDétermine la taille des lots de documents à traiter (nombre entier >= 0). La valeur par défaut, 0 (zéro) désactive le traitement par lot.

La raison d’être de ces @@@@Agents est liée aux @@@@Processus qui les requièrent. Leur création est assurée par l’action de déploiement. Toutefois, si l’utilisateur souhaite créer (ou recréer) un @@@@Agent @@@@Rôle, il ne lui sera pas possible de demander la création Adhoc d’une identité @@@@Acteur. Il devra choisir une identité @@@@Acteur parmi celle listée (cf. Identité de l’@@@@Agent).

@@@@Agent @@@@Vue Asynchrone

Par opposition aux vues dites « temps réel » (c’est-à-dire calculées immédiatement et à la demande des utilisateurs), les vues asynchrones ne sont calculées qu’à intervalle régulier. Leur résultats sont alors sauvegardés afin d’être consultés par les utilisateurs sans besoin de les recalculer. Le calcul de ces vues est délégué à des @@@@Agents.

ParamètreValeurDéfinition@@@@Description
localeLe code ISO-639 de la langueObligatoireLa « localisation » à utiliser lors du calcul de la vue (ex:’fr’,’en’).
viewDesignerNameLe nom de la vueObligatoireLe ‘DesignerName’ de la vue à calculer.

Afin que la vue calculée soit intelligible, il est nécessaire de s’assurer que le ou les processus (sur lesquels s’appuie cette vue) aient été déployés avec les ressources de langue voulue.

  • Un agent ne réalise le calcul d’une vue que pour une seule localisation.
  • Il ne peut y avoir deux agents définis pour une vue avec une même localisation.
  • Il est déconseillé de programmer une fréquence trop élevée pour ces agents, car les instances multiples ne sont pas autorisées.

@@@@Agent Archiveur

L’agent Archiveur à pour objectif de paramétrer la gestion des archives Workey.

Les différents paramètres possibles sont les suivants (une valeur par défaut leur est attribuée s’ils ne sont pas renseignés):

archive.archiveDirectory : indiquer dans Valeur le nom du répertoire d’archive où les documents seront transférés,

archive.archiveDS : indiquer dans Valeur le nom de la source de données pour atteindre la base d’archivage,

archive.timeout: indiquer dans Valeur le temps maximum que peut durer la tâche d’archivage (à utiliser dans le cas où un temps d’exécution important est attendu) (la tâche sera reprise depuis son point d’arrêt au prochain lancement de l’agent)

@@@@Agent Personnalisé

Il est possible de programmer des @@@@Agents dont la tâche a été implémentée sous la forme d’une classe JAVA (développement spécifique).

Pour définir un tel @@@@Agent, au moment de sa création il faut spécifier le nom (pleinement qualifié) de la classe JAVA qui correspond à l’implémentation de la tâche. Une fois le champ renseigné, il faut cliquer sur le bouton Charger la classe. Si la classe est bien présente – et accessible depuis le classpath du serveur Workey- le détail de ses éventuels paramètres s’affichera.

Une fois créé, l’@@@@Agent Personnalisé ne peux pas avoir sa classe changée.

Pour ce type d’@@@@Agent, il n’y a pas de restriction en terme d’unicité de déclaration.

Identité de l’agent

Le fonctionnement des agents Workey requiert qu’à chaque tâche soit associée l’identité d’un acteur.

Plusieurs cas de figure peuvent se présenter pour le choix de cette identité.

Soit elle n’est pas possible, car imposée par le type de l’agent:

Soit le choix peut se faire parmi la liste déroulante de toutes les identités éligibles:

Soit, lors de la création d’un nouvel agent, il peut être proposé une case-à-cocher pour créer une nouvelle identité d’un acteur ad-hoc.

. Ces acteurs ont la particularité d’avoir leur attribut LDAP_CLASS renseigné avec la valeur AGENT.

. Les agents créés automatiquement par déploiement d’un processus se verront affecter une identité d’acteur créée ad-hoc.

. Pour les agents de type « @@@@Rôle », les acteurs créés lors d’un déploiement de processus sont automatiquement affectés aux rôles nécessaires pour accomplir leur tâche. Ces affectations ne doivent pas être altérées.

Information de déclenchement

L’instanciation d’un @@@@Agent est déterminée par son mode d’exécution. Le mode de démarrage permet de différer ou non la première instanciation (à compter de sa programmation).

Mode d’exécution

Par définition, un agent est destiné à s’exécuter (instanciation) de manière répétée. Il est possible de choisir si ces déclenchements successifs doivent intervenir à intervalle régulier, ou bien selon un motif défini.

Répétition à intervalle régulier

Préciser l’intervalle de temps souhaité, en le sélectionnant dans la liste déroulante de durées prédéfinies.

Expression CRON

Saisir l’expression CRON déterminant les instants de déclenchements.

La flexibilité de ce genre d’expressions permet de spécifier des déclenchements du genre: « à 08 heure 15 du matin du lundi au vendredi » ou « à 01 heure 30 du matin tous les derniers vendredi du mois ».

La syntaxe des expressions CRON est explicitée dans [| »le tutoriel du Scheduler Quartz »].

Ces expressions, bien que puissantes, peuvent vite se révéler difficiles à appréhender et à maîtriser.

Elles sont aussi susceptibles d’induire des comportements inattendus – tels que lors des changements d’heure d’hiver.

Mode de démarrage

La validation du détail d’un @@@@Agent entraîne sa programmation immédiate dans le Scheduler. Il est cependant possible de différer sa première exécution en spécifiant un mode de démarrage autre que « dès que possible ».

Dès que possible

Valeur par défaut.

Compte-à-rebours

Un délai fixe sera pris en compte lors de la détermination du premier déclenchement.

Heure fixe

Le premier déclenchement de l’@@@@Agent peut être paramétré pour un horaire précis (le jour même de sa programmation). Si l’instant désigné par l’horaire est déjà dans le passé, alors le déclenchement aura lieu le jour suivant, à l’heure spécifiée.

Date fixe

A 00h00 de la date sélectionnée. Si l’instant désigné est déjà dans le passé, alors le mode de démarrage sera Dès que possible.

. La reprogrammation d’un @@@@Agent depuis le tableau de bord des @@@@Agents tient compte du mode de démarrage choisi au moment de sa définition.

. Spécifier à la fois un mode de démarrage différé et un mode d’exécution basé sur une expression CRON peut avoir une incidence sur le premier déclenchement. Exemple: Programmation le 15 janvier 2011 à 07h00 d’un @@@@Agent avec

mode d’exécution Expression CRON pour un déclenchement tous les jours à 05h00

mode de démarrage Heure fixe à 06h00.

Le premier déclenchement n’aura lieu que le 17 janvier 2011 à 05h00.

Calendrier d’exclusion

Un Calendrier, préalablement défini, peut être associé à un @@@@Agent. Un Calendrier est dit « d’exclusion » car il définit un ensemble de dates (ou périodes) durant lesquelles les @@@@Agents associés ne se déclencheront pas.

Calendrier d’exclusion

La liste déroulante sera vide dans le cas où aucun Calendrier n’est actuellement défini. Pour associer l’@@@@Agent à un Calendrier, il est nécessaire de sélectionner ce dernier dans la liste et de cocher la case « Utiliser calendrier ».

Il n’y a pas d’association dans les cas suivants:

. case à cocher sélectionnée alors qu’il n’y a aucun Calendrier actuellement défini (liste déroulante vide).

. un Calendrier est sélectionné dans la liste déroulante, mais la case-à-cocher ne l’est pas.

Détail d’un calendrier

La création d’un Calendrier requiert la définition:

  • d’un nom unique (qui le désignera)

ET

  • d’une (ou plusieurs) date(s) à exclure

ET/OU

  • d’une expression CRON.

Il est nécessaire de valider (à l’aide du bouton  

 situé en bas de page) pour confirmer la création/mise-à-jour du Calendrier.
  • La mise-à-jour d’un Calendrier entraîne la réactualisation de la programmation des @@@@Agents qui lui sont associés.

Nom du Calendrier

Celui-ci est obligatoire et doit être saisi au moment de la création. Afin de s’assurer de l’unicité du nom choisi, il est possible d’utiliser le bouton « Vérifier Nom ».

Ce nom ne pourra plus être modifié une fois le Calendrier créé.

Exclusion d’un motif CRON

L’implémentation des Calendriers permet d’exclure des intervalles de temps à l’aide d’une expression CRON.

Par exemple, pour exclure l’ensemble des instants en dehors des heures de bureau (08h00 – 17h00), tous les jours:

* * 0-7,18-23 ? * *

Il est important de se rappeler que l’expression CRON utilisée pour un Calendrier définit les périodes de temps desquelles sont exclus les déclenchements des @@@@Agents. Alors que l’expression CRON spécifiée pour le mode d’exécution d’un @@@@Agent décrit quant à elle, les instants auxquels les déclenchements doivent avoir lieu.

De fait, un @@@@Agent programmé avec une expression CRON donnée, associé à un Calendrier défini avec la même expression CRON, ne se déclenchera jamais – le calendrier excluant les périodes incluant les déclenchements; les deux expressions CRON (identiques) s’annuleraient mutuellement.

Date(s) d’Exclusion

Pour ajouter d’une date à exclure:Saisir ou choisir (à l’aide du composant   ) une date.Cliquer sur l’icône    ou sur l’intitulé de l’action ‘Ajouter nouvelle date’ pour ajouter à la liste la date choisie.Pour supprimer une date:Sélectionner la ou les dates dans le tableau en cochant leur case correspondanteCliquer sur l’icône    ou sur l’intitulé de l’action ‘Supprimer la(les) date(s) sélectionnée(s)’ pour supprimer.
Pour l’ajout, le champ date est obligatoire.La description associée à une date est optionnelle.L’exclusion d’une date donnée se fait pour le jour entier (de 00h00 à 23h59:59).