Ver Mensaje Individual
  #2 (permalink)  
Antiguo 03/06/2004, 02:55
Avatar de Helbira
Helbira
 
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 23 años, 4 meses
Puntos: 5
La idea de restar 1 sí funciona (aunque personalmente no creo que sea la mejor).
Los fallos que tenías en tu código eran dos:

1. Te faltaban comillas simples al select de tu variable FechaCarga
2. Tenías mal la expresión XPath en el template BuscaCargaAnterior

Tu XSL queda de la siguiente manera:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="cargas">
<xsl:apply-templates select="carga"/>
</xsl:template>

<xsl:template match="carga">
<xsl:variable name="FechaCarga" select="'21/04/2004'"/>
<xsl:if test="@fecha[.=$FechaCarga]">
<xsl:call-template name="BuscaCargaAnterior">
<xsl:with-param name="NumOrd" select="number(@numero)-1"/>
</xsl:call-template>
</xsl:if>
</xsl:template>

<xsl:template name="BuscaCargaAnterior">
<xsl:param name="NumOrd"/>
<xsl:for-each select="//carga/@numero[.=string($NumOrd)]">
<xsl:value-of select="//carga/@fecha"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>

Ciaoo