Scénario : Extraire des informations d'un enregistrement MDM au format XML - 6.1

Composants Talend Open Studio Guide de référence

EnrichVersion
6.1
EnrichProdName
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for Data Quality
Talend Open Studio for ESB
Talend Open Studio for MDM
task
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

Le scénario suivant décrit un Job simple extrayant des informations d'un enregistrement MDM au format XML et affiche ces informations dans la console.

Prérequis du scénario

Un conteneur de données Product et un modèle de données Product sont créés et déployés dans le serveur MDM. Les entités de données Product et Store sont définies et des enregistrements de données existent déjà au sein de ces entités.

Les entités Product et Store sont liées par une clé étrangère, le nom du magasin (Name et Store).

Cet exemple est conçu pour obtenir des informations concernant un nouveau produit. Lorsque vous créez un enregistrement Product, assurez-vous que les informations Store sont bien ajoutées pour le nouvel enregistrement.

Les entités et leurs attributs sont affichés ci-dessous.

Pour plus d'informations concernant les principes de fonctionnement de MDM, consultez la partie MDM dans le Guide utilisateur du Studio Talend.

Construire le Job

  1. Déposez les composants suivants de la Palette dans l'espace de modélisation graphique : un tMDMReceive et un tLogRow.

  2. Reliez le tMDMReceive au tLogRow à l'aide d'un lien Row > Main.

  3. Renommez les composants afin de mieux identifier leur rôle.

Configurer les composants

Définir une variable de contexte

  1. Dans l'onglet Contexts, cliquez sur le bouton [+] pour ajouter une variable. Nommez-la exchangeMessage.

  2. Saisissez la valeur de la variable dans le champ Value.

    Notez que l'enregistrement XML doit suivre un schéma particulier. Pour plus d'informations concernant le schéma, consultez la description des processus et schémas utilisés dans les processus MDM d'appels de Jobs, dans le Guide utilisateur du Studio Talend.

    Ci-dessous se trouve un échantillon de l'enregistrement XML de l'Update Report :

    <exchange xmlns:mdm="java:com.amalto.core.plugin.base.xslt.MdmExtension">
    <report>
    <Update>
    <UserName>administrator</UserName>
    <Source>genericUI</Source>
    <TimeInMillis>1381486872930</TimeInMillis>
    <OperationType>ACTION</OperationType>
    <RevisionID>null</RevisionID>
    <DataCluster>Product</DataCluster>
    <DataModel>Product</DataModel>
    <Concept>Product</Concept>
    <Key>2</Key>
    </Update>
    </report>
    <item><Product><Id>001</Id><Name>Computer</Name><Description>Laptop series</Description><Availability>true</Availability><Price>400</Price><OnlineStore>TalendShop@@http://www.cafepress.com/Talend.2</OnlineStore><Stores><Store>[Dell]</Store><Store>[Lenovo]</Store></Stores></Product></item>
    </exchange>

    Dans cet exemple, les espaces blancs de l'enregistrement XML sont retirés :

    <exchange><report/><item><Product><Id>001</Id><Name>Computer</Name><Description>Laptop series</Description><Availability>true</Availability><Price>400</Price><OnlineStore>TalendShop@@http://www.cafepress.com/Talend.2</OnlineStore><Stores><Store>[Dell]</Store><Store>[Lenovo]</Store></Stores></Product></item></exchange>
  3. Appuyez sur les touches Ctrl+S afin de sauvegarder vos modifications.

Configurer le tMDMReceive et le tLogRow

  1. Double-cliquez sur le tMDMReceive pour ouvrir sa vue Basic settings.

  2. Cliquez sur le bouton [...] à côté du champ Edit schema pour définir la structure des données. Dans cet exemple, trois colonnes sont ajoutées : Product_ID, Product_Name et Store_Name.

  3. Dans le champ XML Record, saisissez la variable de contexte context.exchangeMessage.

  4. Dans la liste XPath Prefix, sélectionnez "/exchange/item".

  5. Dans le champ Loop XPath query, saisissez le nom de la balise racine de l'arbre XML. Dans cet exemple, saisissez "/Product/Stores/Store".

  6. La colonne Column de la table Mapping est alimentée par les colonnes définies dans le schéma. Dans la colonne XPath query, saisissez votre requête XPath. Dans cet exemple, l'ID du produit, le nom du produit et le nom du magasin où se trouve le produit sont les informations extraites.

  7. Double-cliquez sur le composant tLogRow pour ouvrir sa vue Basic settings.

  8. Sélectionnez l'option Table (print values in cells of a table) dans la zone Mode.

Sauvegarder et exécuter le Job

  1. Appuyez sur les touches Ctrl+S afin de sauvegarder votre Job.

  2. Exécutez le Job en appuyant sur la touche F6 ou en cliquant sur le bouton Run dans l'onglet Run.

    Les informations des produits sont extraites de l'enregistrement XML et affichées dans la console.