Show Menu
SUJETS×

Utiliser les packages de données

A propos des packages de données

Adobe Campaign vous permet d'exporter ou d'importer la configuration et les données de la plate-forme grâce à un système de packages. Les packages peuvent contenir différents types de configurations et d'éléments, filtrés ou non.
Les packages de données permettent l'échange des entités de la base Adobe Campaign au travers de fichiers au format XML. Chaque entité contenue dans un package est représentée avec toutes ses données.
Le principe des packages de données consiste à exporter un paramétrage de données puis l'intégrer dans un autre système Adobe Campaign. Pour plus d'informations sur la gestion d'un ensemble cohérent de packages de données, reportez-vous à cette technote .

Types de packages

Il existe trois types de packages exportables : les packages utilisateur, les packages plate-forme et les packages admin.
  • Package utilisateur : il permet de choisir la liste des entités à exporter. Ce type de package gère les dépendances et vérifie les erreurs.
  • Package plate-forme : il regroupe toutes les ressources techniques ajoutées (non livrées d'usine) : schémas, code JavaScript...
  • Package admin : il regroupe tous les modèles et objets métiers ajoutés (non livrés d'usine) : modèles, librairies...
Les types plate-forme et admin contiennent une liste prédéfinie d'entités à exporter. A chaque entité exportable sont associées des conditions de filtrage permettant d'écarter les ressources livrées d'usine du package créé.

Structure des données

La description d'un package de données est un document XML structuré respectant la grammaire du schéma de données xrk:navtree .
Exemple de package de données :
<package>
  <entities schema="nms:recipient">
    <recipient email="john.smith@adobe.com" lastName="Smith" firstName="John">      
      <folder _operation="none" name="nmsRootFolder"/>      
      <company _operation="none" name="Adobe"/>
    </recipient>
  </entities>
  <entities schema="sfa:company">
    <company name="Adobe">
      location city="London" zipCode="W11 2BQ"/>
    </company>
  </entities>
</package>

Le document XML doit commencer et se terminer par l'élément <package> . Les éléments <entities> suivants répartissent les données par type de document.
Un élément <entities> contient les données du package au format du schéma de données renseigné dans l'attribut schema .
Les données d'un package ne doivent pas contenir de clés internes non compatibles entre les bases, comme les clés auto-générées (option autopk ).
Dans notre exemple, les jointures sur les liens "folder" et "company" ont été remplacées par les clés dites de "haut niveau" sur les tables destinations :
<recipient>
  <folder _operation="none" name="nmsRootFolder"/>
  <company _operation="none" name="Adobe"/>
</recipient>

L'attribut operation avec la valeur "none" définit un lien de réconciliation.
Un package de données peut être construit à la main à partir de n'importe quel éditeur texte. Il suffit que la structure du document XML soit conforme au schéma de données "xtk:navtree". La console Adobe Campaign est pourvue d'un module d'export et d'import de package de données.

Export de packages

A propos de l'export de packages

Les packages peuvent être exportés de trois manières différentes :
  • L' assistant d&#39;export de package permet d'exporter un ensemble d'objets dans un package unique. Voir à ce propos la section Exporter un ensemble d'objets dans un package
  • Un objet unique peut être directement exporté dans un package en cliquant dessus avec le bouton droit de la souris et en sélectionnant Actions > Exporter dans un package .
  • Les définitions de packages vous permettent de créer une structure de package dans laquelle vous ajoutez des objets qui seront exportés ultérieurement dans un package. Voir à ce sujet la section Gérer les définitions de packages .
Une fois un package exporté, vous pourrez l'importer ainsi que toutes les entités ajoutées dans une autre instance Campaign.

Exporter un ensemble d'objets dans un package

L'assistant d'export de package est accessible à partir du menu principal Outils > Avancé > Export de package... de la console cliente Adobe Campaign.
Pour les trois types de package, l'assistant propose les étapes suivantes :
  1. Indiquez la liste des entités à exporter, par type de document :
    Si vous exportez un dossier de type Catégorie d&#39;offres , Environnement d&#39;offres , Programme ou Plan , ne sélectionnez en aucun cas l'entité xtk:folder au risque de perdre une partie des données. Sélectionnez l'entité correspondant au dossier : nms:offerCategory pour les catégories d'offres, nms:offerEnv pour les environnements d'offres, nms:program pour les programmes et nms:plan pour les plans.
    La gestion de la liste permet l'ajout ou la suppression de la configuration des entités à exporter. Cliquez sur Ajouter pour sélectionner une nouvelle entité.
    Le bouton Détail édite la configuration sélectionnée.
    Le mécanisme de dépendance contrôle la séquence d'exportation des entités. Voir à ce propos la section Gestion des dépendances .
  2. L'écran de configuration des entités définit la requête de filtrage sur le type de document à extraire.
    Vous devez paramétrer la clause de filtrage pour l'extraction des données.
    L'éditeur de requêtes est présenté dans cette section .
  3. Cliquez sur Suivant et sélectionnez les colonnes de tri pour ordonnancer les données lors de l'extraction :
  4. Visualisez un aperçu des données à extraire avant de démarrer l'export.
  5. La dernière étape de l'assistant d'export de package permet de démarrer l'export. Les données seront stockées dans le fichier indiqué dans le champ Fichier .

Gestion des dépendances

Le mécanisme d'export permet à Adobe Campaign de suivre les liens entre les éléments exportés.
Deux règles définissent le mécanisme :
  • les objets liés avec un lien ayant une intégrité de type own ou owncopy sont exportés dans le même package que l'objet exporté.
  • les objets liés avec un lien ayant une intégrité de type neutral ou define (lien défini) doivent être exportés indépendamment.
Les types d'intégrité liés aux éléments de schéma sont définis dans cette section .

Exporter une campagne

Voici un exemple d'export de campagne. La campagne marketing à exporter contient une tâche (libellé : "MyTask") et un workflow (libellé : "CampaignWorkflow") dans un dossier "MyWorkflow" (nœud : Administration / Exploitation / Workflows Techniques / Processus de campagne / MyWorkflow).
La tâche et le workflow sont exportés dans le même package que la campagne car les schémas correspondant sont reliés par des liens ayant une intégrité de type "own".
Contenu de package :
<?xml version='1.0'?>
<package author="Administrator (admin)" buildNumber="7974" buildVersion="6.1" img=""
label="" name="" namespace="" vendor="">
 <desc></desc>
 <version buildDate="2013-01-09 10:30:18.954Z"/>
 <entities schema="nms:operation">
  <operation duration="432000" end="2013-01-14" internalName="OP1" label="MyCampaign"
  modelName="opEmpty" start="2013-01-09">
   <controlGroup>
    <where filteringSchema=""/>
   </controlGroup>
   <seedList>
    <where filteringSchema="nms:seedMember"></where>
    <seedMember internalName="SDM1"></seedMember>
   </seedList>
   <parameter useAsset="1" useBudget="1" useControlGroup="1" useDeliveryOutline="1"
   useDocument="1" useFCPValidation="0" useSeedMember="1" useTask="1"
   useValidation="1" useWorkflow="1"></parameter>
   <fcpSeed>
    <where filteringSchema="nms:seedMember"></where>
   </fcpSeed>
   <owner _operation="none" name="admin" type="0"/>
   <program _operation="none" name="nmsOperations"/>
   <task end="2013-01-17 10:07:51.000Z" label="MyTask" name="TSK2" start="2013-01-16 10:07:51.000Z"
   status="1">
    <owner _operation="none" name="admin" type="0"/>
    <operation _operation="none" internalName="OP1"/>
    <folder _operation="none" name="nmsTask"/>
   </task>
   <workflow internalName="WKF12" label="CampaignWorkflow" modelName="newOpEmpty"
   order="8982" scenario-cs="Notification of the workflow supervisor (notifySupervisor)"
   schema="nms:recipient">
    <scenario internalName="notifySupervisor"/>
    <desc></desc>
    <folder _operation="none" name="Folder4"/>
    <operation _operation="none" internalName="OP1"/>
   </workflow>
  </operation>
 </entities>
</package>   

L'appartenance à un type de package est défini dans un schéma avec l'attribut @pkgAdmin et @pkgPlatform . Ces deux attributs reçoivent une expression XTK définissant les conditions d'appartenance au package.
<element name="offerEnv" img="nms:offerEnv.png" 
template="xtk:folder" pkgAdmin="@id != 0">

Enfin, l'attribut @pkgStatus permet de définir les règles d'export sur les éléments ou attributs. Selon la valeur de l'attribut, l'élément ou l'attribut sera présent dans le package exporté. Les trois valeurs possibles pour cet attribut sont :
  • never : n'exporte pas le champ / lien
  • always : force l'export de ce champ
  • preCreate : autorise la création de l'entité liée
La valeur preCreate est admise uniquement sur les éléments de type lien. Elle autorise à créer ou à pointer vers une entité qui n'est pas encore chargée dans le package exportée.

Gérer les définitions de packages

A propos des définitions de packages

Les définitions de packages vous permettent de créer une structure de package dans laquelle vous ajoutez les entités qui seront exportées ultérieurement dans un même package. Vous pourrez ensuite importer ce package et toutes les entités ajoutées dans une autre instance Campaign.
Rubriques connexes :

Créer une définition de package

Les définitions de packages sont accessibles à partir du menu Administration > Paramétrage > Gestion des packages > Définitions de packages .
Pour créer une définition de package, cliquez sur le bouton Nouveau , puis remplissez les informations générales de la définition de package.
Vous pouvez ensuite ajouter des entités à la définition de package et l'exporter dans un package de fichier XML.
Rubriques connexes :

Ajouter des entités à une définition de package

Dans l'onglet Contenu , cliquez sur le bouton Ajouter pour sélectionner les entités à exporter avec le package. Les bonnes pratiques de sélection d'entités sont présentées dans la section Exporter un ensemble d'objets dans un package .
Les entités peuvent être ajoutées directement à une définition de package à partir de leur emplacement dans l'instance. Pour ce faire, suivez les étapes ci-dessous :
  1. Cliquez avec le bouton droit de la souris sur l'entité désirée, puis sélectionnez Actions > Exporter dans un package .
  2. Sélectionnez Ajout dans une définition de package , puis sélectionnez la définition de package dans laquelle vous voulez ajouter l'entité.
  3. L'entité est ajoutée à la définition de package et est exportée avec le package (voir la section Exporter des packages à partir d'une définition de package ).

Paramétrer la génération des définitions de packages

La génération de packages peut être paramétrée à partir de l'onglet Contenu de définition de package. Pour ce faire, cliquez sur le lien Paramètres de génération .
  • Inclure la définition  : inclut la définition actuellement utilisée dans la définition de package.
  • Inclure un script d&#39;installation  : vous permet d'ajouter un script JavaScript à exécuter à l'importation du package. S'il est sélectionné, un onglet Script est ajouté à l'écran de définition de package.
  • Inclure les valeurs par défaut  : ajoute au package les valeurs de tous les attributs des entités.
    Cette option n’est pas sélectionnée par défaut de manière à éviter les exports de longueur importante. Cela signifie que les attributs des entités avec des valeurs par défaut ('chaîne vide', '0' et 'faux' si elles ne sont pas définies d’une autre façon dans le schéma) ne seront pas ajoutés dans le package et ne seront donc pas exportés.
    La désélection de cette option peut entraîner une fusion des versions locales et importées.
    Si l'instance où le package est importé contient des entités identiques à celles du package (par exemple, avec le même ID externe), leurs attributs ne seront pas mis à jour. Cela se produit si les attributs d'une instance précédente possèdent des valeurs par défaut, car ils ne sont pas inclus dans le package.
    Dans ce cas, la sélection de l’option Inclure les valeurs par défaut empêcherait la fusion des versions, car tous les attributs de l’instance précédente seraient exportés avec le package.

Exporter des packages à partir d'une définition de package

Pour exporter un package à partir d'une définition de package, suivez les étapes ci-dessous :
  1. Sélectionnez la définition de package à exporter, puis cliquez sur le bouton Actions et sélectionnez Exporter le package .
  2. Un fichier XML correspondant au package exporté est sélectionné par défaut. Il est nommé en fonction de l'espace de nommage et du nom de la définition de package.
  3. Une fois le nom de package et l'emplacement définis, cliquez sur le bouton Démarrer pour lancer l'exportation.

Importer des packages

A propos de l'import de packages

L'assistant d'import de package est accessible à partir du menu principal Outils > Avancé > Import de package... de la console cliente Adobe Campaign.
Vous pouvez importer le package d'un export réalisé antérieurement, par exemple à partir d'une autre instance Adobe Campaign, ou un package standard, selon les conditions de votre licence.

Installer un package depuis un fichier

Pour importer un package de données existant, sélectionnez le fichier XML et cliquez sur Ouvrir .
Le contenu du package à importer est alors affiché dans la section centrale de l'éditeur.
Cliquez sur Suivant puis sur Démarrer pour lancer l'import.

Installer un package standard

Les packages standard sont installés lors de la configuration d’Adobe Campaign. Selon vos permissions et votre modèle de déploiement, vous pouvez importer de nouveaux packages standard si vous achetez de nouvelles options ou de nouveaux modules complémentaires, ou si vous passez à une offre supérieure.
Reportez-vous à votre contrat de licence pour savoir quels packages peuvent être installés.
Pour plus d'informations sur les packages standard, consultez cette page .