(fr) Tutoriel

Pré-requis

Dans ce tutoriel, vous trouverez tout ce dont vous avez besoin pour réaliser votre premier import avec Datahub :

  • Les composantes de base du format JSON
  • Les options du fichier de configuration.
  • Le fonctionnement des bases de données et les termes associés : import, mise à jour, etc.

Cas d'usage 1

Il s'agit du fichier de configuration de l'univers "myuniverse_crm".

Josh Beets est directeur CRM dans son entreprise. Par conséquent, il est responsable de la création et de la maintenance du fichier de configuration pour les imports.

Contexte : les contacts

Josh identifie deux sous-séquences pour ce contexte, PRCL et MGTSB :

  1. La sous-séquence PRCL permet à la fois de créer et de mettre à jour des contacts existants ("créer des contacts" : "1", "mettre à jour des contacts" : "1"). De plus, la liste 0 est réinitialisée pour cet import ("init lists" : [0]) – nous l’appelons la synchronisation complète, par opposition à une synchronisation incrémentale. De cette façon, si tous les contacts importés sont abonnés à cette liste, cela vous permettra toujours de cibler l'import le plus récent.
  2. Le but de la sous-séquence MGTSB est de placer des contacts dans la liste 1. La liste est effacée avant chaque import ("listes d'init" : [1]), et la création de nouveaux contacts est bloquée ("créer des contacts" : "0 ").

Étant donné que tous les contacts doivent venir de France, Josh souhaite appliquer le code de pays français à tous les numéros de téléphone qui ne le contiennent pas ("préfixe de téléphone portable par défaut" : "33").

Contexte : les produits

Ici, les sous-séquences sont également utilisées à des fins différentes.

  1. La sous-séquence ERP est utilisée pour mettre à jour les produits existants dans la base de données, qui sera utilisée chaque fois qu'une description de produit ou un prix doit être modifié. De nouveaux produits ne peuvent pas être ajoutés avec cet importat ("créer des produits" : "0", "mettre à jour des produits" : "1").
  2. En revanche, le MGTEN et le MGTFR sont destinés à ajouter de nouveaux produits. Lorsqu'une option n'est pas présente, Splio prend sa valeur par défaut ("create products" : "1", "update products" : "1").

Derniers ajustements

Il n'y a pas de limitations pour les tables, les orders et orders items.

Avant de soumettre le fichier, Josh doit s'assurer qu'il a fourni les adresses e-mail pour recevoir le rapport d'importat ("report recipients": ["[email protected]"]) et les alertes ("alert recipients": ["myemail @mycompany.com "]).

Il définit également l'option d'écrasement sur zéro ("écraser avec des valeurs vides" : "0"). Ceci est important lorsque vous importez des contacts ou d'autres données qui existent déjà dans la base de données. Avec cette option définie sur 0, Josh est sûr que la valeur de la base sera conservée si le champ du fichier est vide.

Après vérification, Josh soumet le fichier à Splio.

Le fichier. json

Ci-dessous vous pouvez trouver l'intégralité du fichier JSON.


You can see the whole JSON file submitted to Splio below.

 "myuniverse_crm":{
     "contacts":{
       "PRCL":{
         "report recipients": ["[email protected]"],
         "alert recipients": ["[email protected]"], 
         "overwrite with empty values": "0", 
         "default cellphone prefix": "33",
         "create contacts": "1", 
         "update contacts": "1",
         "init lists": [0]
       },
       "MGTSB":{
         "report recipients": ["[email protected]"],
         "alert recipients": ["[email protected]"], 
         "overwrite with empty values": "0", 
         "default cellphone prefix": "33",
         "create contacts": "0", 
         "update contacts": "1",
         "init lists": [1]
       }
     },
     "orders":{
       "ERP":{
         "report recipients": ["[email protected]"],
         "alert recipients": ["[email protected]"], 
         "overwrite with empty values": "0"
       }
     },
     "ordersitems":{
       "ERP":{
         "report recipients": ["[email protected]"],
         "alert recipients": ["[email protected]"], 
         "overwrite with empty values": "0"
       }
     },
     "products":{
       "ERP":{
         "report recipients": ["[email protected]"],
         "alert recipients": ["[email protected]"], 
         "overwrite with empty values": "0",
         "create products": "0", 
         "update products": "1"
       },
       "MGTEN":{
         "report recipients": ["[email protected]"],
         "alert recipients": ["[email protected]"], 
         "overwrite with empty values": "0"
       },
       "MGTFR":{
         "report recipients": ["[email protected]"],
         "alert recipients": ["[email protected]"], 
         "overwrite with empty values": "0"
       }
     }
   }
 }

