Exemple : Génération automatique d'un ensemble de filtres de données

Jacques doit créer un jeu de filtres de données en fonction des pays, des villes et des Etats.

Dans Campaign, les tables client ont été mappées et les référentiels ont été définis.

Obtention du pilote JDBC

Jacques sait que la base de données client de sa société est Microsoft SQL server. Il télécharge le pilote Type 4 approprié et le place sur la machine où il a été installé. Il crée une note relative au nom et au chemin du pilote.

*
Nom de la classe du pilote JDBC : com.microsoft.sqlserver.jdbc.SQLServerDriver
*
Chemin du pilote JDBC : C:\tools\Java\MsJdbc\sqljdbc.jar
Obtention des informations

Jacques obtient le nom, l’hôte et le port de la base de données client, ainsi que les données d’identification dont il a besoin pour s’y connecter.

*
*
*
*
*

Jacques recherche les données dans la base de données client de sa société et constate que des clients existent dans chaque pays, ville et Etat pour lesquels il souhaite créer un filtre de données. Il détermine que la table Geographic contient les champs dont il a besoin pour spécifier les champs fixes et d’analyse des filtres de données.

La table suivante contient les informations que Jacques obtient sur les champs du client et leurs mappages de Campaign.

(Nom physique)

(nom dans Campaign)

country

Country

*

java.lang.String

city

City

Ensemble limité de villes

java.lang.String

state

State

Ensemble limité d’états (ou toute autre appellation de région propre à chaque pays)

java.lang.String

hh_id

HouseholdID

N/A

java.lang.Long

indiv_id

IndividualID

N/A

java.lang.Long

Jacques apprend que les noms de référentiel utilisés dans Campaign sont foyer et individu. Il remarque que la table Geographic contient deux champs de référentiel.

*
Le champ hh_id correspond au référentiel du foyer.
*
Le champ indiv_id de la table Geographic correspond au référentiel de l’individu.

Etant donné que Jacques doit créer un champ d’analyse pour chaque référentiel et un autre pour chaque champ fixe et de profil, il sait qu’il a besoin d’un total de cinq champs d’analyse.

Jacques sait également qu’il a besoin de regrouper les filtres de données dans une configuration de données. Il décide de nommer sa configuration de données Geographic.

Jacques est prêt à créer le fichier XML.

Création du fichier XML

Voici le fichier XML que Jacques a créé. Les valeurs basées sur les informations qu’il a obtenues ou qu’il a décidé d’utiliser sont indiquées en gras.

