Pour créer un ticket support, commencez par une recherche

Grille Produits : Ajouter une colonne calculée "Volume en mètres cubes (m³)"


Objectif

Nous souhaitons ajouter une colonne calculée* qui indique volume du produit en mètres cubes (m³).

Nous pourrons ainsi :

  • utiliser les filtres dans les grilles pour déterminer quels sont les produits les plus volumineux / les moins volumineux.
  • exporter rapidement la grille des produits avec ce champ pour faire des études sous Excel

 

Mise en place

Pour ajouter le champ à la liste des champs disponibles pour vos grilles produit, cliquez sur le bouton de l'interface "Ajout de champ", puis saisissez les informations suivantes :

Quel est l'ID du champ ? : v_m3

SC crée le champ, il faut maintenant renseigner dans la grille :

Nom du champ : Volume en m3
Table : Another table
Type : Juste affiché
Rafraîchir les déclinaisons : Non

 

La formule pour calculer ce champ est la suivante : Largeur x Hauteur x Profondeur / 1000000

Pour un champ calculé, deux options se présentent à nous :

En SQL : le champ est utilisable sur toutes les grilles produits

En PHP : le champ est utilisable uniquement si les champs nécessaires (Largeur,Hauteur,Profondeur pour notre exemple) sont présents dans la grille

 

En SQL : Dans le panneau des Propriétés Avancées à droite, sélectionnez le menu SQL Select et renseignez :

return ' , ((p.`width`*p.`height`*p.`depth`)/1000000) as v_m3';

 

En PHP : Dans le panneau des Propriétés Avancées à droite, sélectionnez le menu PHP Get Row data et renseignez :

if($col == 'v_m3'){
    $prodrow[$col] = (float)((float)$prodrow['width']*(float)$prodrow['height']*(float)$prodrow['depth'])/1000000;
}


Veuillez noter qu'ici, la variable $prodrow contient l'ensemble des champs de la grille avec leur valeur finale.

 

Enregistrez sur la barre d'outils

Fermez la fenêtre d'édition des champs personnalisés.

Le nouveau champ est présent dans la liste des champs disponibles, et vous pouvez l'ajouter à vos grilles.

 

* calculé pour l'affichage. N'est pas stocké en base de données.

 




Articles associés