Las transformaciones XSLT Cómo crear documentos Excel con XML

Cómo crear documentos Word con XML

xsltMicrosoft Office Word 2003 introduce XML como formato nativo en los documentos Word. Esto posibilita crear documentos en formato XML y que sean leídos sin ningún problema.

Para que esta tarea sea transparente Microsoft ha creado un sencillo lenguaje de marcas que es necesario incorporar en los documentos XML.

Los elementos Word más utilizados son:

  • w:wordDocument: Limita el documento.
  • w:body: Encierra el contenido del documento.
  • w:p: Crea un párrafo.
  • w:pPr: Propiedades de un párrafo.
  • w:r: Ejecuciones de texto (Run).
  • w:rPr: Propiedades de Run. Si queremos un texto en negrita dentro de esta marca pondríamos w:b.
  • w:t: Fragmentos de texto.
  • w:tabs y w:tab: Control de tabuladores.
  • w:styles y w:style: Creamos los estilos. Se pueden crear diferentes tipo de estilos en Word: paragraph, character, table y list.
  • w:tbl: Definimos una tabla.
  • w:tblPr: En esta marca se incluyen las propiedades de una tabla.
  • w:tblGrid y w:gridCol: Se define el tamaño de las celdas de una tabla.
  • w:tr: Creamos una fila de una tabla.
  • w:trPr: Propiedades de una fila.
  • w:tc: Creamos una celda de una tabla.
  • w:tcPr: Propiedades de una celda.

Como es habitual vamos a crear la declaración XML y el elemento raíz de la hoja de estilo stylesheet.

La nota a destacar son los Namespace necesarios para crear un documento XML compatible con Word.

El elemento xsl:template match será “/”. No olvidemos que es el elemento raíz <Productos> del documento XML que deseamos transformar.

También se introducen otros elementos necesarios para crear un documento Word y el elemento wordDocument.

Seguidamente definimos los estilos. Como deseamos crear una tabla en w:type se ha introducido table. También se podrían introducir diferentes tipos de estilo: paragraph, character y list.

En wx:font especificamos la fuente que se va a utilizar en el documento.

La marca w:body nos indica el contenido del documento. Creamos una tabla mediante w:tbl y el tamaño de la tabla queda reflejado en la marca w:tblW.

Se crean los diferentes tamaños de las celdas.

Y los nombres de encabezado de la tabla.

Llamamos al nodo hijo del documento XML : “Productos/Producto”

Creamos una fila de la tabla y llamamos a los nodos hijo del documento XML. Los nodos hijo de la base de ejemplo son: Codigo_Producto, Descripcion_Producto, Precio_Producto, Familia_Producto.

Creamos una celda e introducimos el valor de los nodos hijo del documento XML en el nuevo documento que hemos creado. En la imagen de ejemplo el nodo hijo es “Productos/Producto/Descripcion_Producto”.

Truco: Escribir el código XML de un documento Word a veces resulta complejo. Una solución que ayuda bastante, es crear un documento en Word 2003 y después guardarlo en formato XML. Este documento será una plantilla de lo que queremos realizar. Al ser un documento XML lo abrimos con Internet Explorer o Firefox, de esta manera vemos la estructura del documento y nos será sencillo reproducirla mediante los comandos XML de 4D.

Aplicación de demostración

Puede descargar la aplicación de demostración con la que puede practicar lo expuesto en este blog de:

Versión Mac:

http://www.baarasoft.eu/Productos.sit

Versión Windows:

http://www.baarasoft.eu/Productos.exe

Publicado el 3 Abril, 2008 por Joan Grabuleda | | Imprime este artículo
Las transformaciones XSLT Cómo crear documentos Excel con XML

Deja una respuesta