Guides:TestWF -3

De Wiki1000

Sommaire

Paramétrage des processus métiers

Le modèle de processus métier

Vue simplifiée du modèle

https://frp.sage.fr/wiki1000/medias/images/testwf/image107.emf

Les différentes entités du modèle de processus

Les serveurs

Les serveurs sont des entités qui hébergent les machines. La fonction des serveurs est de fournir des informations stables d’adressage (serveur, services…) aux machines.

Les machines

Les machines sont les entités qui exécutent les processus métiers.

Une machine maintient :

une liste de points d’écoute des évènements initiaux des processus,

une liste d’instances de processus en cours d’exécution,

une liste d’évènements métiers susceptibles d’être traités.

Les processus métiers

Les entités Processus Métiers contiennent la description du processus métier. Un processus métier est identifié par son nom et sa version. Il est constitué d’un ensemble d’activités et d’évènements.

Les catégories de processus métiers

Les catégories de processus métiers servent à classer les processus métiers. Elles sont arborescentes et un processus métier peut être rattaché à zéro ou à une catégorie.


L’exécution d’un processus métier

Un processus métier est exécuté en étant placé dans une machine.

Une copie du processus métier est alors créée et maintenue dans la machine. Cette copie est conservée tant que des instances sont en cours d’exécution ou que de nouvelles instances sont susceptibles d’être créées.

Comme l’exécution utilise une copie du processus métier, les modifications apportées ultérieurement au processus métier ne sont pas prises en compte dans la version en cours d’exécution.

Pour prendre en compte les modifications d’un processus métier en cours d’exécution, il faut :

soit attendre que toutes les instances en cours soient terminées pour arrêter le processus métier et le recharger,

soit changer la version du PM et exécuter la nouvelle version. Dans ce cas, plusieurs versions du processus métier s’exécuteront simultanément.


Les instances de processus métiers

L’exécution d’un processus métier crée des instances de ce processus. A un instant donné, il peut exister aucune, une ou plusieurs instances de ce processus.

Une instance de processus métier a un état qui évolue entre l’état initial du processus métier et un des états finaux.

Les activités

Les activités sont les tâches élémentaires réalisées par un processus métier.


Les évènements

Les évènements sont des activités particulières qui permettent à un processus métier d’attendre qu’une condition soit remplie.

Trois types d’évènements sont disponibles :

les évènements initiaux :

Un processus métier doit contenir un seul évènement initial. L’évènement initial attend qu’une condition soit remplie pour créer une instance de processus métier.

les évènements finaux :

Un processus métier doit contenir au moins un évènement final. Lorsque l’état d’une instance atteint un évènement final, l’instance est terminée.

les évènements intermédiaires :

Ils sont utilisés à l’intérieur d’un processus métier pour attendre qu’une condition soit remplie.


Les gestionnaires d’exception

Les gestionnaires sont des activités particulières permettant de réagir de façon globale à des situations inattendues.


Les séquences entre évènements et activités

Les activités et les évènements sont en relation par des séquences, des liens, qui indiquent l’enchainement entre ces éléments, c'est-à-dire la façon dont l’état d’une instance peut changer.

Trois types de séquences sont disponibles:

Séquence Succès : enchainement si l’exécution de l’activité est un succès,

Séquence Echec : enchainement si l’exécution de l’activité est un échec,

Séquence TimeOut : enchainement si l’exécution de l’activité ne s’est pas réalisée.


Les automates à états finis

Les automates à états finis ne sont pas visibles de l’utilisateur ou du concepteur de processus métiers mais il est utile de comprendre leur fonctionnement pour la compréhension du système.

Un processus métier est traduit en description d’automates à états finis:

chaque élément du processus métier, c’est-à-dire activité ou évènement, correspond à un état de l’automate,

chaque séquence entre deux éléments correspond à une transition entre les deux états.

Lorsqu’une instance de processus métier est créée, un automate correspondant est créé dans l’état initial du processus métier. L’automate évolue ensuite suivant l’apparition d’évènement internes élémentaires générés par les activités.

Ces évènements élémentaires sont générés par l’exécution des activités et sont définis ainsi :

EVN_OK 

Une activité génère un évènement OK lorsque l’exécution de l’activité est un succès. La machine passe dans l’état défini par la transition Etat courant / Séquence OK.

EVN_NOK 

Une activité génère un évènement NOK lorsque l’exécution de l’activité est un échec. La machine passe dans l’état défini par la transition Etat courant / Séquence NOK.

EVN_WAIT 

Une activité génère un évènement WAIT lorsque l’exécution n’a pas eut lieu. La machine reste dans l’état courant.

EVN_TOUT

Cet évènement est utilisé de façon interne pour indiquer un Time out.

EVN_HALT

Cet évènement est utilisé de façon interne pour interrompre une instance.


Les branches

Généralement l’état suivant l’exécution d’une activité est unique. Mais si l’activité dispose de plusieurs séquences sortantes vers plusieurs éléments différents, il est possible d’avoir plusieurs états suivant le nombre d’éléments.

Dans ce cas la machine crée une ou plusieurs branches. Une branche est une restriction du processus métier qui est exécutée en parallèle avec la branche principale. La branche principale est la branche correspondant à la première séquence sortante.

Une instance de processus métier ne peut se terminer que si toutes ses branches sont terminées.

Les branches peuvent être synchronisées, c’est-à-dire attendre que toutes les branches rejoignent un état particulier.


Les attributs et paramètres des processus

Les instances des processus métiers maintiennent une liste d’attributs au cours de la vie de l’instance. Ces attributs peuvent être manipulés par les activités du processus métier et sont finalement archivés dans le journal.

Un attribut est défini dans les propriétés du processus. Il peut être manipulé lors de la conception du processus.

Un paramètre est ajouté lors de l’exécution d’une instance. Il n’est pas défini lors de la conception du processus.

Un paramètre  est défini par deux identifiants, un préfixe et un nom ; le préfixe n’est pas obligatoire.

Valeurs des paramètres et attributs

Pour accéder aux attributs et paramètres dans le code d’une activité :

nom_attribut

nom_paramètre_sans_préfix

Get(nom)

Get(prefix.nom)

GetParameter(prefix, nom_paramètre)

Pour définir un attribut ou un paramètre dans le code d’une activité :

nom_paramètre_sans_préfix := valeur

Set(nom, valeur)

Set(prefix.nom, valeur)

SetParameter(prefix, nom, valeur)

