[PDM] Condition de transition : égalité entre deux variables

Bonjour à tous,

Dans l’écriture d’une condition de transition, peut-on comparer les valeurs de deux variables entre elles ?

Merci.

Bonjour @jerome.lamar , bienvenue sur le forum.

Pourriez-vous donner un exemple de comparaison que vous souhaitez effectuer ?

De mémoire (je n’utilise plus pdm), il n’est pas possible de comparer directement 2 variables. Il faut ruser dans la définition de plusieurs conditions, voir créer des variables spécifiques utilisée uniquement pour les conditions de transition.

Je suis très intéressé par ce sujet!
Je cherche à comparer lors d’une transition le nom de celui qui passe la transition (variable Nom émetteur) avec le nom de la dernière personne ayant modifié le plan (chez nous c’est une variable spécifique _ModifiéPar) pour bloquer un petit sournois qui s’amuse à passer outre les procédure de validation de document. Si quelqu’un à une astuce, je prends!

Bonjour @lmoreau

Il y a une option spécifique pour gérer les petit sournois dans PDM :

Interdire les changements d’état séquentiels Ne permet pas d’effectuer deux transitions d’état séquentielles. A titre d’exemple, vous pouvez utiliser cette option pour empêcher les utilisateurs d’approuver leurs propres fichiers.

Définition de droits de transition - 2024 - Aide de SOLIDWORKS PDM

Je l’utilise dejà :wink:
En gros, lorsqu’un utilisateur à terminer un plan, il fait une demande de validation via une transition. L’option « interdire les chgt séquentiels » interdit donc à cet utilisateur de valider son propre plan.

Mais ce petit sournois (qui est aussi fourbe et vicieux), a demandé à un autre utilisateur de faire la demande de validation (sans jamais avoir bosser sur le plan), pour pouvoir s’auto valider ensuite sans restriction.
Je cherche donc à forcer celui qui fait la demande de validation à être l’auteur du plan.

Et si un plan est commencé par quelqu’un et fini par un autre (cas rare chez nous) je trouverai une parade à ce moment là.

Bonjour,

Alors sauf erreur de ma part, dans les conditions des transitions ce n’est pas possible (on ne peut pas récupérer le nom de l’utilisateur qui a effectué le changement d’état).
En revanche, si le nom des utilisateurs est identique au nom inscrit dans la variable qui affiche l’auteur du plan alors on doit pouvoir s’en sortir avec les scripts dispatch.

1 « J'aime »

Bonjour,

Malheureusement, j’ai eu plusieurs confirmation qu’il est impossible de poser une condition sur la comparaison de deux variables entre elles.

En revanche, Cyril.f m’a donné une idée avec les scripts Dispatch.
Le script doit être activé « pendant la transition d’état ».
Il faut renseigner le dossier où son stocké les plans soumis à cette interdiction d’autovalidation.
Il faut sélectionner ton état d’arrivée, donc l’état VALIDE, et cocher la case « Avant modification de l’état »

Le script suivant permet de comparer le créateur du plan (donc celui qui a créé le fichier, pas celui qui l’a mis en validation) avec l’utilisateur connecté (donc celui qui passe la transition de validation)

Je l’ai testé, ça a l’air de fonctionner.
Bon courage

2 « J'aime »

C’est tout à fait ça. je n’ai pas détaillé mais c’est bien ce type de script

1 « J'aime »