Write to XML

Le stage Write to XML écrit la sortie d'un job ou d'un sous-flux dans un fichier XML.

Onglet de propriétés du fichier

Nom du champ

Description

Fichier de données

Indique le chemin du fichier XML de sortie. Cliquez sur le bouton de sélection (...) pour trouver le fichier souhaité.

Remarque : Si le Spectrum™ Technology Platform est en cours d'exécution sur les systèmes Unix ou Linux, rappelez-vous que les noms de fichiers et les chemins sur ces plates-formes sont sensibles à la casse.

Fichier réel

Affiche la structure indiquée dans l'onglet Champs. Si vous cliquez sur un élément et que le fichier indiqué dans le champ Data file contient l'élément, un aperçu des données sera affiché. Seules les données d'éléments simples peuvent être affichées dans l'aperçu.

Exporter un schéma

Cliquez sur ce bouton pour enregistrer un fichier XSD qui représente le schéma affiché dans la vue Fichier Actuel. Le fichier de schéma est immédiatement enregistré dans l'emplacement que vous indiquez.

Onglet Champs

L'onglet Champs définit les champs à inclure dans le fichier XML de sortie. Lorsque vous ajoutez des champs, ils sont affichés dans une structure d'arborescence. L'arborescence affiche le nom de l'élément ou de l'attribut qui sera écrit dans le fichier XML. Le nom du champ de dataflow, suivi par le type de données, figure entre parenthèses à la suite du nom d'élément/attribut. Par exemple :

Cela indique que quatre éléments et un attribut doivent être écrits dans le fichier XML. L'attribut est indiqué par le signe « @ » en rouge.

L'élément État contient les données du champ StateProvince de type chaîne. De même, l'élément ZIP contient les données du champ PostalCode de type chaîne. Le fichier XML peut être semblable à ce qui suit :

<XmlRoot>
    <Customer Status="0">
        <AddressLine1>7713 Mullen Dr</AddressLine1>
        <City>Austin</City>
        <State>TX</State>
        <ZIP>78757-1346</ZIP>
    </Customer>
    <Customer Status="0">
        <AddressLine1>1825B Kramer Ln</AddressLine1>
        <City>Austin</City>
        <State>TX</State>
        <ZIP>78758-4260</ZIP>
    </Customer>
</XmlRoot>
Remarque : Le nom de l'élément racine (dans cet exemple, <XmlRoot>) est indiqué sous l'onglet Propriétés du fichier.

La table suivante décrit les options sous l'onglet Champs.

Nom de l'option

Description

Ajouter

Ajoute un champ dans la sortie.

Modifier

Modifie la manière dont le champ est écrit dans XML. Vous pouvez indiquer les options suivantes :

Type de sortie
Cette option est disponible si vous modifiez un champ simple. Cela indique si le champ du dataflow doit être écrit dans un élément ou attribut XML.
Élément
Sélectionnez cette option pour écrire les données du champ dans un élément XML. Indiquez le nom de l'élément à utiliser dans le champ Element name.
Attribut
Écrit les données du champ sur un attribut de l'élément parent. Indiquez le nom de l'attribut à utiliser dans le champ Attribute name.
Nom de l'élément/Nom de l'attribut
Indique le nom de l'élément ou de l'attribut à écrire dans le fichier XML. Le nom par défaut est le nom de champ du dataflow.
Modifier tous les enfants en
Cette option est disponible si vous modifiez un élément complexe. Elle spécifie le type de données XML que l'élément complexe doit contenir. L'un des éléments suivants :
Aucune modification
Les types enfant restent tels qu'ils sont actuellement définis, à savoir élément ou attribut. Vous pouvez indiquer le type pour chaque champ individuellement en sélectionnant le champ et en cliquant sur Modifier.
Éléments
Tous les champs simples sous l'élément sont écrits en tant qu'éléments XML.
Attributs
Tous les champs simples sous l'élément sont écrits en tant qu'attributs XML.
Espace de nommage
Si vous souhaitez spécifier un espace de nommage XML à utiliser pour l'élément ou l'attribut, sélectionnez-le ici. Vous pouvez créer des espaces de nommage dans l'onglet Champs du stage Write to XML.
Inclure les champs vides
Cochez cette case pour inclure dans le fichier de sortie des éléments XML ayant une valeur nulle ou aucune donnée. Si vous ne cochez pas cette case, les éléments vides ne seront pas inclus dans la sortie.