Les valeurs des attributs ou des paramètres peuvent aussi être substituées dans le paramétrage des activités. Utilisez pour cela une notation entre crochets [ ]. Le contenu entre crochets est une expression qui sera évaluée lors de l’exécution de l’activité.

Exemple :

image108.png


L’instance métier d’une instance de processus

Une instance de processus métier peut être rattachée à une instance d’un objet métier. Dans ce cas cet objet métier peut directement être manipulé dans le code des activités de l’instance.

Lorsque l’évènement initial du processus métier est un évènement métier déclenché par un objet métier, alors ce rattachement est automatique et implicite.


Les messages émis par les instances de processus

Les activités peuvent émettre des messages. Ceux ci sont collectés par la machine et sauvegardés dans le journal.

La fonction principale de ces messages est la mise au point et le suivi du cheminement des instances.


Le journal d’exécution

Le journal d’exécution garde trace de l’exécution des instances des processus métiers.

L’enregistrement dans le journal est réalisé lorsque l’instance est terminée.


Les évènements métiers

Les évènements métiers sont des objets d’une classe de la base de données Master. Ils permettent au processus métier de réagir à des changements d’états d’objets des applications métiers.

Le moniteur d’exécution des processus métiers

Dans le concepteur de processus métiers, ouvrez la commande Ouvrir le moniteur du menu Actions afin d’accéder au moniteur d’exécution de processus métiers.

image109.png

Le moniteur d’exécution des processus métiers a pour fonction de démarrer les processus, surveiller leur exécution et consulter le journal d’exécution.

Le concepteur de processus métiers

Le concepteur de processus métiers est accessible par le menu Fichier / Outils / Concepteur de processus métiers.

La fenêtre du concepteur de processus métiers comporte quatre parties :

image110.png

Arbre de la partie gauche de la fenêtre

L’arbre à gauche de la fenêtre affiche les différentes entités en rapport avec les processus métiers :

les serveurs, locaux ou distants, qui ont été enregistrés. Leur état est signalé (arrêté, suspendu, démarré) et il est possible de suivre l’exécution des processus métiers qui sont présents dans les moteurs.

les processus métiers, destinés à être exécutés par un service, et organisés en catégories.

les machines,

les processus exécutés par la machine,

les instances de processus exécutées par la machine,

les classes d’évènements métiers enregistrés,

les instances d’évènements métiers.

La palette d’outils centrale

Elle contient l’ensemble des évènements et activités disponibles pour construire un processus métier. Ces éléments sont regroupés logiquement dans des onglets.

La barre d’outils centrale

Elle contient les éléments les plus fréquemment utilisés.

La zone de droite

Elle contient la zone d’édition graphique des processus métiers.

La zone d’affichage des messages d’erreurs

La zone au bas de la fenêtre affiche les messages d’erreurs éventuels lors de la validation d’un processus métier.

Service Ligne 1000 et processus métiers

Principes

Un Service Ligne 1000 peut démarrer un seul serveur de processus métier.

Le service démarre le serveur de processus métiers dont le nom et le service correspondent au nom de la machine exécutant le service et au nom du Service.

Lorsque le service est démarré, le serveur de processus métiers et les machines qu’il contient sont automatiquement démarrées en mode exécution.

Lorsque le service est arrêté, le serveur est arrêté et l’état des machines en cours d’exécution est sauvegardé.

Paramétrage du service

Le fichier de configuration du serveur contient différentes entrées en relation avec les processus métiers.


BP RunOnStart Valeur logique Indique si le Serveur de processus est automatiquement démarré
SMTP Host Chaîne Serveur de messagerie SMT pour l’envoi d’Email
SMTP Port Entier Port du serveur de messagerie SMTP
SMTP Login Chaîne Compte utilisateur du serveur SMTP
SMTP Password Chaîne Mot du passe du compte du serveur SMTP
SMTP From Chaîne Adresse de l’expéditeur des Email envoyés par le serveur SMTP

Arrêt et démarrage

Il est possible d’arrêter et de démarrer manuellement le serveur d’un service à partir du concepteur de processus ou du moniteur.

Sur le serveur, sélectionnez la commande Arrêter le service du menu contextuel.

image111.png


Cette action arrête l’ensemble du serveur. Lorsqu’un serveur est redémarré manuellement les machines qu’il contient ne sont pas automatiquement démarrées. Vous devez manuellement des démarrer et les placer dans l’état exécution.

Evènements métiers

Définition des évènements métiers

Les évènements métiers sont des objets d’une classe contenue dans le référentiel.

Cette classe hérite de la classe des évènements utilisée pour l’enregistrement des traces. Ainsi les évènements métiers et les évènements de trace sont unifiés dans le même modèle. De ce fait tout évènement généré par le système de trace est potentiellement utilisable comme évènement métier à l’intérieur des processus métiers.

Les évènements métiers peuvent donc être créés par :

le système de gestion des traces,

l’exécution d’une règle d’état posée dans le modèle,

le code métier,

les services du serveur Ligne 1000.

Classes d’évènements métiers

Les classes d’évènements métiers décrivent les évènements métiers pour permettre de les identifier plus facilement. Elles permettent en particulier d’associer une classe métier à un ensemble évènements.

image112.png

Sur le dossier Classe d’évènements métier enregistrer un évènement à l’aide du clic droit / Nouvel évènement.

L’évènement créé sera pris en compte uniquement après le redémarrage des services.


Evènements métiers

Les évènements métiers sont des objets du référentiel créés par différentes sources, et correspondant à un évènement généralement en rapport avec un changement d’état du métier.

image113.png

Informations liées aux évènements métiers

Les informations liées à un évènement métier sont enregistrées lors de sa création.

image114.png


Enregistrement des évènements métiers

L’enregistrement des évènements métiers permet de définir des classes d’évènements utilisables dans les processus métiers.

Sur le dossier « Classes d’évènements métiers », choisissez la commande Nouvel élément du menu contextuel.

image115.png


L’identifiant

Il est automatiquement construit à partir des constituants. C’est cet identifiant qui est utilisé par les activités pour retrouver les évènements les concernant.

Type

Type de l’évènement métier. Ce type dépend de la nature et de la source de l’évènement.

Nom utilisé

Ce champ contient la classe de l’objet métier associé. Cet attribut est utilisé uniquement pour les évènements en rapport avec une classe métier.

« Nom de l’évènement »

Ce champ contient une propriété associée à l’évènement. Cet élément est utilisé uniquement pour certains types d’évènements.


