Martin,
Works without problem, but when there is a PD node without the attribute
"marca" does not appear in the output, that changes must be made in the XSL to
display too.
Also if there are two nodes picking in PD, I get two nodes in the output
"infocaja", as could choose only the first "infocaja" of node picking.
.....
<femi>01/10/2010</femi>
<infocaja>1/1</infocaja>
<infocaja>2/2</infocaja>
.....
Thanks,
Luis Fdo.
-----Mensaje original-----
De: Martin Honnen [mailto:Martin(_dot_)Honnen(_at_)gmx(_dot_)de]
Enviado el: Sábado, 06 de Noviembre de 2010 11:38 a.m.
Para: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Asunto: Re: [xsl] [XSL 1.0] Copy node into of other
Jimenez, Luis wrote:
The XSL 1.0 not working. Sending the XML file, XSL file and the desired output
*** XML File:
<?xml version="1.0" encoding="iso-8859-1"?>
<spoolpd>
<pd marca="REAL">
<frmocs>
<blqcon>
<creg>15</creg>
<czon>1509</czon>
<tcon>02643714355</tcon>
</blqcon>
</frmocs>
<frmbd>
<pbd1>
<blqcab>
<nsec>1</nsec>
<chq />
<ccon>0303393</ccon>
<ncon>TORRES CABRERA, MARIA </ncon>
</blqcab>
<blqimp>
<txt>16</txt>
<txt />
<txt>415.06</txt>
<txt />
<txt />
</blqimp>
<detalle />
</pbd1>
</frmbd>
<picking>
<pagina>
<cabecera>
<numzona>09</numzona>
<tamcaja>Caja Grande</tamcaja>
<infocaja>1/1</infocaja>
<infopagina>1/1</infopagina>
</cabecera>
<linea>
<columna01 parameter="NONE">
<anaquel>A01A1</anaquel>
<cantidad>1</cantidad>
<descrip>CDR L`BEL 2009</descrip>
</columna01>
<columna02 parameter="NONE">
<anaquel />
<cantidad />
<descrip />
</columna02>
</linea>
The </pagina> is missing here and below:
</picking>
</pd>
<picking>
<pagina>
<cabecera>
<numzona>10</numzona>
<tamcaja>Caja Grande</tamcaja>
<infocaja>1/2</infocaja>
<infopagina>1/1</infopagina>
</cabecera>
<linea>
<columna01 parameter="NONE">
<anaquel>A01A1</anaquel>
<cantidad>1</cantidad>
<descrip>CDR L`BEL 2009</descrip>
</columna01>
<columna02 parameter="NONE">
<anaquel />
<cantidad />
<descrip />
</columna02>
</linea>
Assuming you have well-formed XML with a pagina element then you can
solve that as follows:
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="spoolpd">
<xsl:copy>
<xsl:apply-templates select="@* | pd[(_at_)marca = 'REAL']"/>
</xsl:copy>
</xsl:template>
<xsl:template match="pd">
<xsl:copy>
<xsl:apply-templates select="@* | frmbd"/>
</xsl:copy>
</xsl:template>
<xsl:template match="blqcab">
<xsl:copy>
<xsl:apply-templates
select="@* |
node() |
parent::pbd1/parent::frmbd/following-sibling::picking[1]/pagina/cabecera/infocaja"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
--
Martin Honnen
http://msmvps.com/blogs/martin_honnen/
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--