Comment générer un modèle de données ou un dictionnaire de données

Cet article fournit deux manières de générer un modèle de données ou un dictionnaire de données de votre base de données Adobe Campaign.

Description description

Environnement

Adobe Campaign Classic v7

Problème/Symptômes

Ce document présente deux manières de générer un modèle de données ou un dictionnaire de données de votre base de données Adobe Campaign.

Résolution resolution

Adobe Campaign contient des centaines de tables. Ce document présente deux manières différentes de générer la documentation du schéma :

  1. en générant un document Open Office (lisible dans Microsoft Word), ou
  2. En générant une page web d’HTML.

Méthode 1 : création d’un document OpenOffice

Dans le répertoire datakit\nms\fra\package\optional d’Adobe Campaign, il existe un package appelé dbbBuilder.xml. Ce fichier de package contient une entité JavaScript qui génère un document Open Office détaillant le schéma de base de données de l’instance Adobe Campaign.

A. Créer un fichier JavaScript

À l’aide de la vue Explorateur de la console Campaign, écrivez un utilitaire JavaScript simple dans les codes JavaScript de configuration d’administration, comme dans l’exemple ci-dessous.

Modifiez la valeur strOutputFile pour ajouter le répertoire de destination dans lequel vous souhaitez créer le document Open Office. Par exemple : /tmp/database-description.odt.

Exemple de fichier : cus:build-dbd.js