Type de l’évènement Source Attribut Classe Attribut Propriété
Création d’un objet Traces Classe de l’objet
Suppression d’un objet Traces Classes de l’objet
Mise à jour d’un objet Traces Classes de l’objet Vide ou nom d’un attribut de l’objet
Exécution d’une méthode d’un objet Traces Classes de l’objet Nom de la méthode
Exécution d’un traitement Traces Classes d’un d’objet de type processus ayant une méthode « Exécute » « Exécute »
Changement de l’état d’un objet Traces Classes de l’objet
Exécution d’une règle d’état Règles Classes de l’objet
Evènement utilisateur Code métier, Services Classe de l’objet ou vide Nom de l’évènement

Description de l’évènement

Il est possible dans cet espace de donner une description de l’évènement ou de saisir du code métier.

Pour relier un évènement métier à une classe d’évènements il faut éditer l’évènement métier puis sélectionner l’identifiant de la classe créée.

image116.png

Le bouton [+] à gauche de l’identifiant permet de créer aussi directement la classe à partir de cet écran.

Ajouter des règles d’état au modèle métier

Une règle d’état est une règle métier qui permet de créer automatiquement un évènement métier lorsque l’état d’un objet change. Une règle d’état est statique.

image117.png

Double-cliquez sur la règle pour afficher les propriétés.

image118.png

La règle est associée à une classe d’évènements métiers, cette classe étant déterminée au moment de la définition de la règle.

Le fonctionnement de la règle est le suivant :

la règle est évaluée lorsque l’objet rentre en transaction, la valeur retournée par la règle est sauvegardée.

la règle est de nouveau évaluée lors de l’évènement BeforeSave pendant la mise à jour de l’objet. Si la valeur retournée par la règle a changé, alors l’évènement associé à la règle est créé.

Il est possible d’enregistrer directement un évènement directement par la fonction Nouvel évènement du dossier « Classes d’évènements métiers ».


Les nouveaux types de trace « Changement d’un état » et « Changement d’un état ou création »

De nouveaux types d’éléments de trace ont été ajoutés pour permettre de définir des règles d’état à partir du système de gestion des traces.

Ces éléments fonctionnent comme une règle d’état, l’expression associée à l’élément constituant le code de la règle.

Le type « Changement d’un état ou création » est déclenché soit par le changement d’état soit par la création de l’objet.

image119.png

Dans le dossier « Classe d’évènements métiers », positionnez-vous sur une classe et ouvrez la fenêtre d’enregistrement d’un évènement.

image120.png

Déclenchement d’un évènement métier par le code métier

Création d’un évènement métier à partir d’une instance d’objet métier

Les objets métiers exposent une API permettant de créer un évènement utilisateur.

Procedure CreateCustomEvent(const iName :String ; iInfo1,iInfo2 :variant; iParameters:Array of variant) ;

Cette opération crée un évènement métier dont l’origine est l’instance. L’objet appelant doit être en transaction et l’évènement créé est ajouté à la transaction en cours.

Les paramètres doivent être renseignés sous forme de paire Nom, Valeur.

Créer un évènement métier indépendamment d’une instance d’objet métier.

Utiliser la méthode de classe de TbpeXEvent.

Procedure TbpeXEvent.CreatecustomEvent(const ieventName :String ; iInfo1,iInfo2 :variant ; iParameters:Array of variant) ;

Cette méthode créé un évènement métier, qui n’est pas lié à une instance, dans une transaction séparée. Après l’appel, l’évènement est enregistré en base de données.

Exemple :

unit TestSYFREWF;

interface

Type

 TestAPI = Class(TitObject)
 public
   Caption: string;
   ObjectClassLabel: string;
   ObjectClassName: string;
   oid: string;
   Procedure CreateAnEvent;
 end;

Implementation

{TestAPI}

Procedure TestAPI.CreateAnEvent;

//Procedure CreateAnEvent;

begin

 TbpeXEvent.CreateXEvent('MyEvent','info1','info2',['a1',0,'a2',1]);

end;

end.

Cas d’utilisation : déclenchement d’un processus par un évènement utilisateur

Pour déclencher un processus depuis un évènement utilisateur, vous pouvez procéder de la façon suivante.

Vous devez en premier lieu, sur la classe de l’évènement métier, définir l’évènement utilisateur.

image121.png

Puis utilisez cet évènement lors du paramétrage d’un évènement métier (double-clic sur l’évènement métier).

image122.png

Créez l’évènement dans le code métier.

image123.png

Dans le journal d’exécution, vous retrouvez les paramètres utilisés lors de la création de l’évènement.

image124.png

Les principaux attributs de la classe Evènement

EventType

Indique le type de l’évènement.

EventSourceName

Indique la source qui a créée l’évènement.

Exemple


Règle d’état Nom de la règle
Instance d’objet Nom de la classe
Instance de classe Nom du type de la classe TbpeXEvent
REST Nom du service


EventInfo1 et EventInfo2

Ces deux informations sont passées lors de la création de l’évènement. Pour une règle d’état ce sont les valeurs de l’état qui à changé et qui a déclenché la règle.

oidEventObject

OID de l’objet ayant créé l’évènement.

Pour un processus déclenché par cet évènement métier, cet objet métier devient l’objet métier rattaché à l’instance du processus

EventObjectClass

Classe de l’objet associé à l’évènement.

EventObjectProperty

Nom de la propriété associé à l’évènement.

Les paramètres.

Un évènement métier peut avoir une liste de paramètres.

Prise en compte des évènements métier par les machines

Une machine d’exécution des processus métiers maintient une date d’exécution égale à la plus petite date d’exécution des instances de processus qu’elle contient. Une machine ne peut pas prendre en compte un évènement antérieur à cette date.

Une des conséquences de cette règle est que les évènements pris en compte par une instance ne peuvent qu’être chronologiques. Ainsi, il n’est pas possible de prendre en compte un évènement antérieur à un évènement déjà pris en compte.

Service REST de création d’un évènement métier

Ce service REST est un service générique qui permet de créer un évènement en exécutant une requête HTTP GET.

Le service n’est pas identifié ce qui signifie qu’il n’est pas nécessaire d’obtenir une session serveur pour l’appeler.

L’URL du service est une URL de service REST :

http://hostname/servicename/server/rpc.l1000/rest/xevent.add?paramètre1=valeur1&paramètre2=valeur2&…

Paramètres de la requête :

