Dans cet article, nous illustrerons comment gérer un attribut "Matière" au niveau du "Produit Couleur" à partir d'un attribut "Matière" déjà présent au niveau "Produit".
Nous présenterons trois méthodes différentes pour atteindre cet objectif.
Contexte
Admettons que
le modèle de données comporte deux entités : "Produit" et "Produit Couleur" ;
l'attribut "Matière" est initialement renseigné au niveau "Produit" par un utilisateur.
vous vouliez pouvoir visualiser cette matière au niveau "Produit Couleur".
Solutions
Préparation
Il est nécessaire de créer un attribut "Matière" au niveau "Produit Couleur" qui accueillera les valeurs de l'attribut "Matière" du "Produit".
Cet attribut doit être non éditable, car il s'agit d'une copie. En effet, la donnée maîtresse reste gérée au niveau "Produit".
Méthode 1 : Export / Import
Étapes
Exportation des données :
Exporter les produits avec une jointure sur les produits couleur.
Le fichier exporté contiendra les données des produits et des produits couleurs associés.
Modification du fichier :
Si besoin (non obligatoire), supprimer toutes les colonnes sauf celles contenant le code des documents de type Produit Couleur et les données de la matière
Réimportation des données :
Préparer un import avec le fichier exporté.
Mapper la colonne "produit-matière" sur l'attribut "produit-couleur-matière" dans le fichier exporté.
Lancer l'import
Votre donnée des "Produits" a bien été importée sur les "Produit Couleurs".
Avantages
Le fichier importé apparaît dans le tableau des activités, permettant un suivi et une vérification simplifiée.
Inconvénients
La copie des données se fait avec un délai prédéterminé par l'orchestration du script (ex. : toutes les heures).
Automatisation ?
Cette méthode peut être automatisée via :
API
Plateformes d'automatisation comme Make.com ou Zapier
Méthode 2 : Utilisation de l'API pour copier les Données
Étapes
Récupération des "Produit" modifiés :
Utiliser l'API
GET /documents
avec un filtre surle type de document "Produit"
la date de mise à jour pour récupérer les produits modifiés depuis un certain laps de temps
Récupération des "Produit Couleur" associés :
Utiliser les ressources
links
contenus dans le payload de réponse afin de récupérer les codes des "Produit Couleur"
Mise à jour des "Produit Couleur" :
Utiliser l'API
PUT /documents/xxx
pour mettre à jour l'attribut "produit-couleur-matiere" des "Produit Couleur" concernés.
Avantages
La méthode permet une gestion fine des mises à jour en fonction des modifications récentes.
Inconvénients
La copie des données se fait avec un délai prédéterminé par l'orchestration du script (ex. : toutes les heures).
Tous les documents "Produit" mis à jour sont parcourus, même si l'attribut "matière" n'a pas été modifié.
Méthode 3 : Utilisation des Notifications Webhook
Étapes
Configuration des notifications
Configurer un webhook pour être informé en temps réel des modifications des documents.
Traitement des notifications
Utiliser l'APIGET /documents/xxx
pour récupérer le "Produit" lorsqu'une notification est reçue indiquant que :le type de document est "Produit"
l'attribut "Matière" a été modifié
Mise à jour des produits couleur
Utiliser les ressources
links
contenus dans le payload de réponse afin de récupérer les codes des "Produit Couleur" puis mettre à jour l'attribut "produit-couleur-matiere" de chaque "Produit couleur".
Vous trouverez en pièce jointe le blueprint make.com permettant de jouer ce scénario.
Avantages
Les données sont mises à jour en quasi-temps réel.
Seuls les événements pertinents sont traités.
Inconvénients
Nécessite un serveur HTTP pour accueillir les notifications.
Des outils comme Make.com ou Zapier peuvent faciliter cette mise en place.
Conclusion
Chacune de ces méthodes présente des avantages et des inconvénients spécifiques.
Le choix de la méthode dépendra des besoins spécifiques de votre organisation en termes de délai de mise à jour et de complexité de mise en œuvre.
Pour une synchronisation quasi instantanée et une gestion précise des événements, la méthode des notifications webhook est recommandée.
Pour des besoins moins urgents, les méthodes d'export/import ou d'utilisation de l'API peuvent être suffisantes.