en utilisant xslt comment puis-je tester si une date était dans le dernier (disons) 15 jours?xslt: il ya un temps test
entrée:
- date au format jj/mm/aa
- X nombre de jours
sortie:
- si la date est survenue dans les X jours maintenant
par exemple récent ('02/07/10' , 30) retournerait vrai ssi 02/07/10 était de 30 jours dans le passé
quelques étapes j'ai obtenu:
principale func
<xsl:function name="custom:monthtodays">
<xsl:param name="date"/>
<xsl:param name="daysago"/>
<xsl:variable name="daycountnow" select="year-from-dateTime(current-dateTime())*365+day-from-dateTime(current-dateTime())+custom:monthtodays(month-from-dateTime(current-dateTime())" />
<xsl:variable name="datedaycount" select="numeric(substring($date,1,2))+numeric(substring($date,7,2))*365+custom:monthtodays(numeric(substring($date,4,2)))" />
<xsl:value-of select="$daycountnow - $datedaycount - $daysago > 0"/>
</xsl:function>
aide func
<xsl:function name="custom:monthtodays">
<xsl:param name="month"/>
<xsl:choose>
<xsl:when test="$month =1"> <xsl:value-of select="0"/> </xsl:when>
<xsl:when test="$month =2"> <xsl:value-of select="31"/> </xsl:when>
<xsl:when test="$month =3"> <xsl:value-of select="59"/> </xsl:when>
<xsl:when test="$month =4"> <xsl:value-of select="90"/> </xsl:when>
<xsl:when test="$month =5"> <xsl:value-of select="120"/> </xsl:when>
<xsl:when test="$month =6"> <xsl:value-of select="151"/> </xsl:when>
<xsl:when test="$month =7"> <xsl:value-of select="181"/> </xsl:when>
<xsl:when test="$month =8"> <xsl:value-of select="212"/> </xsl:when>
<xsl:when test="$month =9"> <xsl:value-of select="243"/> </xsl:when>
<xsl:when test="$month =10"> <xsl:value-of select="273"/> </xsl:when>
<xsl:when test="$month =11"> <xsl:value-of select="304"/> </xsl:when>
<xsl:when test="$month =12"> <xsl:value-of select="334"/> </xsl:when>
</xsl:choose>
</xsl:function>
mais cela ne prend pas en compte les années bissextiles et autres ... il y a sûrement un Betterway?
xls est l'extension pour Excel Spreadsheets. Je pense que vous voulez dire XSLT, et vous devriez éditer votre publication et vos tags pour corriger cela. –
En outre, vous devez publier des exemples d'entrées et de sorties attendues, ainsi que le code XSL que vous avez essayé. SO n'est pas un endroit où les gens font votre travail (à la maison) pour vous. –
une tentative naïve a été ajoutée ... bonne place sur xls vs xsl. – GreyCloud