Exemples de formules de saisie dans SOLIDWORKS PDM
Article de Michael Koenig, mis à jour le 29 janvier 2025
Article
SOLIDWORKS PDM Professional permet d'utiliser une formule de saisie pour un champ de texte dans une fiche de données. Cela signifie que ce champ de texte peut afficher les valeurs que les utilisateurs saisissent ou sélectionnent pour d'autres contrôles de la fiche. La formule de saisie peut inclure plusieurs variables, du texte statique et diverses fonctions.
Deux cas d'utilisation courants me viennent à l'esprit concernant l'utilisation des formules de saisie dans les fiches SOLIDWORKS PDM.
- Remplir une variable en assemblant des chaînes de texte statique et d'autres variables.
- Attribuer à une variable la valeur d'une autre variable via un alias.
Seul le contrôle de type « Zone d'édition » dispose d'une propriété permettant de définir une formule d'entrée. Cependant, les valeurs des variables qui alimentent cette formule d'entrée peuvent provenir d'une zone d'édition, d'un bouton radio, d'une liste déroulante, d'une liste de sélection, d'une liste simple, d'une liste, d'une case à cocher ou d'un champ de date. Nous allons examiner quelques exemples utilisant des listes de sélection pour choisir les valeurs de variables requises à utiliser dans nos formules.
Utilisation d'une formule de saisie pour concaténer des variables et du texte statique
Dans cet exemple, nous avons une carte modèle comportant les variables « Ville », « Région » et « Code », associées à des contrôles de liste déroulante. De plus, un contrôle de zone de texte est associé à la variable « Nom du projet ». Cette carte modèle a pour but de générer un nom de projet en fonction des valeurs sélectionnées par l'utilisateur pour les variables « Ville », « Région » et « Code ». Un modèle de dossier SOLIDWORKS PDM peut ensuite utiliser cette carte pour créer un nouveau dossier dans le coffre-fort portant le nom du projet.
Les contrôles de liste ne sont pas obligatoires, mais sont souvent utilisés en association avec les formules de saisie. Pour plus d'informations sur les contrôles de liste, consultez le document de référence « SOLIDWORKS PDM Combobox Styles Reference ».
Lorsque le contrôle « Zone d'édition » est sélectionné dans l'éditeur de cartes, les propriétés de ce contrôle s'affichent dans le volet de droite. La propriété « Formule d'entrée » se trouve au bas de ce volet.

Propriété « Formule de saisie » pour un contrôle de type « Zone de saisie »
Nous commencerons par saisir le texte statique « Prj » (abréviation de « Project ») suivi d'un tiret. Ajoutez ensuite les variables « City », « Region » et « Code ». Si vous le souhaitez, vous pouvez insérer des espaces ou d'autres éléments de texte statique entre les variables, mais nous les placerons les uns à la suite des autres. Le menu déroulant permet de sélectionner facilement les variables existantes.

Ajouter des chaînes de variables à la formule d'entrée
Lors de l'exécution du modèle de dossier PDM, si un utilisateur sélectionnait respectivement « Londres », « S » et « 340 » pour les champs Ville, Région et Code, la formule d'entrée renverrait « Prj-LondresS340 ». La zone de saisie étant liée à la variable Nom du projet, cela permet de créer un nouveau dossier dans le coffre-fort portant ce nom.
Utilisation de la fonction « Left »
Suppose we want to shorten the project name so that only the first 4 characters of the City are used. This can be done with the Left Substring function. The syntax is, “$Left(<string>,<number>)”, where <string> is the character string, in our case the City variable and <number> is the number of characters to display, in our case 4.

Utilisation de la fonction « Left » pour afficher les 4 premiers caractères de la variable « City »
Désormais, le nom du projet sera « Prj-LondS340 » au lieu de « Prj-LondonS340 ».
Tester le comportement
L'exécution du modèle de projet dans la vue locale du coffre-fort affiche la fiche du modèle à l'écran. Une fois les champs « Ville », « Région » et « Code » renseignés, le « Nom du projet » est évalué et renvoie le résultat attendu. En cliquant sur OK, un nouveau dossier sera créé dans le coffre-fort, nommé par exemple « Prj-LondS340 ».