Paramètre Type Défaut
Caption Chaîne Libellé associé à l’évènement
EventType Enuméré Type de l’évènement CUSTOM
EventSourceName Source de l’évènement REST
EventResult Entier Valeur entière associée à l’évènement 0
EventDataBaseURL Chaîne Base de données associée à l’évènement
EventSourceInfo1 Chaîne Valeur chaîne associée à l’évènement
EventSourceInfo2 Chaîne Valeur chaîne associée à l’évènement
InstanceOID

oidEventObject

OID Identifiant de l’objet associé à l’évènement
EventObjectClass Nom de classe Nom de la classe de l’objet associé à l’évènement
EventObjectProperty

EventName

EventId

Chaîne Identifiant de l’évènement
Autres paramètres


Tous les paramètres de la requête sont copiés dans les paramètres associés à l’évènement. Ils pourront être copiés dans les paramètres de l’instance du processus par l’activité consommant l’évènement.

La réponse du service est un flux XML contenant l’acquittement de l’enregistrement de l’évènement.

Pour créer un évènement CUSTOM , vous devez renseigner les paramètres de la façon suivante :


EventName Obligatoire Identifiant de l’évènement CUSTOM
EventSourceInfo1

EventSourceInfo2

Facultatif Des paramètres associés à l’évènement qui pourront être testés dans les activités de l’instance.
EventDataBaseURL Facultatif L’URL de la base de données si vous souhaitez qui cet évènement ne soit pris en compte que dans un certain contexte


Palette d’outils centrale : séquences, évènements et activités

Définitions

Séquences

Les séquences servent à relier les évènements et les activités et sont symbolisées par des courbes de couleurs :

Une séquence ne relie que deux « objets » entre eux : un seul évènement à une seule activité (ou deux évènements entre eux, ou deux activités entre elles).


Chaque activité et évènement est une étape du processus métier.

Les évènements

Les évènements sont des « signaux » permettant de démarrer des processus métier. Il peut s’agir de changements dans le métier (création ou modification d’objets métiers par exemple), ou d’évènements extérieurs (réception de mail, création de fichier dans un répertoire…). Ils sont symbolisés par un rond avec une couleur ou une signalétique spécifique :

Les activités

Les activités sont toutes les « actions » que peuvent faire les Processus Métier. Elles sont symbolisées par un rectangle avec une couleur et une signalétique spécifique :


Evènements et activités standards

Onglet « Evènements initiaux »

https://frp.sage.fr/wiki1000/medias/images/testwf/image125.pngEvènement initial déclenché par le métier 

Evènement initial qui est déclenché par la création d’un évènement métier.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Evènement Immédiat

Evènement initial qui est déclenché immédiatement.

Cet évènement se déclenche à chaque cycle d’exécution de la machine.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Evènement Jamais

Evènement initial qui n’est jamais déclenché.

Cet évènement est utile pour définir des processus métiers qui sont appelés par d’autres processus.

Onglet « Evènements »

https://frp.sage.fr/wiki1000/medias/images/testwf/ Evènement Toujours

Evènement intermédiaire qui est toujours vérifié.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Evènement  Terminé

Un processus doit posséder un évènement final par branche.

Onglet « Activités standards »

https://frp.sage.fr/wiki1000/medias/images/testwf/ Activité  Nulle

Activité qui n’effectue aucune opération. Elle sert principalement à mettre au point et tester un processus métier. Elle se termine toujours avec un résultat « succès ». Il est possible de lui adjoindre des notifications, contrairement à d’autres activités, ce qui peut être utile pour vérifier le fonctionnement d’un processus métier.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Activité  Appel d’un processus

Activité qui exécute un autre processus. Cette activité peut être utilisée pour :

l’intervention en simultané de plusieurs en parallèle sur un même processus,

découper un processus métier complexe et en tester facilement les branches,

créer des sous processus métiers réutilisables par plusieurs processus.


image126.png

Onglet « Général »

Processus

Identifiant du processus à exécuter. Si le processus n’est pas présent dans la machine au moment de l’exécution, il sera automatiquement chargé.

Attendre la fin d’exécution pour poursuivre

Exécution synchrone d’un processus. L’activité attendra la fin du processus exécuté pour poursuivre l’exécution.

Exécution asynchrone : l’activité n’attend pas la fin d’exécution du processus exécuté pour poursuivre.

Délai d’attente

Précise un délai au-delà duquel l’activité considèrera que le processus appelé est en Timeout.

La case Attendre la fin d’exécution pour poursuivre doit être cochée pour qu’un Timeout soit détecté.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Activité  Synchronisation de branches

Activité permettant de synchroniser plusieurs branches d’exécution.

Exemple :

image127.png


La première activité de ce processus va créer deux branches d’exécution qui seront synchronisées. Le processus ne peut se terminer que si les deux branches sont terminées.

Les gestionnaires

https://frp.sage.fr/wiki1000/medias/images/testwf/ Gestionnaire  des Time Out (expiration des délais d’attente)

Gère l’expiration des délais d’attente qui ne sont définies explicitement dans le processus métier.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Gestionnaire des Erreurs

Gère les séquences Echec qui ne sont définies explicitement dans le processus métier.

Les évènements et activités liés au métier

https://frp.sage.fr/wiki1000/medias/images/testwf/ Evènement  Métier

Evènement intermédiaire attendant l’apparition d’un évènement métier.


image128.png

Onglet « Général »

Evènement

Nom de l’évènement métier qui doit déclencher le processus.

Préfixe (évènement attente)

Préfixe utilisé pour copier les attributs de l’évènement dans les paramètres de l’instance du processus. Si ce champ n’est pas renseigné, les attributs ne seront pas copiés. Pour un évènement initial la valeur vaut toujours « initial ».

Evènement de l’instance principale (évènement attente)

L’évènement métier doit avoir été créé par l’objet associé au processus pour être pris en compte.

Tester la valeur de Info1 ou Info2 

Les valeurs des attributs EventSourceInfo1 ou EventSourceInfo2 de l’évènement doivent correspondre aux valeurs renseignées dans les champs correspondants Info1 et Info2 pour que l’évènement soit pris en compte.

Info1, et info2 :

Valeurs des attributs info1 et Info2 attendues.

Déterminé par Info1 ou Info2 (évènement attente) :

Si les valeurs des attributs Info1 ou Info2 de l’évènement correspondent aux valeurs renseignées, alors l’activité se dirige vers la séquence Succès qui sera enchainée ; dans le cas contraire elle se dirige vers la séquence Echec qui sera enchainée.

Définir comme objet de l’instance.

L’objet associé à l’évènement métier devient l’objet associé à l’instance du processus.

Onglet post-condition :

image129.png

