Cómo generar un modelo de datos o un diccionario de datos
Este artículo proporciona dos formas de generar un modelo de datos o un diccionario de datos de la base de datos de Adobe Campaign.
Descripción description
Entorno
Adobe Campaign Classic v7
Problema/Síntomas
Este documento muestra dos formas de generar un modelo de datos o un diccionario de datos de la base de datos de Adobe Campaign.
Resolución resolution
Adobe Campaign contiene cientos de tablas. Este documento presenta dos formas diferentes de generar la documentación del esquema:
- Generando un documento de Open Office (legible en Microsoft Word), o
- Generando una página web de HTML.
Método 1: crear un documento de OpenOffice
En el directorio datakit\nms\fra\package\optional
de Adobe Campaign, hay un paquete llamado dbbBuilder.xml
. Este archivo del paquete contiene una entidad de JavaScript que genera un documento de Open Office en el que se detalla el esquema de la base de datos de la instancia de Adobe Campaign.
A. Crear un archivo de JavaScript
Con la vista del explorador de la consola de Campaign, escriba una utilidad JavaScript simple en los códigos JavaScript de la configuración de administración, como en el ejemplo siguiente.
Cambie el valor strOutputFile
para agregar el directorio de destino en el que desea crear el documento de Open Office. Por ejemplo: /tmp/database-description.odt
.
Ejemplo de archivo: 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. Importar dbdBuilder.xml
El paquete dbdBuilder.xml
se puede importar ejecutando el siguiente comando en el directorio donde se almacena el paquete. Sustituya instance_name por el nombre real de la instancia de Adobe Campaign.
nlserver package - import :dbdBuilder.xml -instance:instance_name
Ejemplo de importación de paquetes para 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.
Ejemplo de importación de paquetes para 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. Generar la descripción de la base de datos
Para generar la descripción de la base de datos, puede ejecutar la entidad JavaScript cus:build-dbd.js
con el módulo nlserver mediante una línea de comandos, como se muestra a continuación:
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
Se genera un documento de OpenOffice denominado 'database-description.odt' en el directorio especificado en build-dbd.js
. Contiene la descripción de las tablas de Adobe Campaign. Este documento se puede editar con Microsoft Word u OpenOffice y se puede convertir a PDF.
Ejemplo del archivo de modelo de datos: este documento muestra el índice de tablas de base de datos, los campos y claves SQL y la lista de vínculos de esquema.
Método 2: crear una página web con xsltproc
Este enfoque alternativo se basa en la herramienta de línea de comandos Linux xsltproc
. En este caso, exporte el esquema creando un documento XML y, a continuación, transforme el XML en HTML utilizando un archivo XSLT. El archivo de salida se puede ver en un explorador.
Para este método, necesita:
- Un entorno Linux o Macintosh para ejecutar
xsltproc
, que es una utilidad de línea de comandos estándar de Macintosh Mac OS X. - Los archivos adjuntos
database.xsl
ystyles.xml
(consulte attachments.zip).
Nota: hay un equivalente de Windows, msxsl.exe
, que puede funcionar bien en esa plataforma, pero no se ha probado.
Ahora, msxsl.exe forma parte de MS Core XML Services (MSXML).
La descarga de MS Core XML Services (MSXML) se encuentra en el catálogo de Microsoft Update.
DESCARGAR
Obtener archivo database.xsl
y styles.xml
- Descargue los dos archivos adjuntos
database.xsl
ystyles.xml
en un directorio de trabajo en Linux o Mac. En la parte superior del XSL hay dos variables que puede ajustar:xsl:variable name="unicode"false/xsl:variable
xsl:variable name="engine"postgresql/xsl:variable
Los valores admitidos para el motor son: postgresql, mssql y oracle. Establezca la variable del motor en el valor que corresponda a la base de datos de instancias de marketing. - Desde la consola de Campaign, vaya a Administration Configuration Package Management Package definitions y cree un archivo
package.xml
que contenga los esquemas de datos (xtk:schema
). - Exporte el paquete y copie el archivo en el directorio de trabajo de Linux o Mac.
- Procese el archivo package.xml ejecutando el siguiente comando en el directorio de trabajo utilizando
XSLT: xsltproc database.xsl package.xml database.html.
El documento generado no es perfecto:
- Algunas condiciones de unión en los vínculos no se pueden documentar.
- Cuando se hace referencia a una enumeración en un esquema pero se define en otro esquema que no está en el paquete, la enumeración no se documenta.