> For the complete documentation index, see [llms.txt](https://docs.dietrichs.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.dietrichs.com/dietrichs-intelligent-documentation/francais/le-systeme-de-variables/formules-et-textes/variables-dans-les-textes-and-ref.-produits.md).

# Variables dans les Textes & Réf. Produits

Les textes sont utilisés pour les cotations, les textes et les annotations. Dans tous ces endroits, les textes ou une partie du texte peuvent être définis par des variables.

* Dans les textes, il est possible de mélanger du texte libre avec des variables. Exemple :

<p align="center"><strong><code>'Longueur : #VL[m,3]#, Largeur : #VB[cm,1]#, Hauteur : #VH[cm,1]#'</code></strong></p>

* Il est possible d’ajouter des variables dans le texte provenant d’une variable dont l’unité est '**texte**' ou (**Enumération**).
  * Les variables avec Réf. Produit ou Type de barre peut être utilisée directement.
  * Les variables nombres (Unité m, cm, etc…) et valeurs intermédiaires peuvent être utilisées avec la mise en forme appropriée.
  * Il est également possible de choisir les variables système disponibles pour la fonction appelée.
* Les valeurs numériques présentes dans les textes et description peuvent être mises en forme.
  * Cette mise en forme est ajoutée à la variable en indiquant entre l’unité et le nombre de décimales entre deux crochets.\
    Exemple : **`#V23[cm, 1]#`** pour obtenir la variable 'V23' en centimètres avec une seule décimale.
  * Le nombre de décimales peut être spécifié pour les unités m (mètre), cm (centimètre), mm (millimètre) et in (Inch/pouces). Pour l’unité ft (Feet-Inch/Pieds-Pouces), la fraction peut être renseignée (Par exemple '16' pouces).
  * Pour les indications angulaires, l’unité degré est utilisée. Exemple. **`#VAngle[°,1]#`**.
  * pour les autres numéros qui ne sont ni des dimensions ou des angles, l’unité peut être omise. Néanmoins, la virgule avant le nombre de décimales doit quand même être ajoutée.\
    Exemple : **`#VNombre[,1]#`** ; Exemple 'Sans virgule': **`#VNombre[,0]#`**.
  * (V20.02) Il existe maintenant une option de formatage supplémentaire pour l'édition des variables dans les textes. Pour ce faire, on ajoute un caractère de remplissage et le nombre total de caractères après la virgule.

Exemple avec la variable **V\_Nombre=34.34676**. Le formatage **`#V_Nombre[m,2]#`** génère un résultat en mètres avec 2 décimales : **34.35**. Désormais, vous pouvez étendre le formatage ainsi **`#V_Nombre[m,2,x,8]#`**; La lettre x est placée autant de fois que nécessaire depuis le début de la valeur afin d’obtenir 8 caractères : **xxx34.35**. Le séparateur décimal compte aussi comme un caractère.\
Si aucun caractère de remplissage n'est requis, le formatage peut toujours être écrit avec des unités et des décimales : **`#V_Nombre[m,2]#`**.\
Si une variable de texte est formatée au plus long, aucune unité ou arrondi n'est nécessaire. Exemple avec la variable **V\_Texte=abcde**. Le formatage **`#V_Texte[,,-,8]#`** crée autant de caractères – que nécessaire pour obtenir un total de 8 caractères : **---abcde**. Dans le formatage, les deux premières virgules doivent être spécifiées, même s'il n'y a pas d'unité ou d'arrondi.\
Ce formatage est utilisé, par exemple, pour les listes justifiées à droite ou pour créer des noms de fichiers.

Les variables peuvent être utilisées de la même manière pour des numéros d’identification. Ce numéro peut ensuite être attribué à un composant, à une bibliothèque de composants ou à une partie d’un texte. La combinaison texte plus variable permet d’ajouter une dimension à un texte.\
Exemple : Un numéro d’identification doit être composé d’un texte '**Tube**' et de sa longueur **VL** en mm sans décimales. La représentation de la formule doit être **`Tube#VL[mm,0]#`**.

Les textes peuvent également être composés de variables dans les E.C.P. avec les valeurs intermédiaires. Ces dernières sont très importantes pour obtenir un texte incluant différentes informations devant être indiquées sous certaines conditions. Pour plus d’informations, cf. chapitre 'Valeurs intermédiaires' présent dans le document ECP\_Ud\*\*\_\*.

### Règles spéciales dans les formules pour les valeurs intermédiaires de type texte

Si une valeur intermédiaire est définie par une valeur de type Texte (unité **txt**), on peut directement renseigner le texte en clair dans les formules. Ils peuvent être complété éventuellement par des variables. Pour cela, les règles suivantes doivent être respectées :

* Si la valeur intermédiaire doit prendre directement la valeur d'une variable de type Texte, alors cette variable peut être écrite directement dans la formule, sans caractères spéciaux. Par exemple, si la valeur intermédiaire **V\_ZW\_Text1** doit récupérer la valeur de la variable **V\_Var\_Text**, alors la formule est simplement : **V\_Var\_Text**

Remarque : Le programme vérifie d'abord si le texte entier de la formule correspond au nom d'une variable (variables système, variables utilisateur, valeurs intermédiaires). Si c'est le cas, le texte est interprété prioritairement comme une variable et sa valeur est récupérée.\
\
Donc dans notre exemple, il n’est pas possible d’utiliser le texte **V\_Var\_Text** directement puisqu’il s’agit d’une variable ; il serait remplacé par sa valeur. Il en est de même avec les variables système : Si une formule se compose uniquement du mot **SWAKT**, ce dernier sera toujours remplacé par la valeur correspondant à la variable système <mark style="color:blue;">**`SWAKT`**</mark> (Étage actuel).

Si vous avez besoin d’indiquer le nom de la variable (variables système, variables utilisateur, valeurs intermédiaires), celle-ci devra être complétée d’un caractère. Le caractère « espace » peut être utilisé pour précéder la variable. En revanche, les signes opératoires (-+\*/\~<>= etc.) ne sont pas autorisés. Exemple de variable complétée d’un caractère : **\_SWAKT** ou bien **SWAKT\_**.

* Si les variables (variables système, variables utilisateur, valeurs intermédiaires) sont combinées avec du texte clair, les noms des variables devront être enserrées entre # : Texte clair #SWAKT#
* (17.01) Ces règles s'appliquent également aux formules qui font partie d'une formule conditionnelle.\
  (18.01) Notez que dans les formules conditionnelles, le texte brut doit toujours être écrit avec des guillemets.\
  Exemple : En partant du principe que la valeur de <mark style="color:blue;">**`SWAKT`**</mark> est **RC**.

La formule conditionnelle **`(`*****`Condition`*****`);(#SWAKT#);(`**<mark style="color:blue;">**`SWAKT`**</mark>**`)`** donne le résultat suivant :

* Condition remplie : **RC** (#SWAKT# est remplacé par sa valeur)
* Condition non remplie : **RC** (<mark style="color:blue;">**`SWAKT`**</mark> est reconnu comme une variable parce qu'il est seul. Pour cette raison, il est également remplacé par sa valeur)

La formule conditionnelle **`(`*****`Condition`*****`);("Texte clair" #SWAKT#);("Texte clair"`` `**<mark style="color:blue;">**`SWAKT`**</mark>**`)`** donne le résultat suivant :

* Condition remplie : **Texte clair RC** (#SWAKT# est remplacé par sa valeur)
* Condition non remplie : **Texte clair SWAKT** (SWAKT n'est pas reconnu comme une variable parce qu'il n'est pas seul)

### Formules conditionnelles pour les valeurs intermédiaires de type texte (unité txt)

(21.01) Pour les valeurs intermédiaires de type nombre décimal (unité m), les conditions peuvent contenir à la fois des formules mathématiques et des comparaisons de textes. Cependant, les formules de valeurs intermédiaires de type texte (unité **txt**) sont entièrement traitées comme des textes ; les conditions sont donc exécutées avec des comparaisons de textes. Les conditions pour les valeurs intermédiaires de type Texte ne peuvent pas contenir de formules mathématiques.

<details>

<summary>Exemple d'une valeur intermédiaire de type Texte</summary>

La formule conditionnelle suivante est possible car la condition compare les textes : le nom de la conception doit contenir **AW**, puis **C24** est pris, sinon **KVH-Si** :

Formule possible : **`(`**<mark style="color:blue;">**`AUSF`**</mark>**`={AW*});(C24);(KVH-Si)`**

La formule conditionnelle suivante n'est pas possible car la condition contient des formules mathématiques. Le programme reconnaîtrait la variable **V\_Largeur** et comparerait sa valeur avec le texte "**2.0**" après un tri alphabétique : Et cela a des résultats déroutants cela a des résultats de résultat déroutants :

Formule incorrecte : **(V\_Largeur>2.0));(C24);(KVH-Si)**

{% hint style="danger" %}
Attention ! Si **V\_Largeur** a la valeur **3.00**, les textes "**3.00**" et "**2.00**" seront comparés et le résultat **C24** sera correct. En effet, le 3 vient après le 2 dans l'ordre alphabétique ; il est donc plus grand. Cependant, si **V\_Largeur** a la valeur **10.00**, le résultat est **KVH-Si**. Le "**10.00**" n'est donc pas supérieur à "**2.00**" car le 1 vient avant le 2 dans l'alphabet et est donc plus petit.
{% endhint %}

</details>

{% hint style="info" %}
Remarque : Comme le contenu d'une valeur intermédiaire peut aussi être une formule conditionnelle, c'est ce que le système examine en premier. Si un caractère de comparaison (=, <, >, !=) est trouvé, le système part du principe qu'il s'agit d'une formule conditionnelle et essaie de décomposer le texte en conséquence à partir de ce caractère. Inversement, cela signifie qu'un texte simple ne peut pas contenir un tel caractère. L'entrée de texte **Longueur=1.00** (avec ou sans apostrophe) ne serait donc pas acceptée, car le système l'interpréterait comme une formule conditionnelle et se dirigerait vers une erreur.
{% endhint %}

{% hint style="info" %}
&#x20;Recommandation relative aux conditions pour les valeurs intermédiaires de type texte (unité txt) :

Si vous souhaitez créer des conditions pour des valeurs intermédiaires de type Texte (unité txt) avec des formules mathématiques, vous devez les saisir dans le champ "Condition variable". Ensuite, les conditions ne sont pas dans une formule conditionnelle, mais sont des conditions indépendantes et sont analysées en conséquence. Des formules mathématiques ainsi que des comparaisons de textes sont alors possibles.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.dietrichs.com/dietrichs-intelligent-documentation/francais/le-systeme-de-variables/formules-et-textes/variables-dans-les-textes-and-ref.-produits.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