Cet onglet permet d’ajouter une ou plusieurs conditions sur le métier pour que l’évènement soit déclenché.

Lorsqu’un évènement métier déclenche un processus métier :

il copie ses attributs dans les paramètres de l’instance du processus métier. La source des attributs est « initial »

l’objet ayant créé l’évènement devient l’objet associé à l’instance du processus métier.

Onglet Métier

https://frp.sage.fr/wiki1000/medias/images/testwf/ Exécuter un script

Cette activité exécute un script métier.

image130.png


Toutes les possibilités du langage de script sont disponibles.

La valeur de retour de l’exécution détermine la séquence qui sera enchaînée .

bprOK La séquence Succès sera enchaînée
bprNOK La séquence Echec sera enchaînée
bprWAIT L’instance reste dans l’état courant et l’activité sera ré exécutée au prochain cycle.
bprHALT L’instance est interrompue.
bprERR L’instance est interrompue. (TODO)

Une erreur de compilation est équivalente à un retour bprOK.

Attributs spécifiques aux processus métiers

Instance Référence Référence sur l’objet métier rattaché à l’instance du processus
ProcessId Chaîne Identifiant du processus
InstanceId Chaîne Identifiant de l’instance du processus

Cet identifiant est unique pour une exécution du processus, si le processus est placé dans plusieurs machines l’unicité n’est pas garantie.

InstanceGUID Chaîne GUID de l’instance du processus.

Cet identifiant est un GUID tiré par le système et garanti unique.

HostName Chaîne Nom du Serveur exécutant le processus
HostServiceName Chaîne Nom du Service exécutant le processus
HostBaseURL Chaîne Base de l’URL du serveur exécutant le processus.
HostBaseRESTURL Chaîne Base de l’URL des services REST du serveur, égale à

(BaseHostURL)rpc.l1000/rest/

PublicFolder Chaîne Répertoire publique du serveur
InstanceFolder Chaîne Un répertoire réservé à l’instance du processus
InstanceDatabaseURL Chaîne L’Url de la base de données associée à l’instance du processus.


Les méthodes spécifiques aux processus métiers sont :

function Get(const iPrefixedParameter :string) :Variant ;

function GetParameter(const iPrefix:string; const iName:string):Variant;

Ces méthodes retournent la valeur d’un paramètre.


function GetPublicFolder(const aSubFolder:string):string;

Cette méthode retourne un chemin de repertoire dans la zone publique du serveur.


procedure Set(const iPrefixedParameter :string; const value:Variant);

procedure AddParameter(const iPrefix:string; const iName:string; const value:Variant);

Ces méthodes positionnent la valeur d’un attribut, si celui-ci n’existe pas il est créé.


function uniqueID(const aPrefixedParameter :string) :variant ;

Positionne la valeur d’un attribut avec un identifiant unique. Si celui-ci n’existe pas il est créé. Un identifiant unique est un GUID (Global Unique Identifier) et invisible pour l’utilisateur, tiré sur la machine exécutant le processus.


Procedure setInstance(const iOID :TOID) ;

Cette méthode définit l’instance d’objet métier associé à l’instance du processus métier.


Procedure AddMessage(const imsg :string) ;

Cette méthode ajoute un message dans la liste des messages de l’instance du processus métier.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Exécuter une expression 

Cette activité évalue une expression. Si le résultat est positif, la séquence « Succès » est enchaînée, sinon la séquence « Echec est enchaînée.

image131.png


Exemple 

image132.png

https://frp.sage.fr/wiki1000/medias/images/testwf/ Exécuter une méthode

Cette activité permet d’encapsuler l’exécution d’une méthode métier.

image133.png

Mode

Indique le type d’exécution :

une méthode de l’objet associé à l’instance,

une méthode d’une façade.

Classe

Nom de la classe supportant la méthode. Cette classe doit être une classe non persistante.

Méthode

Nom de la méthode à exécuter. La méthode ne doit comporter que des paramètres simples, les types classes, listes ou variant ne sont pas autorisés.

Préfixe

Préfixe de copie des paramètres en sortie de la méthode. Les paramètres de sortie sont tous les paramètres de type « out » ainsi que le résultat de la méthode si celle-ci est une fonction.

Associer l’objet retourné à l’instance

Si la méthode est une fonction et si celle-ci retourne un objet, cet objet sera défini comme l’objet associé à l’instance du processus.

Grille des paramètres

Liste des valeurs à passer à la méthode lors de l’appel.

Si vous cochez la colonne « Paramètre », la valeur est une expression qui sera évaluée et substituée lors de l’exécution.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Exécuter une modification

Cette activité permet d’effectuer des modifications sur l’objet associé à l’instance ou sur les paramètres de l’instance.

image134.png

Onglet « Valeur »

Attributs à modifier

La liste des attributs de l’objet ou de l’instance à modifier.

Vous pouvez saisir un nouvel attribut qui sera créé au moment de l’exécution.

Paramètre

Lorsque cette case est cochée, une expression est saisie en valeur.

Préfixe

Utilisez cette zone lors de la création de nouveaux attributs de l’instance.

Il est impossible d’effectuer un retour en arrière (rollback) après une modification réalisé par cette activité.


Cas d’utilisation des activités d’exécution de méthode et de modification

Cet exemple utilise une méthode pour créer un objet et l’associer à l’instance du processus.

image135.png

La première activité exécute une méthode d’une façade qui crée un objet métier. Cet objet est associé à l’instance du processus.

image136.png

La méthode exécutée :

unit TestSYFREWF;

interface

Type

 TestAPI = Class(TitObject)
 public
   Function CreateAWFClasseA():WFClasseA;
 end;

Implementation

{TestAPI}

Function TestAPI.CreateAWFClasseA():WFClasseA;

var inst:WFClasseA;

begin

 ClassManager.beginTran;
 try
   inst  := WFClasseA.Create;
   classmanager.InsertToTran(0,inst);
   inst.unCode := 'Nouveau-'+DateTimeToStr(Now);
   ClassManager.Commit;
   Result := inst;
 except
   ClassManager.RollBack;
   raise;
 end;

end;

end.

la seconde activité modifie les attributs de l’objet précédemment créé et crée un nouvel attribut de l’instance.

image137.png

la troisième activité exécute une méthode de l’objet.

image138.png

L’activité suivante attend que l’utilisateur change la valeur de l’état.

Le résultat de l’exécution ainsi que le code exécuté sont indiqués dans les messages.

image139.png

https://frp.sage.fr/wiki1000/medias/images/testwf/ Exécuter un curseur

