Nous souhaitons exporter la quantité produit vendue en ajoutant le champ 'nombre de vente' sur une période définie.
Sélectionner la grille "Catalogue : Export Produits" puis pour ajouter le champ à la liste des champs disponibles pour l'export produits, cliquez sur le bouton de l'interface "Ajout de champ", puis saisissez les informations suivantes :
Quel est l'ID du champ ? : nb_ventes
SC crée le champ, il faut maintenant renseigner dans la grille :
ID : nb_ventes
Nom : _NB ventes
Ici nous voulons exporter le nombre de ventes pour la période 2021-01-01 au 2021-04-30
Dans le panneau des Propriétés avancées à droite :
- sélectionner le menu Processus d'export et renseignez :
if (in_array($switchObject, array('nb_ventes'))) {
$sql = 'SELECT COALESCE(SUM(od.product_quantity),0) AS nb_ventes
FROM `' . _DB_PREFIX_ . 'order_detail` od
RIGHT JOIN `' . _DB_PREFIX_ . 'orders` o ON (od.id_order = o.id_order)
WHERE od.product_id = ' . (int)$p->id . '
AND o.valid = 1
AND o.date_add >= "2021-01-01 00:00:00" AND o.date_add <= "2021-04-30 23:59:59"';
$field = (int)Db::getInstance()->getValue($sql);
}
Ce code est à adapter à vos besoins.
Fermez la fenêtre d'édition des champs personnalisés et utilisez le champ dans votre mapping d'export.