Hi,
May be you can use a xsl:choose + xsl:when instead of xsl:if :
<xsl:variable name="daslcatagorypath" select="'/nos'"/>
<xsl:for-each select="details/dasl:query-result/dasl:resource">
<xsl:choose>
<xsl:when test="d:resourcetype=''">
<xsl:variable name="daslfolderpath"><xsl:value-of
select="@dasl:path"/></xsl:variable>
<xsl:variable name="check"
select="substring-after($daslfolderpath,$daslcatagorypath)"/>
<xsl:if test="$check!='' and $counter='1'">
<xsl:variable name="size" select="d:getcontentlength"/>
<xsl:variable name="kb-size" select="($size div 1000) -
($size mod 1000 div 1000)"/>
<xsl:value-of select="$kb-size"/><xsl:text> </xsl:text>KB
<xsl:variable name="counter" select="'0'"/>
</xsl:if>
</xsl:when>
</xsl:choose>
</xsl:for-each>
In fact it does not break the loop but do nothing when the condition is
not satisfied.
Regards,
Lionel
[EMAIL PROTECTED] a ecrit le 28/06/06 9:31:
Hi All,
I am facing a problem in xsl.I am not sure whether it is
possible in xsl or not.
I have a <xsl:for-each> loop .I have a check condition in it.I
want it to do something for the first time check condition is
satisfied.After that it should not do anything.As i have a check
condition in the loop i could not put [position=1] in the
<xsl:for-each> loop.I tried with declaring a variable
and decreamenting its value if the check condition is satisfied.But it
is not happening.
Basically i want to break the <xsl:for-each>loop if one
condition is satisfied. Below is the code.
<xsl:variable name="daslcatagorypath" select="'/nos'"/>
<xsl:for-each select="details/dasl:query-result/dasl:resource">
<xsl:if test="d:resourcetype=''">
<xsl:variable name="daslfolderpath"><xsl:value-of
select="@dasl:path"/></xsl:variable>
<xsl:variable name="check"
select="substring-after($daslfolderpath,$daslcatagorypath)"/>
<xsl:if test="$check!='' and $counter='1'">
<xsl:variable name="size" select="d:getcontentlength"/>
<xsl:variable name="kb-size" select="($size div 1000)
- ($size mod 1000 div 1000)"/>
<xsl:value-of select="$kb-size"/><xsl:text> </xsl:text>KB
<xsl:variable name="counter" select="'0'"/>
</xsl:if>
</xsl:if>
</xsl:for-each>
Can anyone suggest me the solution for it.
Thanks
Regards,
Deepak Kumar Sahoo
Tata Consultancy Services Limited
Mailto: [EMAIL PROTECTED]
Website: http://www.tcs.com
ForwardSourceID:NT0000922A
=====-----=====-----=====
Notice: The information contained in this e-mail
message and/or attachments to it may contain
confidential or privileged information. If you are
not the intended recipient, any dissemination, use,
review, distribution, printing or copying of the
information contained in this e-mail message
and/or attachments to it are strictly prohibited. If
you have received this communication in error,
please notify us by reply e-mail or telephone and
immediately and permanently delete the message
and any attachments. Thank you
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]