Workflow de demande de congés eGroupWare
Par Nicolas le lundi, juin 16 2008, 14:55 - articles - Lien permanent
Le module WorkFlow d'eGroupWare permet, comme son nom l'indique, de gérer des workflow, c'est à dire des processus internes au sein d'eGroupWare.
Ce module est basé sur le moteur de Workflow OpenSource Galaxia. La documentation sur le module WorkFlow d'eGroupWare est pour le moment très limitée, celle de Galaxia est donc d'une grande aide.
Les possibilités de création de processus sont nombreuses grâce à l'accès à l'API d'eGroupWare (langage PHP)
Principe et nomenclature
Les processus gérés par le module WorkFlow sont divisée en activités reliées par des transitions.
Une activité peut être interactive, c'est à dire qu'un utilisateur va devoir effectuer une action.
La gestion des droits s'effectue à l'aide de rôles.
Chaque lancement d'un processus est une instance.
Création d'un processus
La première étape de création d'un processus est sa modélisation:
- assignation des rôles à des utilisateurs/groupes, des
- création des activités (au minimum deux: start et end)
- rattachement des activités entre elles
On peut alors visualiser le cheminement via un graphique
La deuxième étape consiste à développer les activités interactives à l'aide d'une interface donnant accès au code PHP et au template html.
Il est possible d'ajouter un agent SMTP à une au plusieurs activités d'un processus afin d'envoyer des mails.
Il est aussi possible d'interagir avec les autres modules d'eGroupWare. Par exemple, l'ajout d'un événement dans le calendrier.
Processus de demande de congés
Voici un exemple de processus de gestion d'une demande de congés:
- L'utilisateur demande un congé en indiquant une plage de date sur eGroupWare.
- Le validateur reçoit un email lui indiquant qu'une demande de congé a été effectuée. (agent mail_smtp)
- Le validateur valide, ou non, cette demande sur eGroupWare.
- Si la demande est validée, la plage de congés est incluse dans le calendrier eGroupWare.
- L'utilisateur reçoit un email lui indiquant que sa demande de congé a été traitée. (agent mail_smtp)
