Sélecteurs d'opérateurs étendus
Présentation générale
Le sélecteur d’opérateurs (champ de type rôle) peut être surchargé grâce au vdoc.kit.
L’objectif de ce sélecteur d’opérateurs étendu est de permettre au concepteur d’un processus de déclarer une classe d’extension qui va surcharger le comportement standard du produit. Ainsi, la classe d’extension alimentera la liste des membres potentiels d’un rôle.
A partir de la version 1.5.2, de vdoc.kit, il est possible d’utiliser deux classes d’extensions livrées permettant d’alimenter la liste des membres potentiels d’un rôle soit à partir de groupe, soit à partir d’une organisation.
Cette page regroupe les différentes informations nécessaires pour personnaliser le sélecteur d’opérateurs de VDoc.
Utilisation
Pour mettre en place la personnalisation d’un sélecteur d’opérateurs, il suffit d’ajouter un champ Personne(s) d’un rôle dans un formulaire à l’aide Studio et de se rendre sur la section Développement des propriétés du champ.
La classe d’extension pourra être spécifiée dans la zone Attributs.
Personne(s) d’un rôle
L’attribut class-name permet de définir le nom complet de l’extension Java. Si aucune classe d’extension n’est définie, le sélecteur d’opérateurs respectera le comportement standard du produit.
L’attribut scope-type permet de définir la nature de la contrainte que l’on souhaite poser. Il est en effet possible de contraindre le champ Personne(s) d’un rôle à n’afficher que les utilisateurs d’une organisation ou d’un groupe. Cette attribut peut prendre les valeurs suivantes :
Valeur | Description |
---|---|
protocol-uri | Indique que la contrainte sera posée au travers d’une valeur de type protocolUri (seules les protocolUri d’organisations et de groupes sont supportées). |
organization-name | Indique que la contrainte sera posée par le nom système d’une organisation. |
organization-field | Indique que la contrainte sera posée par le nom système d’un champ sélecteur simple d’organisation. |
group-name | Indique que la contrainte sera posée par le nom système d’un groupe. Si cette valeur est spécifiée, il faudra ajouter un attribut organization-name car les noms systèmes des groupes ne sont pas uniques sur le serveur VDoc. |
group-names | Indique que la contrainte sera posée par les noms systèmes de groupes (séparateur ; point-virgule). Si cette valeur est spécifiée, il faudra ajouter un attribut organization-name car les noms systèmes des groupes ne sont pas uniques sur le serveur VDoc. |
group-field | Indique que la contrainte sera posée au travers du nom système d’un champ sélecteur simple de groupe. |
display-sysadmin | Indique que l’utilisateur ‘sysadmin’ pourra être sélectionné. |
display-anonymous | Indique que l’utilisateur ‘anonymous’ pourra être sélectionné. |
Exemple de personnalisation
Déclaration de la classe Java FillActorsExtension pour le pack Réclamations Client.
|
|
Exemples de personnalisation à partir de la version 1.5.2
Utilisation de la classe Java GroupOperatorsExtension pour permettre la sélection d’opérateurs à partir d’un groupe.
|
|
Utilisation de la classe Java GroupOperatorsExtension pour permettre la sélection d’opérateurs à partir de plusieurs groupes.
|
|
Utilisation de la classe Java GroupOperatorsExtension pour permettre la sélection d’opérateurs à partir d’un nom de groupe lié à un champ organisation.
|
|
Utilisation de la classe Java OrganizationOperatorsExtension pour permettre la sélection d’opérateurs à partir d’une organization.
|
|
Développement
Pour surcharger le comportement standard du produit, il suffit de développer une classe Java implémentant une méthode statique getMembers() et renvoyant une collection d’utilisateurs.
Paramètres de la méthode
Paramètre | Type | Description |
---|---|---|
context | com.axemble.vdoc.sdk.interfaces.IContext | Le contexte de l’utilisateur connecté. |
workflowInstance | com.axemble.vdoc.sdk.interfaces.IWorkflowInstance | Le document processus sur lequel s’exécute l’opération. |
property | com.axemble.vdoc.sdk.interfaces.IProperty | Le champ rôle concerné. |
Exemple de code
Alimentation du champ Personne(s) d’un rôle à partir d’un champ du document processus lié à une donnée du réservoir de données.
|
|