<?xml version="1.0" encoding="UTF-8"?>
<ExecuteBatch>
<name>SeedData</name>
<operations>
<!-- Créez la configuration de données qui regroupe les filtres de données associés -->
<ExecuteBatch>
<name>DataFilters</name>
<operations>
<AddDataConfiguration>
<dataConfiguration>
<id>1</id>
<name>
Geographic</name>
</dataConfiguration>
</AddDataConfiguration>
</operations>
</ExecuteBatch>
<!-- Ajoutez les champs logiques permettant de définir les filtres de données -->
<AddLogicalFields>
<logicalFields>
<LogicalField>
<id>1</id>
<name>
Country</name>
<type>java.lang.String</type>
</LogicalField>
<LogicalField>
<id>2</id>
<name>City</name>
<type>java.lang.String</type>
</LogicalField>
<LogicalField>
<id>3</id>
<name>State</name>
<type>java.lang.String</type>
</LogicalField>
<LogicalField>
<id>4</id>
<name>HouseholdID</name>
<type>java.lang.Long</type>
</LogicalField>
<LogicalField>
<id>5</id>
<name>IndividualID</name>
<type>java.lang.Long</type>
</LogicalField>
</logicalFields>
</AddLogicalFields>
<!-- Spécifiez les informations requises pour générer les filtres de données -->
<GenerateDataFilters>
<!-- Spécifiez la table à analyser pour les combinaisons uniques de valeurs
à partir desquelles les filtres de données seront définis. -->
<tableName>
Geographic</tableName>
<!-- Identifiez la configuration de données
à laquelle les filtres de données générés seront associés. -->
<configurationName>Geographic</configurationName>
<!-- Spécifiez les informations de connexion à la source de données. -->
<jdbcUrl>jdbc:sqlserver://localhost:1433;databaseName=Customers</jdbcUrl>
<jdbcUser>sa</jdbcUser>
<jdbcPassword>myPassword</jdbcPassword>
<jdbcDriverClass>
com.microsoft.sqlserver.jdbc.SQLServerDriver</jdbcDriverClass>
<jdbcDriverClassPath>
<string>C:\tools\Java\MsJdbc\sqljdbc.jar</string>
</jdbcDriverClassPath>
<!-- Spécifiez les champs fixes. -->
<fixedFields>
<FixedField>
<expression>
USA</expression>
<logicalFieldName>Country</logicalFieldName>
<physicalFieldName>country</physicalFieldName>
</FixedField>
</fixedFields>
<fixedFields>
<FixedField>
<expression>France</expression>
<logicalFieldName>Country</logicalFieldName>
<physicalFieldName>country</physicalFieldName>
</FixedField>
</fixedFields>
<fixedFields>
<FixedField>
<expression>Britain</expression>
<logicalFieldName>Country</logicalFieldName>
<physicalFieldName>country</physicalFieldName>
</FixedField>
</fixedFields>
<!-- Spécifiez les champs de profil. -->
<profileFields>
<ProfileField>
<logicalFieldName>
State</logicalFieldName>
<physicalFieldName>state</physicalFieldName>
</ProfileField>
<ProfileField>
<logicalFieldName>City</logicalFieldName>
<physicalFieldName>city</physicalFieldName>
</ProfileField>
</profileFields>
</GenerateDataFilters>
<!-- Mappez les champs physiques aux champs logiques -->
<ExecuteBatch>
<name>addTables</name>
<operations>
<AddDataTable>
<dataTable>
<id>1</id>
<name>
Geographic</name>
<fields>
<TableField>
<name>country</name>
<logicalFieldId>1</logicalFieldId>
</TableField>
<TableField>
<name>city</name>
<logicalFieldId>2</logicalFieldId>
</TableField>
<TableField>
<name>state</name>
<logicalFieldId>3</logicalFieldId>
</TableField>
<TableField>
<name>hh_id</name>
<logicalFieldId>4</logicalFieldId>
</TableField>
<TableField>
<name>indiv_id</name>
<logicalFieldId>5</logicalFieldId>
</TableField>
</fields>
</dataTable>
</AddDataTable>
</operations>
</ExecuteBatch>
<!--Ajoutez des référentiels-->
<ExecuteBatch>
<name>addAudiences</name>
<operations>
<AddAudience>
<audience>
<id>1</id>
<name>
household</name>
<fields>
<AudienceField>
<logicalFieldId>4</logicalFieldId>
<fieldOrder>0</fieldOrder>
</AudienceField>
</fields>
</audience>
</AddAudience>
<AddAudience>
<audience>
<id>2</id>
<name>individual</name>
<fields>
<AudienceField>
<logicalFieldId>5</logicalFieldId>
<fieldOrder>0</fieldOrder>
</AudienceField>
</fields>
</audience>
</AddAudience>
</operations>
</ExecuteBatch>
<!-- Associez des paires de table/référentiel à la configuration des données) -->
<ExecuteBatch>
<name>addAudienceTableAssociations</name>
<operations>
<AddAudienceTableAssociation>
<audienceTableAssociation>
<audienceId>1</audienceId>
<tableId>1</tableId>
<configId>1</configId>
</audienceTableAssociation>
</AddAudienceTableAssociation>
<AddAudienceTableAssociation>
<audienceTableAssociation>
<audienceId>2</audienceId>
<tableId>1</tableId>
<configId>1</configId>
</audienceTableAssociation>
</AddAudienceTableAssociation>
</operations>
</ExecuteBatch>
</operations>
</ExecuteBatch>
Renseignement des tables système

Jacques a nommé son fichier XML de filtre de données regionDataFilters.xml et l’a enregistré dans le répertoire tools/bin sous cette installation de Marketing Platform. Il ouvre une invite de commande et exécute l’utilitaire datafilteringScriptTool pour renseigner les tables système du filtre de données.

L’utilitaire crée un grand nombre de filtres de données. Dans chaque filtre de données, les critères se composent d’un pays (champ fixe) et d’une combinaison unique de villes et d’Etats obtenue lorsque l’utilitaire effectue une recherche dans les enregistrements qui contiennent la valeur fixe. Toutes les combinaisons uniques de ville et d’Etat sont utilisées pour chaque pays spécifié comme champ fixe.

Affectation d’utilisateurs et de groupes dans les filtres de données

Jacques se connecte à Marketing Platform avec un compte qui possède l’accès Admin dans Marketing Platform.

Il sait que des groupes ont déjà été configurés dans Marketing Platform avec des utilisateurs affectés par ville.

Il accède à la section Filtre de données et constate que les valeurs des pays, villes et Etats de ses filtres de données sont disponibles dans la recherche avancée des filtres de données. Il effectue une recherche de filtre de données à l’aide du critère de recherche Lille, ville de France. Le filtre de données Lille s’affiche dans les résultats de la recherche.

Jacques recherche ensuite le groupe d’utilisateurs Lille, qui a été configuré dans Marketing Platform pour contenir tous les marketeurs de champ responsables du marketing des clients à Lille. Le groupe Lille s’affiche dans les résultats de la recherche.

Jacques sélectionne ensuite le groupe et le filtre de données dans les résultats de la recherche, puis affecte le groupe au filtre de données en cliquant sur le bouton Affecter.

Il poursuit la recherche des filtres de données et des groupes jusqu’à l’obtention de toutes les affectations.



IBM Unica Marketing Platform
 
8
For more information, see our support and community site: Customer Central