Attributs calculés
Cette page vous guide dans le paramétrage de la fonctionnalité attributs calculés, permettant d’automatiser la génération de contenu à partir de formules.
Accompagnement
Des compétences techniques sont nécessaires pour la création d'une expression en syntaxe Symfony.
Pour bénéficier d'un accompagnement dans la mise en place de cette fonctionnalité, adressez-vous à votre partenaire intégrateur.
Présentation
Les attributs de type attributs calculés sont des attributs dynamiques, générés automatiquement à partir d’une formule. Ils peuvent être intégrés sur les fiches produits, les fiches médias ou les variants.
Un attribut de type attributs calculés :
- Apparaît grisé sur la fiche,
- Est identifié par un symbole sigma Σ sur la fiche,
- Est un attribut non localisé et non éditable,
- N’est pas influencé par les jeux d’attributs, dont la configuration n’a pas impact sur le résultat du calcul.
Une fiche peut comporter plusieurs attributs calculés, et chaque formule d’attribut calculé peut inclure autant d’attributs que nécessaire.
Accéder au paramétrage des attributs calculés
Les attributs calculés sont des types d'attributs, ils se trouvent dans la page d’administration des attributs, accessible depuis le menu Administration, dans la page Attributs.

Pour ajouter un attribut attributs calculés, sélectionnez un objet dans la liste déroulante Type d'objet.
- Cliquez ensuite sur le dernier niveau de l'arborescence dans lequel vous souhaitez créer le nouvel attribut.
- Cliquez sur le bouton Ajouter un attribut dans le bloc de gestion des attributs.
- Renseignez les informations suivantes :
- Nom de l’attribut (non localisé)
- Code
- Sélectionnez le type d'attribut Formule.

Saisir une formule
Un attribut calculé repose sur une formule que vous définissez directement dans le champ Formule calculée.
Dans une formule, les attributs sont appelés par leur code.
La syntaxe d'une formule est basée sur la syntaxe PHP (cf. documentation l’expression Symfony).
Une formule d'attribut calculé peut combiner un ou plusieurs attributs de la même fiche produit à l’aide d’opérateurs mathématiques (+, -, *, /) et de fonctions telles que la concaténation, la moyenne et de nombreuses autres fonctions :
- roundup() -> Arrondi s'éloignant de 0
- rounddown() -> Arrondi se rapprochant de 0
- ceiling() -> Arrondi vers la valeur la plus grande
- average() -> moyenne
- concat() -> concaténation
- condition ? valeur si vraie : valeur si faux
Bon à savoir
- Le résultat d’un attribut calculé est toujours une valeur texte.
- Dans une fonction, un code d'attribut est toujours encadré de 2 deux-points consécutifs ::
Limitations
Il est impossible d’utiliser dans la formule :
- un autre attribut calculé,
- un attribut quel que soit le type si il est localisé,
- un attribut de type html ou json.
- Les attributs d’un autre type d’objet ne peuvent pas être utilisés dans une formule.
Gestion des erreurs
- Si la formule est invalide, la création est bloquée et un message d’erreur s’affiche.
- En cas de division par zéro ou autre incohérence, un message d’erreur est affiché dans la fiche produit.
- Si la valeur d'un des attributs de la formule est manquante, un point d’exclamation s'affiche sur la fiche produit à proximité de l'attribut calculé. Le survol de l'attribut permet de voir la liste des attributs concernés.
Exemples de formules d'attributs calculés
- Concaténation de texte :
Objectif : concaténer les valeurs de texte des attributs, séparés par un espace.
Code de l'attribut | Valeur |
---|---|
attr_code_A | Hello |
attr_code_B | World |
attr_code_C | Quable |
Formule : concat(::attr_code_A::," ",::attr_code_B::," ",::attr_code_C::)
Résultat : Hello World Quable
- Moyenne de valeurs :
Objectif : faire la moyenne des valeurs des attributs.
Code de l'attribut | Valeur |
---|---|
attr_code_A | 3 |
attr_code_B | 4,14 |
attr_code_C | 1 |
Formule : average(::attr_code_A::,::attr_code_B::,::attr_code_C::)
Résultat : 2,713
- Somme de valeurs :
Objectif : faire la somme des valeurs des attributs.
Code de l'attribut | Valeur |
---|---|
attr_code_A | 3 |
attr_code_B | 4,14 |
attr_code_C | 1 |
Formule : attr_code_A+attr_code_B+attr_code_C
Résultat : 8,14
- Conditions :
Objectif : Si l'attribut est <0, afficher A. Si l'attribut est <2, afficher B. Si l'attribut est <10, afficher C. Si l'attribut est <18, afficher D. Sinon, afficher E.
Code de l'attribut | Valeur |
---|---|
attr_code_A | 3 |
Formule : ::attr_code_A:: < 0 ? "A" : ( ::attr_code_A:: <= 2 ? "B" : ( ::attr_code_A:: <= 10 ? "C" : (::attr_code_A:: <= 18 ? "D" : "E" ) ) )
Résultat : C
Calcul automatique
Un attribut calculé est mis à jour automatiquement lors :
- D'une modification d’une des valeurs utilisées dans la formule,
- D'une modification de la formule elle-même,
- D'une action en masse sur les fiches concernées.
Limitations
- Tous les attributs utilisés dans la formule doivent être enrichis pour que le calcul aboutisse.
- Un attribut calculé ne peut pas être importé dans un data model, ni mis à jour via l’API. La création et l’édition des formules se fait exclusivement via l’interface front.
- Il est impossible de rendre un attribut calculé obligatoire ou de l'enrichir directement depuis une fiche produit.
- Il est impossible de supprimer un attribut utilisé dans une ou plusieurs formules d'attribut calculé. Il faut d’abord retirer manuellement cet attribut de toutes les formules concernées.
Appliquer les paramètres
Une fois tous les paramètres configurés, utilisez le bouton “Ajouter” pour enregistrer toutes les modifications.

Bonnes pratiques
- Documentez les formules dans le champ d’aide pour faciliter leur maintenance, en la rendant visible via le texte d’aide.

- Résultat sur la fiche produit :

Updated about 17 hours ago