Par exemple, si vous définissez un élément nommé <City>, mais qu'un enregistrement ne dispose d'aucune donnée dans le champ City, la sortie XML contiendra les éléments suivants si vous cochez Inclure les champs vides :

<City xs:nil="true"></City>

Si vous ne cochez pas cette case, l'élément <City> ne sera pas écrit dans le fichier de sortie.

Remarque : Le champ Dataflow affiche le champ dont les données seront écrites dans l'élément ou l'attribut. Ceci apparaît pour que, lorsque vous modifiez le nom d'élément ou d'attribut, vous puissiez toujours voir quelles données de champs sont contenues dans l'élément ou l'attribut.

Supprimer

Enlève le champ sélectionné de la sortie. Si vous enlevez un champ de liste, tous les champs enfant sont également enlevés. Si vous enlevez un champ enfant, seul l'enfant sélectionné est enlevé du champ de liste.

Tout supprimer

Enlève tous les champs de la sortie.

Déplacer vers le haut/Déplacer vers le bas

Réorganise le champ sélectionné.

Vous ne pouvez pas déplacer des éléments simples dans des éléments complexes. Si vous voulez modifier les éléments dans un élément complexe, vous devez modifier le stage Aggregator de votre dataflow de façon à inclure les champs du dataflow dont vous souhaitez disposer dans l'élément complexe. Pour plus d'informations, reportez-vous à la section Création de fichier XML complexe à partir de données texte.

Régénérer

Remplace les champs actuellement définis par les champs arrivant dans Write to XML depuis le canal en amont.

L'onglet Exécution

Nom de l'option Description
Générer plusieurs fichiers Sélectionnez cette option pour écrire des enregistrements dans des fichiers différents, plutôt que d'écrire tous les enregistrements en un fichier. Le fichier dans lequel chaque enregistrement est écrit est indiqué dans l'enregistrement lui-même. Chaque enregistrement doit contenir un champ indiquant soit un nom de fichier, soit le chemin d'accès complet au fichier dans lequel vous souhaitez écrire l'enregistrement. Par exemple, pour envoyer les prix des actions de différentes sociétés (de groupes divers) à tous les clients séparément, cette fonctionnalité écrit les prix des actions des différentes sociétés dans des fichiers distincts qui peuvent être envoyés à chacun des clients, si vous le désirez. Si vous activez l'option Générer plusieurs fichiers, vous devez spécifier un fichier de sortie sur le serveur Spectrum™ Technology Platform ou sur un serveur FTP. Pour écrire les données dans un fichier sur un serveur FTP, vous devez définir une connexion au serveur de fichiers via Management Console.
Remarque : Les enregistrements de la colonne que vous sélectionnez dans Champ de chemin d'accès au fichier doivent se présenter dans l'ordre trié. Utilisez cette fonctionnalité lorsque l'enregistrement contient un nom de fichier ou le fichier de fichier complet.
Champ de chemin d'accès au fichier Sélectionne le champ contenant le chemin (un nom de fichier ou le chemin de fichier complet) du fichier dans lequel vous souhaitez écrire l'enregistrement. Seuls les éléments de type simple mappés directement sur une racine seront répertoriés dans le champ File path. Ce champ n'est activé que si vous sélectionnez l'option Générer plusieurs fichiers.
Générer un schéma à l'exécution Sélectionnez cette option pour générer un XSD lors de l'exécution et insérez une référence noNamespaceSchemaLocation dans le schéma du fichier XML. La valeur d'attribut noNamespaceSchemaLocation est le nom du fichier XSD du fichier XML. Si vous exportez le schéma lors de l'édition d'un dataflow, il n'existe aucune référence au fichier XSD dans le fichier de sortie XML et l'utilisateur doit ajouter manuellement la référence au fichier XSD.
Chemin d'accès au schéma Indique le chemin d'accès pour l'enregistrement du fichier XSD contenant le schéma du fichier XML de sortie. Cliquez sur le bouton de sélection (...) pour trouver le fichier souhaité. Le fichier de sortie est enregistré à l'endroit que vous indiquez lorsque vous exécutez le dataflow.