Nous souhaitons exporter l'interval de jours depuis la dernière commande passée pour un produit'.
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 ? : my_field
SC crée le champ, il faut maintenant renseigner dans la grille :
ID : my_field
Nom : my_field
Dans le panneau des Propriétés avancées à droite :
- sélectionner le menu Processus d'export et ajoutez:
if (in_array($switchObject, ['my_field']))
{
$sql = '(SELECT DATEDIFF(NOW(),o.date_add)
FROM '._DB_PREFIX_.'orders o
WHERE o.id_order IN (SELECT DISTINCT(od.id_order)
FROM '._DB_PREFIX_."order_detail od
WHERE od.product_id = '".(int) $p->id."')
ORDER BY o.date_add DESC
LIMIT 1)";
$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.