L’activité curseur permet d’exécuter un curseur sur une classe et de traiter tous les objets retournés par le curseur.

Le principe d’exécution du curseur est le suivant :

Lors de la première activation le curseur est ouvert et l’ensemble des objets qu’il retourne sont stockés dans une liste temporaire. Le premier objet est ensuite sélectionné et l’évènement « OK » est retourné.

A chaque activation suivante, l’objet suivant de la liste est sélectionné et un évènement « OK » est retourné. Lorsque tous les objets sont traités, un évènement « NOK » est retourné.

image140.png

Classe

Classe sur laquelle porte le curseur. Cette classe peut être différente de la classe de l’objet associé au processus métier.

Référence

Attribut de type référence du processus métier auquel sera associée l’instance du curseur.

Cas d’utilisation d’un curseur

L’exemple suivant exécute un curseur sur une classe.

image141.png


Un attribut de type référence est défini sur le processus métier:

image142.png

Le curseur est paramétré de la façon suivante :

image143.png

L’activité exécutée à chaque pas de la boucle du curseur enregistre un message.

image144.png

Le journal rappelle le résultat de l’exécution lorsque le curseur renvoie trois objets.

image145.png

Les évènements et activités temporels

Onglet « Evènements initiaux»

https://frp.sage.fr/wiki1000/medias/images/testwf/ Evènement Horloge

Cet évènement permet une planification de l’exécution d’un processus métier. Il permet de créer des instances du processus sur la base d’une planification.

Onglet « Propriétés »

image146.png

Onglet « Simulation»

image147.png


Cet onglet permet de réaliser une simulation de la planification pour vérifier que les déclenchements correspondent aux besoins.

Exécuter / Stop

Démarre et arrête la simulation.

Date et heure de départ.

Indique la date et l’heure de départ de la simulation.

Pas d’horloge.

Indique la mesure de simulation.

Date et heure de dernière exécution.

Indique la date et l’heure de la dernière exécution au moment du démarrage de la simulation.

La simulation fonctionne en accélérant le temps et en affichant les dates de déclenchement.

Onglet « Evènements »

https://frp.sage.fr/wiki1000/medias/images/testwf/ Evènement attente d’un délai

Cet évènement attend un délai avant de poursuivre l’exécution, la séquence suivante est toujours « Succès ».

image148.png


Délai d’attente

Durée en seconde de l’attente.

Le délai démarre au moment où l’instance de processus entre dans l’activité. Si le processus est interrompu puis relancé à une date supérieure à la date du début de l’activité, le délai d’attente s’ajoute et l’instance enchaîne l’exécution.

https://frp.sage.fr/wiki1000/medias/images/testwf/Evènement attente d’une date et heure

Cet évènement attend une heure précise avant de poursuivre l’exécution, la séquence suivante est toujours « Succès ».


image149.png

Date

Permet de définir une date relative à laquelle le processus continuera.

Heure

Heure à laquelle l’instance de processus continuera.

Les évènements et activités de messagerie

Onglet Messagerie

https://frp.sage.fr/wiki1000/medias/images/testwf/ Envoyer un Mail

Cette activité permet d’envoyer un email. La boîte de dialogue de propriétés ressemble à celle de vos messageries habituelles.

image150.png

Onglet « Propriétés »

Id

Identifiant de l’email. Cet identifiant est utilisé pour faire le lien avec un évènement « Attente de réponse ». Si plusieurs mails sont envoyés par le processus métier et que des traitements doivent tenir compte des mails, ils utiliseront cet identifiant pour les reconnaître.

A, CC

Adresse des destinataires.

La saisie des adresses des destinataires utilise les conventions suivantes :

les adresses sont séparées par points-virgules,

si l’adresse contient un caractère arobase @ alors il s’agit d’une adresses externe Internet,

si l’adresse ne contient pas de caractère arobase @ alors il s’agit d’une adresses interne d’une boîte à message de l’application.

De

Adresse de l’expéditeur et de réponse. Cette adresse sera l’adresse à laquelle sera envoyée la réponse à ce mail. Si vous ne renseignez pas cette valeur, l’adresse d’expéditeur paramétrée dans les paramètres SMTP sera utilisée.

Seul le provider SMTP gère cette adresse.

Objet :

Objet de l’email.

Contenu

Contenu de l’email.

Bouton d’insertion de paramètre

https://frp.sage.fr/wiki1000/medias/images/testwf/Ce bouton permet d’insérer une expression dans les champs A, CC, Objet qui sera remplacée lors de l’exécution. Le curseur doit se trouver dans un des trois champs concernés.

image151.png

Exemple

Par exemple si l’objet qui a déclenché le processus métier possède un attribut email et que le mail doit être envoyé à cette adresse, on utilisera ce bouton pour insérer le code [Instance.email]. Lors de l’exécution du processus métier ce code sera remplacé par l’attribut concerné, dans cet exemple par l’adresse email.

Barre d’outils HTML

HTML REST

image64.png

Ce menu permet d’insérer une URL de réponse (REST) ou une URL d’accès à un écran accessibles pour le destinataire.

Les liens HTML REST demandent que le destinataire ait accès au serveur Sage 1000.

Référence du mail : l’évènement qui traitera la réponse à ce mail se basera sur cette référence pour l’identifier par rapport à tous les autres mails qui pourraient se trouver dans la boîte à mail référencée par le processus métier.

Lien réponse OK / NOK : Lorsque l’utilisateur cliquera sur ces liens il sera dirigé vers un écran HTML qui permettra au serveur Sage 1000 de mémoriser cette réponse et de déclencher la suite du processus métier. Celui-ci devra plus loin être relié à un évènement d’attente de réponse mail pour gérer cette réponse et générer un résultat Succès ou Echec.

Lien vers l’écran associé : Lorsque l’utilisateur cliquera sur le lien, un écran Sage 1000 sera ouvert. L’écran associé se paramètre dans l’onglet « Avancé » de l’activité.

Seul le premier lien cliqué sera pris en compte.


POP 3

image82.png

Ce menu permet d’insérer un bloc de texte dans le corps de l’email pour gérer la réponse (POP3).

Insérer un attribut : Le programme va insérer dans le corps du message, à l’endroit du curseur, le code d’un attribut de l’objet métier. Quand le message sera envoyé, ce code sera remplacé par la valeur réelle de l’objet métier en mémoire.

Réponse standard : Le programme va insérer un texte prédéfini expliquant comment répondre avec une réponse OK ou une réponse NOK, ainsi que la référence du mail.

