Transformation des données (connecteurs)
Contenus de cette page
À propos de la transformation des données dans Discover
Vous pouvez transformer vos données entrantes avant qu’elles ne soient importées dans XM Discover. Cette option est utile si vous devez nettoyer vos données ou modifier leur format.
Pour accéder aux transformations de données :
Attention : les transformations s’appliquent uniquement à toutes les nouvelles données importées à l’avenir. Les données existantes ne seront pas affectées. Pour mettre à jour les données existantes, récupérez les données pour la tâche.
Recherche dynamique
Cette option est uniquement disponible pour les champs de données qui font référence à un tableau de recherche à partir de la source de données connectée. Vous pouvez spécifier une expression de recherche dynamique afin que les données correctes soient importées dans XM Discover.
Exemple : l’expression DYNAMICLOOKUP(“QID15”, “10”) recherche le champ QID15 dans la source de données et envoie la dixième entrée. Ce champ correspond à une question de l’enquête sur une échelle de 1 à 10, 1 étant très négatif et 10 étant très positif. Cette expression correspond donc à « Très positif ».
Remplacer une valeur à partir du tableau de recherche
Vous pouvez ajouter des recherches à n’importe quel champ source pour avoir un meilleur contrôle sur les valeurs exactes envoyées à votre projet XM Discover. Un tableau de recherche vous permet de définir des valeurs sources à remplacer lors de l’enregistrement dans XM Discover.
Exemple : vous pouvez utiliser cette option pour modifier le format des réponses à l’enquête. Par exemple, lorsque vous téléchargez une évaluation de service, vous pouvez basculer entre un format numérique (de 1 à 5) et un format texte (de Très Négatif à Très Positif) et inversement.
Remplacer une valeur avec RegEx
Vous pouvez remplacer les valeurs de données entrantes à l’aide d’expressions régulières (regex), ce qui vous permet de nettoyer les données avant de les charger dans votre projet XM Discover.
Attention : les fonctions de codage personnalisées sont fournies telles quelles et leur mise en œuvre nécessite des connaissances en programmation. Le support Discover n’offre pas d’assistance ni de consultation sur le codage personnalisé. Vous pouvez plutôt tenter de vous adresser à notre communauté d’utilisateurs dédiés. Si vous souhaitez en savoir plus sur nos services de codage personnalisés, veuillez contacter votre commercial Discover.
Transformation personnalisée
Vous pouvez transformer les données entrantes à l’aide de vos propres expressions personnalisées. Les transformations personnalisées permettent de nombreux types de manipulation des données, notamment la modification des formats des dates, la fusion des champs, la suppression des zéros en début de valeur, etc.
Astuce : consultez la section Exemples de transformations personnalisées pour obtenir des exemples supplémentaires.
Générer automatiquement des identifiants naturels
Lorsque vous importez des données dans XM Discover, les documents peuvent ne pas contenir d’identifiant unique à utiliser comme identifiant naturel. Ce champ est pourtant important, car il vous aide à identifier les documents en double. Vos données importées doivent avoir un identifiant unique à utiliser comme identifiant naturel. Cette section explique comment définir un identifiant naturel lors du mappage des données à l’aide de transformations personnalisées.
Désormais, votre document aura un ID généré aléatoirement lors de son importation.
Définir une date spécifique pour un document
Lorsque vous importez des données dans XM Discover, les documents peuvent contenir plusieurs champs de date, ou aucune date du tout. Vos données importées doivent avoir un champ de date à utiliser comme date du document. Cette section explique comment définir une date de document lors du mappage de données à l’aide de transformations personnalisées.
Astuce : n’oubliez pas de cliquer sur Appliquer pour enregistrer votre mappage de données.
Exemples de transformations personnalisées
Cette section présente quelques exemples de la manière dont vous pouvez manipuler vos données à l’aide de transformations personnalisées.
Attribuer une valeur source personnalisée
Objectif : attribuer une valeur de texte personnalisée (« Enquêtes d’avril ») à l’attribut « Source ».
Méthode : appliquez la transformation suivante au champ « Source » (mettez simplement la valeur du texte entre guillemets) :
Exemple : « Enquêtes d’avril »
Remplacer « Nom,Prénom » par « Prénom Nom »
Objectif : modifier le format du nom de « nom,prénom » en « prénom nom » et mettre la première lettre de chaque mot en majuscules.
Méthode : appliquez la transformation suivante au champ de nom :
PROPERCASE(REPLACEBYREGEXP(NAME, « (. ) *),(. *)”, “$2 $1”))
Exemple : « harris,george » devient « George Harris »
Convertir une date UTC en CST
Objectif : convertir un champ de date d’un fuseau horaire UTC en CST.
Méthode : appliquez la transformation suivante au champ END_DATE :
CONVERT_TO_TIMEZONE(END_DATE, “Etc/UTC”, “America/Chicago”)
Exemple : “2021-03-11 15:15:00” (heure de Londres) devient “2021-03-11T09:15:00Z” (heure de Chicago).
Astuce : si le champ date est spécifié en heure Unix, vous devez d’abord le convertir au format ISO 8601.
Convertir hh:mm:ss en Minutes
Objectif : convertir une durée au format hh:mm:ss en nombre de minutes.
Méthode : appliquez la transformation suivante :
GETMINUTESBETWEEN(TEXTTODATE(“1970-01-01”, “YYYY-MM-DD”), CONCAT(“1970-01-01T”, MY_TIME))
Exemple : 12:12:30 devient 732,5.
Convertir une heure Unix en secondes au format ISO 8601
Objectif : convertir un horodatage Unix en secondes au format de date ISO 8601.
Astuce : si votre date se présente sous la forme d’un nombre en millisecondes (comme 1588253075000), vous pouvez l’utiliser comme champ de date sans aucune transformation. Il vous suffit de le mapper comme attribut de date, et cela fonctionnera. Cependant, si vous devez modifier le fuseau horaire, vous devez d’abord le convertir au format ISO 8601.
Méthode : la transformation suivante effectue deux opérations : elle transforme les secondes en millisecondes, puis les millisecondes en date ISO 8601 :
NUMBERTODATE(TEXTTONUMBER(CONCAT(MY_DATE, “000”)))
Exemple : 1588253075 devient 2020-04-30T13:24:35.000Z.
Dériver la valeur en fonction de la présence ou non d’un élément dans un tableau
Objectif : vérifier le nom de l’État et affecter une valeur « DMV Area » (Région DMV) s’il correspond à l’un des États répertoriés. Sinon, définir comme « Other States » (Autres États).
Méthode : ajoutez un champ de texte personnalisé appelé RÉGION et appliquez la transformation suivante :
IF(LOWER(STATE) in [“md”, “dc”, “va”], “DMV Area”, “Other States”)
Astuce : notez qu’en utilisant la fonction LOWER, nous avons rendu cette condition insensible à la casse, donc « dc » et « DC » seront considérés comme vrais dans ce cas.
Exemple : STATE=”MD” devient AREA=”DMV Area”
Extraire le nom d’un article d’un titre de page
Objectif : extraire le nom de l’article après le dernier diviseur “|” dans le titre d’une page.
Méthode : appliquez la transformation suivante au champ de titre de la page :
TRIMRIGHT(MID(PAGE_TITLE,FINDLAST(PAGE_TITLE,”|”)+1,1000))
Exemple : “infos|monde|nom de l’article” devient “nom de l’article”
Joindre le prénom et le nom dans un seul champ
Objectif : combiner les champs FIRST_NAME (PRÉNOM) et LAST_NAME (NOM DE FAMILLE) en un nouveau champ FULL_NAME (NOM COMPLET) et mettre une majuscule à la première lettre de chaque mot.
Méthode : ajoutez un champ de texte personnalisé appelé FULL_NAME et appliquez la transformation suivante :
PROPERCASE(CONCAT(FIRST_NAME, ” “, LAST_NAME))
Exemple : FIRST_NAME=”paul” LAST_NAME=”jones” devient FULL_NAME=”Paul Jones”
Joindre deux verbatims et charger uniquement le verbatim combiné
Objectif : joindre deux champs verbatim VERBATIM1 et VERBATIM2 en un nouveau champ VERBATIM3 et charger uniquement le verbatim combiné dans XM Discover.
Méthode : suivez ces étapes :
Exemple : VERBATIM1=”La chambre était confortable.” et VERBATIM2= “Le service en chambre était agréable.” deviennent VERBATIM3=”La chambre était confortable. Le service en chambre était agréable.”
Rollup à plusieurs variables
Objectif : créer un rollup à plusieurs variables pour les réponses à une seule question qui sont réparties sur plusieurs attributs. Supposons que l’ensemble de données contient plusieurs attributs « oui ou non » pour indiquer différents niveaux d’adhésion qu’un client peut avoir :
- QID2_1 pour Silver
- QID2_2 pour Gold
- QID2_3 pour Platinum
Vous pouvez cumuler toutes les réponses « oui » en un seul nouvel attribut pour indiquer le niveau d’adhésion du client.
Méthode : Appliquez la transformation suivante :
TRIMRIGHT(CONCAT(IF(QID2_1=”Yes”, “Silver”, “”), IF(QID2_2=”Yes”, “Gold”, “”), IF(QID2_3=”Yes”, “Platinum”, “”)))
Exemple : QID2_1=”No”, QID2_2=”Yes” et QID2_3=”No” deviennent LOYALTY_LEVEL=”Gold”
Supprimer le premier caractère
Objectif : supprimer le premier caractère d’une chaîne.
Méthode : appliquez la transformation suivante :
REPLACEBYINDEX(MY_NUMBER, 1, 1, “”)
Exemple : “x00085524821587582371” devient “00085524821587582371”
Supprimer les zéros initiaux
Objectif : supprimer les zéros au début d’un nombre.
Méthode : pour une valeur textuelle, appliquez la transformation suivante :
CONCAT(TEXTTONUMBER(MY_NUMBER), “”)
Pour une valeur numérique, appliquez la transformation suivante :
TEXTTONUMBER(MY_NUMBER)
Exemple : “000123456” devient “123456”
C'est génial! Merci pour votre avis!
Merci pour votre avis!