/* * build-dbd.js/ var
 strXslt = "nl:dbdToOdt.xsl"
 var strTemplate = installDirectory( "datakit/nl/dbd-template.odt" )
 var strOutputFile = "database-description.odt"
 var sql = xtk.sqlSchema.create() sql.Generate()
 var strDbXml = db = sql.toXML().toXMLString()
 var strOdt = applyXsl(strXslt, strDbXml)
 strOdt = strOdt.replace(/\?xml .*\?\r?\n/, '\r\n' )
 var mbContent = new MemoryBuffer mbContent.fromString(strOdt, "utf-8" )
 var zip = new ZipFile(strTemplate)
 zip.open() zip.setEntry( "content.xml" , mbContent) zip.save(strOutputFile)

B. Importer dbdBuilder.xml

Le package dbdBuilder.xml peut être importé en exécutant la commande suivante dans le répertoire où le package est stocké. Remplacez instance_name par le nom réel de l’instance Adobe Campaign.

nlserver package - import :dbdBuilder.xml -instance:instance_name

Exemple d'import de package sous Debian

neolane@debian: /nl6/datakit/nms/fra/package/optional $ cd
 /nl6/datakit/nms/fra/package/optionalneolane@debian:/nl6/datakit/nms/fra/package/optional$
 nlserverpackage -import:dbdBuilder.xml
 -instance:10:46:09
 Application serverfor Adobe Campaign Version 6.1.1(build 8537) of 04/16/201410:46:09
 Starting 1 connection(s) on pool'default vmcloud'(PostgreSQL, server='localhost',
 login='user:password')10:46:09 Importing package'/tmp/dbdBuilder.xml'...10:46:11
 Enumerating thefile entities...10:46:11
 Writing entitiesin the database...10:46:11
 Saving entities oftype 'xtk:xslt'...10:46:12
 Saving entities oftype 'xtk:javascript'...10:46:12
 Installation of packages successful.

Exemple d’importation de package pour Windows

C: cd "\Program Files (x86)\Adobe\Adobe Campaign v6\bin"
 C:\Program Files (x86)\Adobe\Adobe Campaign v6\binnlserver.exe
 package - import : ..\datakit\nms\fra\package\optional\dbdBuilder.xml
 -instance: 13:52:57 Application server for Adobe Campaign Version 6.1.1 (build 8622) of 01 /19/2015 13:52:57
 Starting 1 connection(s) on pool 'default ' (PostgreSQL, server= 'localhost' , login= 'user:password' ) 13:52:57
 Importing package 'C:\Program Files (x86)\Adobe\Adobe Campaign v6\bin\..\datakit\nms\fra\package\optional\dbdBuilder.xml'...
 13:52:59 Enumerating the file entities...
 13:52:59 Writing entities in the database...
 13:52:59 Saving entities of type 'xtk:javascript' ...
 13:52:59 Installation of packages successful.

C. Générer la description de la base de données

Pour générer la description de la base de données, vous pouvez exécuter l’entité JavaScript cus:build-dbd.js avec le module nlserver à l’aide d’une ligne de commande, comme illustré ci-dessous :

neolane@debian: /tmp $ nlserver javascript -instance: cus:build-dbd.js 05:06:12
 Application server for Adobe Campaign Version 6.1.1 (build 8537) of 04 /16/2014
 05:06:12 Starting 1 connection(s) on pool
 'default vmcloud' (PostgreSQL, server= 'localhost' , login= 'user:vmcloud' )
 05:06:12 Executing JavaScript from entity of identifier 'xs:build-dbd.js' ...
 05:06:12 Generating the database structure...
 05:06:12 Element '0' unknown (see definition of schema 'Recipient delivery logs (nms:broadLogRcp)').
 (iRc=16384)
 05:06:12 Element '0' unknown (see definition of schema 'Visitor delivery logs (nms:broadLogVisitor)').
 (iRc=16384) 05:06:12 Element '0' unknown (see definition of schema 'Recipient delivery logs (nms:broadLogRcp)').
 (iRc=16384) 05:06:12 Element '0' unknown (see definition of schema 'Visitor delivery logs (nms:broadLogVisitor)').
 (iRc=16384) 05:06:13 Generating the ODT XML... 05:06:14 Saving the zip file ...
 05:06:14 File saved as 'database-description.odt

Un document OpenOffice nommé 'database-description.odt' est généré dans le répertoire que vous avez spécifié dans build-dbd.js. Elle contient la description des tables Adobe Campaign. Ce document peut être modifié avec Microsoft Word ou OpenOffice et peut être converti en PDF.

database-description

Exemple de fichier de modèle de données : ce document présente l’index des tables de base de données, les champs et clés SQL, ainsi que la liste des liens de schéma.

Méthode 2 : création d’une page web à l’aide de xsltproc

Cette autre approche est basée sur l’outil de ligne de commande Linux xsltproc. Dans ce scénario, vous exportez le schéma en créant un document XML, puis transformez le XML en HTML à l’aide d’un fichier XSLT. Le fichier de sortie peut être affiché dans un navigateur.

Pour cette méthode, vous devez :

  • Environnement Linux ou Macintosh pour exécuter xsltproc, qui est un utilitaire de ligne de commande standard Macintosh Mac OS X.
  • Les fichiers joints, database.xsl et styles.xml (voir attachments.zip).

Remarque : Il existe un équivalent Windows, msxsl.exe, qui peut fonctionner correctement sur cette plate-forme, mais il n’a pas été testé.

Désormais, msxsl.exe fait partie des Services XML principaux MS (MSXML).

Le téléchargement MS Core XML Services (MSXML) est disponible dans le catalogue de mise à jour de Microsoft.

TÉLÉCHARGER
Obtenir le fichier
database.xsl et styles.xml

  1. Téléchargez les deux fichiers joints database.xsl et styles.xml dans un répertoire de travail sous Linux ou Mac. En haut du XSL, vous pouvez ajuster deux variables :
    xsl:variable name="unicode"false/xsl:variable
    xsl:variable name="engine"postgresql/xsl:variable
    Les valeurs prises en charge pour le moteur sont : postgresql, mssql et oracle. Définissez la variable engine sur la valeur qui correspond à la base de données de votre instance marketing.
  2. Dans la console Campaign, accédez aux définitions de packages de gestion de packages de configuration d’administration et créez un fichier package.xml contenant les schémas de données (xtk:schema).
  3. Exportez le package, puis copiez le fichier dans votre répertoire de travail Linux ou Mac.
  4. Traitez le fichier package.xml en exécutant la commande suivante dans le répertoire de travail en utilisant XSLT: xsltproc database.xsl package.xml database.html.

Le document généré n’est pas parfait :

  • Certaines conditions de jointure sur des liens ne peuvent pas être documentées.
  • Lorsqu'une énumération est référencée dans un schéma mais définie dans un autre schéma qui ne se trouve pas dans le package, l'énumération n'est pas documentée.
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f