Réponse OK / NOK : insère un code qui sera remplacé, à l’envoi du mail, par une réponse prédéfinie pour « accepter » ([mailresponse_ok]) ou « refuser » ([mailresponse_nok]).

Pour répondre à un mail, le destinataire doit être dans un environnement avec une messagerie compatible POP3.

Si le destinataire répondant à un email POP3 laisse par erreur les deux réponses OK /NOK dans le corps du mail ce sera la première réponse, par ordre de lecture, qui sera prise en compte.

Si le destinataire a fait une erreur dans sa réponse et renvoie une nouvelle réponse, seule la première réponse sera prise en compte car le processus métier aura continué son exécution. Le fonctionnement est identique pour les réponses via lien HTML REST.

Onglet « Avancé »

image152.png

Ecran associé

Ecran provenant de Sage 1000 utilisé par le lien « Lien vers l’écran associé ». il peut être saisi manuellement ou inséré via la boîte de sélection adjacent à la zone de saisie.

Ouvrir cet écran en mode création

Permet d’ouvrir l’écran en mode insertion au lieu de l’ouvrir en mode consultation.

Paramètres passés à l’écran 

Permet de définir des paramètres de l’écran.

Onglet « Pièces jointes »

Cet onglet permet de définir les pièces à joindre à l’email.

image153.png

Si vous renseignez un chemin de fichier, le fichier doit être accessible lors de l’exécution du processus métier.

Si vous renseignez un nom de fichier sans chemin, le fichier sera recherché dans le répertoire de l’instance du processus métier. Généralement ce fichier a été généré par une autre activité du processus et le nom du fichier est contenu dans un paramètre de l’instance. Il y a un répertoire par instance.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Réponse à un mail par REST

Cet évènement attend la réception d’un évènement créé par une réponse à un email envoyé par l’instance du processus.

image154.png

Réponse à.

Identifiant de l’activité ayant envoyé l’email.

Délai d’attente

Délai au-delà duquel l’évènement génèrera un timeout qui pourra être pris en charge par un évènement Timeout.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Réponse à un Mail par POP3

Cet évènement attend la réception d’une réponse à un email envoyé par l’instance du processus.

image155.png

Onglet «Général»

Réponse à.

Identifiant de l’activité ayant envoyé l’email.

Serveur, Port, Login, Mot de passe

Paramétrage du serveur POP3 et du compte de messagerie sur le serveur.

Délai d’attente

Délai au-delà duquel l’évènement génèrera un timeout qui pourra être pris en charge par un évènement Timeout.

Onglet « Avancé »

image156.png

Action sur les réponses reçues.

Détermine le comportement de l’activité lorsqu’une réponse est reçue.

Aucune : pas d’action. l’email est laissé en place sur le serveur de messagerie

Supprimer : l’email est supprimé du serveur de messagerie

Action sur les mails qui ne sont pas des réponses reçues

Détermine le comportement de l’activité lorsqu’un mail présent dans la boîte n’est pas une réponse.

Préfixe de paramètre pour la réponse

Préfixe utilisé pour copier les attributs de l’email reçu dans les paramètres de l’instance.

Il est important que le destinataire laisse dans le corps du message la référence du mail. Dans le cas contraire le système ne pourra pas le mettre en relation avec le processus métier et l’évènement « Réponse à un Email ». Dans ce cas, l’instance du processus métier restera indéfiniment en attente sauf si un Timeout et une séquence ont été prévus.


https://frp.sage.fr/wiki1000/medias/images/testwf/Evènement réception de Mail

Les tâches métiers

Onglet « Tâches »

https://frp.sage.fr/wiki1000/medias/images/testwf/ Impression

Cette activité permet d’exécuter une impression.

image157.png

Onglet Propriétés

Base de données

Base de données sur laquelle s’effectue l’édition. Renseignez cette base si elle diffère de la base de données sur laquelle l’instance du processus est exécutée.

Rapport

Nom de l’édition à réaliser.

Sortie sur

Sélectionne le type de sortie.

Imprimante

Lorsque le type de sortie est « imprimante », cette zone indique l’imprimante sur laquelle l’édition est imprimée. L’imprimante sélectionnée doit être une imprimante accessible depuis le serveur exécutant le processus. Pour cette raison, seules les imprimantes réseau sont proposées.

Type de fichier

Lorsque le type de sortie est « Fichier » cette zone indique le format de sortie.

Fichier de sortie

Si vous renseignez un nom de fichier sans chemin le fichier sera généré dans le répertoire de l’instance.

Si vous renseignez un chemin de fichier, celui-ci devra être accessible du serveur exécutant le processus.

Onglet paramètres 

image158.png

Cet onglet permet de renseigner les paramètres de la requête.

Valeur

Utilisez cette colonne si vous renseignez une valeur constante.

Expression

Utilisez cette colonne si vous renseigner une expression qui sera évaluée à l’exécution.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Import de données

Cette activité permet d’exécuter un import de données.

image159.png

Base de données

Base de données dans laquelle s’effectue l’import. Renseignez cette base si elle diffère de la base de données sur laquelle l’instance du processus est exécutée.

Fichier

Fichier de données à importer.

Si vous renseignez un nom de fichier sans chemin, ce fichier doit être présent dans le répertoire de l’instance.

Si vous renseignez un chemin de fichier celui-ci doit être accessible du serveur exécutant le processus.

Descripteur

Descripteur d’importation.

Mode d’importation

Indiquez quel mode d’importation vous souhaitez utiliser.

Options sur les erreurs

Défini les options sur les erreurs détectées.

Options sur le fichier

Défini les actions sur le fichier importé.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Export de données

Cette activité permet d’exécuter un export de données.

image160.png

Onglet Propriétés

Base de données

Base de données sur laquelle s’effectue l’exportation. Renseignez cette base si elle diffère de la base de données sur laquelle l’instance du processus est exécutée.

Fichier

Fichier de données à générer.

Si vous renseignez un nom de fichier sans chemin, ce fichier sera généré dans le répertoire de l’instance.

Si vous renseignez un chemin de fichier, celui-ci doit être accessible du serveur exécutant le processus.

Descripteur

Descripteur d’exportation.

Onglet paramètres

image161.png

Cet onglet permet de renseigner les paramètres de la requête

Valeur

Utilisez cette colonne si vous renseignez une valeur constante.

Expression

Utilisez cette colonne si vous renseigner une expression qui sera évaluée à l’exécution.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Activité : Exécuter un traitement métier

