XSL - Gracias...

 
Vista:

Gracias...

Publicado por OsCaRo (4 intervenciones) el 18/10/2008 01:10:30
Gracias mukuykac...

Una ultima pregunta. existe algo para convertir un xml en un archivo de excel ?

Gracias.....
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Conversión de XML a archivo Excel (XLSX)

Publicado por Alejandro (227 intervenciones) el 06/07/2023 21:59:25
Sí, puedes utilizar XSLT para transformar un archivo XML en un archivo de Excel utilizando el formato XLSX. Aquí tienes un ejemplo básico de cómo puedes hacerlo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
  xmlns:html="http://www.w3.org/TR/REC-html40">
 
  <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
 
  <!-- Plantilla principal -->
  <xsl:template match="/">
    <xsl:processing-instruction name="mso-application">
      <xsl:text>progid="Excel.Sheet"</xsl:text>
    </xsl:processing-instruction>
    <ss:Workbook xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
      <ss:Worksheet>
        <ss:Table>
          <!-- Generar las filas y columnas -->
          <xsl:apply-templates select="tuNodoRaiz/tuNodoHijo"/>
        </ss:Table>
      </ss:Worksheet>
    </ss:Workbook>
  </xsl:template>
 
  <!-- Plantilla para cada nodo hijo -->
  <xsl:template match="tuNodoRaiz/tuNodoHijo">
    <ss:Row>
      <!-- Generar las celdas -->
      <ss:Cell>
        <ss:Data ss:Type="String">
          <xsl:value-of select="campo1"/>
        </ss:Data>
      </ss:Cell>
      <ss:Cell>
        <ss:Data ss:Type="String">
          <xsl:value-of select="campo2"/>
        </ss:Data>
      </ss:Cell>
      <!-- Añadir más celdas según sea necesario -->
    </ss:Row>
  </xsl:template>
 
</xsl:stylesheet>

En este ejemplo, asumimos que tienes una estructura XML con un nodo raíz llamado `<tuNodoRaiz>` que contiene múltiples elementos `<tuNodoHijo>`. Cada `<tuNodoHijo>` tiene campos como `<campo1>`, `<campo2>`, etc.

El código XSLT generará un archivo XML con el formato requerido para Excel (XLSX). Puedes guardar el resultado en un archivo con extensión `.xlsx`, y al abrirlo con una aplicación compatible con Excel, como Microsoft Excel, el archivo se abrirá correctamente como una hoja de cálculo.

Es importante destacar que el archivo generado será un archivo XML con la estructura y formato requeridos por Excel, pero aún tendrás que guardarlo con la extensión `.xlsx` y asegurarte de que el contenido se visualice correctamente al abrirlo en una aplicación de hoja de cálculo.

Recuerda ajustar el código según la estructura específica de tu archivo XML y los nombres de los nodos y campos que deseas incluir en el archivo de Excel resultante.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar