Subject: RE: go from double to integer OR show just 1 or 0 decimals
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 27 Jul 2005 23:17:45 +0100
|
The neat way to do this is
<xsl:variable name="formats">
<format unitCode="months" picture="#0"/>
<format unitCode="kg" picture="0.###"/>
</xsl:variable>
<xsl:template match="gr:InputQuantity">
<xsl:variable name="pic" select="$formats/format[unitCode =
current()/../@unitCode]/@picture"/>
<xsl:value-of select="format-number(., $pic)"/>
</xsl:template>
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: Christian Rasmussen [mailto:byggemandbob@xxxxxxxxx]
> Sent: 27 July 2005 22:34
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: go from double to integer OR show just 1 or 0 decimals
>
> Hi Experts,
>
> I have a som xml like this:
>
>
> <gr:ThroughputStructure unitCode="months">
> <gr:InputQuantity>6.00</gr:InputQuantity>
> <gr:OutputQuantity>28.00</gr:OutputQuantity>
> </gr:ThroughputStructure>
>
> The unitCode attribute of ThroughputStructure is enummerations and can
> hold one of following values:
> - days
> - months
> - kg
> - numbers
>
> The inputQuantity and OutputQuantity is double types, mainly because
> of situations where the unitCode is numbers or kg, but if the unitCode
> is days or months, there is really no need for two decimals.
>
> What I would like to do is:
>
> make a template that matches InputQuantity and OutputQuantity, and if
> the ../ThroughputStructure/@unitCode is months or days, then the
> format for the inputQuantity OutputQuantity need just to be integer or
> double without decimals (then there should be som round up...new
> problem, how is that done?).
>
> Is that possible? Is it possible to round up the decimals and just
> show one, or strip them totally, or convert to integer?
>
> Help is very much appreciated :-)
>
> on beforehand, thank you!
>
> /Christian Rasmussen
|