Cas d'usage 2

Ici, le fichier de configuration a une approche différente par rapport au cas d’usage 1. Il donne la priorité au fichier importé ("écraser avec des valeurs vides" : "1"), ce qui signifie que si on met à jour un enregistrement, toutes les données seront écrasées, même si le champ du fichier importé est vide.

Bill Hook est directeur marketing adjoint et il est prêt à configurer le fichier. Il va utiliser les mêmes adresses e-mail pour les rapports et alertes dans tous les contextes et sous-séquences.

Contexte : les contacts

Ici, Bill va définir deux sous-séquences :

  1. La sous-séquence "complète" est destinée à réimporter tous les contacts depuis une source externe. Pour cette raison, il autorise la création des comptes ("create contacts" : "1") et leur mise à jour ("update contacts" : "1"). La politique permettant de remplacer les valeurs par des valeurs NULL ("overwrite with empty values" : "1") sera utile ici : si certaines informations ont été supprimées dans le fichier source, elles seront également supprimées de la base de contacts dans Splio. Bill s'assure également de réinitialiser la liste 0 ("init lists" : [0]), qui sera ensuite remplie avec les données importées.
  2. La sous-séquence incrémentale est définie de la même manière que la séquence "complète" avec une seule différence significative : la liste 0 n'est pas effacée. Cela signifie que cet import pourra ajouter et supprimer des membres de la liste en utilisant des valeurs dans le champ "subscription", ou la laisser inchangée.

Les deux sous-séquences supposent également que les numéros de téléphone importés proviennent de France ("default cellphone prefix" : "33"), demandant à Splio d'ajouter le préfixe français pour tous les numéros qui ne l'ont pas.

Contexte : orders, orderlines et produits

Les tables restantes n'utilisent aucune restriction spécifique. Bill laisse les options permettant de créer et de mettre à jour des enregistrements de produits tels qu'ils étaient dans la version précédente du fichier ("create products" : "1", "update products" : "1"). Bien que ce soient les valeurs par défaut et qu'elles puissent être supprimées, il les laisse pour rappeler que ce comportement lors de l'import est important.

Fichier. json

Ci-dessous vous pouvez trouver l'intégralité du fichier JSON.


{
   "mybrand2":{
     "contacts":{
       "full":{
         "report recipients": ["[email protected] , [email protected]"],
         "alert recipients": ["[email protected] , [email protected]"], 
         "overwrite with empty values": "1", 
         "default cellphone prefix": "33",
         "create contacts": "1", 
         "update contacts": "1",
         "init lists": [0]
       },
       "incremental":{
         "report recipients": ["[email protected] , [email protected]"],
         "alert recipients": ["[email protected] , [email protected]"], 
         "overwrite with empty values": "1", 
         "default cellphone prefix": "33",
         "create contacts": "1", 
         "update contacts": "1"
       }
     },
     "orders":{
       "default":{
         "report recipients": ["[email protected] , [email protected]"],
         "alert recipients": ["[email protected] , [email protected]"], 
         "overwrite with empty values": "1"
       }
     },
     "ordersitems":{
       "default":{
         "report recipients": ["[email protected] , [email protected]"],
         "alert recipients": ["[email protected] , [email protected]"], 
         "overwrite with empty values": "1"
       }
     },
     "products":{
       "default":{
         "report recipients": ["[email protected] , [email protected]"],
         "alert recipients": ["[email protected] , [email protected]"], 
         "overwrite with empty values": "1",
         "create products": "1", 
         "update products": "1"
       }
     }
   } 
 }