Exécution du modèle pour créer un nouveau projet
Utilisation des alias de formule de saisie
Une autre application de l'utilisation d'une formule d'entrée dans SOLIDWORKS PDM consiste à afficher la valeur réelle d'une variable dans un champ de saisie et une valeur d'alias dans un autre champ. Supposons que nous souhaitions afficher le prix d'un composant sélectionné dans une liste déroulante. Nous pouvons configurer un alias pour chaque composant, la valeur de l'alias correspondant au prix du composant. L'idée est que l'utilisateur sélectionne un composant particulier et que la formule d'entrée renvoie l'alias (c'est-à-dire le prix) de ce composant.
Prenons l'exemple d'une liste déroulante (Combobox) comportant trois éléments : « Long Shaft », « Medium Shaft » et « Short Shaft ». Ce contrôle de liste déroulante est lié à la variable Component. Nous allons créer une autre variable appelée Component Price et la lier à un contrôle de zone de saisie (Edit-box).

Liste déroulante avec une liste de composants
Une façon de définir des alias consiste à le faire directement dans la formule d'entrée. Le format est le suivant : « %NOM_VARIABLE(VALEUR1=ALIAS1, VALEUR2=ALIAS2)% »
Créez une formule de saisie pour la variable « Prix du composant », comme indiqué ci-dessous.

Utilisation d'alias dans une formule d'entrée
Ainsi, lorsqu'un utilisateur sélectionne « Long Shaft » dans la liste déroulante « Composant » de la fiche d'un fichier, la zone de saisie « Prix du composant » affichera 300 $.
Notez que les éléments de la liste déroulante ont dû être retapés dans la formule de saisie. Outre le fait que cela nous impose un travail supplémentaire, cette méthode est source d'erreurs de frappe. Par exemple, on peut oublier un espace ou mal orthographier un mot. Il est essentiel de reproduire exactement les éléments de la liste, sinon aucune valeur ne sera renvoyée.
Une meilleure approche consiste à utiliser une liste d'alias, ce qui permettra de simplifier le processus.
Utilisation d'une formule de saisie avec une liste d'alias
Dans l'outil d'administration SOLIDWORKS PDM, créons une liste de fiches et définissons le type de données sur « Texte avec alias ». Saisissez les prix comme alias pour chaque composant de la liste.

Créer une liste d'alias
Désormais, la formule d'entrée pour le prix du composant correspond simplement à la variable « Composant », mais c'est l'alias du composant qui sera renvoyé par la formule.

Utilisation d'une formule d'entrée pour renvoyer la valeur d'un alias à partir d'une liste d'alias
Que vous définissiez des alias dans une formule d'entrée ou dans une liste de cartes de type alias, le résultat final est le même. Le contrôle « Droplist » affichera la valeur réelle, tandis que la zone d'édition affichera la valeur de l'alias.

Lorsque vous sélectionnez une valeur pour « Composant », l'alias de ce composant est renseigné dans le champ « Prix du composant »
Utilisation de la fonction « Chaîne X à partir de la liste »
Il arrive parfois que l'on souhaite obtenir une liste ordonnée. En reprenant l'exemple ci-dessus, nous allons modifier la liste des cartes de manière à ce que l'alias corresponde au numéro de ligne de la liste.

Modifier la liste des alias pour créer une liste ordonnée dans laquelle l'alias sert d'index
Now, we can use the “String X From List” function to evaluate the component price. The format of this function is “$Token(<string>|<string>|…,<index>,|), where <string>|<string>|” is a list of strings to choose from and <index> is the number of the string in the list to return. The first string from the left is index one. Recall that an Input formula returns a variable value’s alias, so we’ll use the Component variable for the Index of the function and build a list of strings for the prices.

Utilisation de la fonction « Chaîne X de la liste »
Voici comment cela fonctionne : si un utilisateur sélectionne « Medium Shaft », la formule d'entrée attribuera la valeur 2 à la variable « Component » en se basant sur la liste des alias. La deuxième chaîne de caractères dans l'argument de notre fonction étant $200, c'est cette valeur qui sera renvoyée par la formule d'entrée et définie comme valeur pour « Component Price ».
Limites
Les formules d'entrée nécessitent une interaction de l'utilisateur avec la fiche de données pour être évaluées. Par exemple, les variables modifiées automatiquement en raison de propriétés personnalisées mappées dans SOLIDWORKS, d'une action « Définir une variable » dans une transition de flux de travail, ou de l'application des valeurs par défaut lors de la première sauvegarde d'un fichier dans le coffre-fort ne déclencheront pas la mise à jour d'une formule d'entrée. Par conséquent, les contrôles de la fiche de données qui utilisent des formules d'entrée peuvent ne pas être toujours à jour. Pour contourner ce problème, saisissez à nouveau ou sélectionnez à nouveau la même valeur dans l'un des contrôles d'une variable utilisée dans la formule ; la formule d'entrée sera alors réévaluée.
Liens connexes
Vous souhaitez exploiter davantage SOLIDWORKS PDM ?
Nos experts certifiés SOLIDWORKS PDM peuvent vous aider à :