Cette activité permet d’exécuter un traitement métier. Les traitements métiers sont des traitements de l’application utilisable dans les processus métier et dans l’automate.

image162.png

Onglet Propriétés

Base de données

Base de données sur laquelle s’effectue le traitement. Renseignez cette base si elle diffère de la base de données sur laquelle l’instance du processus est exécutée.

Tâche

Sélectionner le traitement à réaliser.

Configurer la tâche

Ce bouton exécute l’écran permettant de configurer la tâche. Terminer l’écran en cliquant sur le bouton [Planifier].

Les évènements et activités techniques

Onglet « Systèmes »

https://frp.sage.fr/wiki1000/medias/images/testwf/ https://frp.sage.fr/wiki1000/medias/images/testwf/Evènement initial fichier et Evènement fichier

Ces évènements attendent qu’un fichier du système d’exploitation soit présent.

image163.png

Fichier

Chemin du fichier concerné.

Les chemins du fichier doivent être accessibles depuis le serveur exécutant le processus.

Action

Action sur le fichier détecté.

Aucune

Aucune action n’est effectuée.

Renommer

Le fichier est renommé. Le nouveau nom est l’ancien nom ajouté d’une extension numérique.

Déplacer

Le fichier est déplacé à l’emplacement indiqué par la zone Destination.

Supprimer

Le fichier est supprimé.

Préfixe des paramètres

Préfixe des paramètres copiés dans les paramètres de l’instance. Les paramètres sont :

fiename : nom du fichier destination.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Exécution d’un programme exécutable (exe)

Cette activité exécute un programme du système d’exploitation.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Exécution d’un fichier de commande (batch)

Cette activité exécute un fichier de commande du système d’exploitation.

image164.png

Onglet Propriétés

Fichier de commande 

Chemin du fichier de commande à exécuter.

Paramètres

Paramètres passé au fichier de commande. La règle de passage des paramètres est celle du système d’exploitation.

Mode d’exécution

Ne pas attendre la fin de l’exécution. Dans ce mode l’activité n’attend pas la fin de l’exécution du fichier de commande'.' 'L'a séquence '« 'Succès' »' est enchaînée.
Attendre la fin de l’exécution. Dans ce mode, l’activité attend la fin de l’exécution du fichier de commande. La séquence « Succès » est enchaînée.
Attendre la fin de l’exécution et tester la valeur de retour. Dans ce mode, l’activité attend la fin de l’exécution du fichier de commande. Elle teste ensuite la valeur de retour pour déterminer la séquence suivante. Si la valeur de retour correspond à la valeur renseignée alors la séquence est « Succès ». Dans le cas contraire, la séquence est « Echec ».

Les évènements et activité de maintenance

Onglet « Outils »

https://frp.sage.fr/wiki1000/medias/images/testwf/ Epurer le journal

Cette activité permet de supprimer les éléments contenus dans le journal

image165.png

Onglet propriétés

Epurer les enregistrements antérieurs à

Sélectionne la période d’épuration.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Epurer les évènements

Une activité particulière permet d’épurer les évènements métiers devenu obsolètes.

Les évènements obsolètes sont tous les évènements de date antérieure à la plus petite date d’exécution des machines.

Une conséquence de cette règle est que si une machine a été arrêtée à un instant T, tous les évènements de date supérieure à cet instant ne peuvent pas être épurés.

image166.png

Cette activité n’a pas de paramètres, elle épure tous les évènements inutiles.

Les évènements et activité de communication

Onglet « Communication »

https://frp.sage.fr/wiki1000/medias/images/testwf/ Transfert de fichier via FTP (Upload)

Cette activité permet de transférer un fichier vers un serveur FTP.

https://frp.sage.fr/wiki1000/medias/images/testwf/ Transfert de fichier via FTP (download) 

Cette activité permet de recevoir un fichier d’un serveur FTP.

image167.png

Serveur

Adresse du serveur FTP.

Port

Port du serveur FTP (21 pour un serveur standard).

Login

Utilisateur du serveur FTP.

Mot de passe

Mot de passe de l’utilisateur du serveur FTP.

Répertoire FTP

Répertoire FTP dans lequel il faut se positionner avant le transfert. S’il n’existe pas, il sera créé. Il est possible d’indiquer un chemin en séparant les éléments par le séparateur « \ » sous Windows.

Nom du fichier FTP

Nom du fichier dans le répertoire du le serveur FTP.

Fichier

Fichier à envoyer ou recevoir. Si le nom est relatif le fichier sera retrouvé ou placer dans le répertoire de l’instance du processus.


FAQ

Comment déclencher un PM à partir du code métier ?

L’évènement initial du processus métier doit être un évènement métier.

Le code métier crée un évènement de la classe de l’évènement initial du processus métier.

Comment déclencher un processus métier à partir d’une application externe ?

L’évènement initial du processus doit être un évènement métier.

L’application externe utilise une des méthodes suivantes :

Appeler le service REST des Evènements Métiers pour créer un évènement de la classe de l’évènement initial du processus métier.

Appeler le Web Service des Evènements Métiers pour créer un évènement de la classe de l’évènement initial du processus métier (TODO).

Utiliser le serveur COM pour créer un objet évènement de la classe de l’évènement initial du processus métier.

Comment passer des paramètres lors du déclenchement du processus métier ?

Vous devez au préalable définir les paramètres au niveau du processus métier.


Pour définir les paramètres du processus métier, reportez-vous au § .

Lors de la création de l’évènement initial par le code métier, vous devez ajouter à l’évènement les paramètres sous la forme de couple (nom,valeur).

Comment définir un processus métier ayant plusieurs sources de déclenchement ?

Définir le corps du processus métier dans un processus dont l’évènement déclencheur est « jamais ». Ce processus métier sera utilisé comme un sous processus.

Définissez des processus métiers déclencheurs appelant le processus métier précédent.


Pour définir des processus métier, reportez vous au § .

Comment associer un objet métier à une instance de processus métier ?

Dans les propriétés du processus, définissez la classe de l’objet. Cela permet de manipuler les attributs de sa classe lors de la conception.

Dans une activité script, appelez l’API « SetInstance ». Cette API affecte à l’instance l’objet dont l’OID est passé en paramètre.

Comment déclencher un processus métier à partir d’un Web Service ?

L’évènement initial du processus métier doit être un évènement métier.

Réalisez un Web Service dont les paramètres d’entrée correspondent aux paramètres du processus métier.

Dans le code du service, créez un évènement métier correspondant à l’évènement déclencheur du processus métier.

Outils personnels