
format-number Decimales con separador de miles
Publicado por Ricardo (1 intervención) el 22/12/2014 19:34:58
Programadores, este es mi primer tema en este foro, espero que sea bienvenida la consulta y un aporte a la vez
Resulta que estoy haciendo un XSL donde el XML tiene la siguiente forma:
Sin embargo si le aplico un format-number de la forma
Los valores me los redondea QtyItem = 1001 y Prcitem 2000.
Por otro lado he llegado a la fórmula para que me escriba los valores en decimal llegando con este template a lo siguiente:
Devolviendo 1000.53 y 2000.32 correctamente, Sin embargo ¿Como puedo hacer para que me separe los miles con punto?
Necesito el output: 1.000, 53 y 2.000,32
Lo otro es ¿Como podré hacer que si el numero es entero no le ponga los decimales ",00"? Es decir que si ingreso "1990" quede tal cual y no 1990.00.
Ojalá me den una mano ya que en XSL poco me manejo.
Saludos,
Resulta que estoy haciendo un XSL donde el XML tiene la siguiente forma:
1
2
3
4
5
<Detalle>
<NroLinDet>1</NroLinDet>
<QtyItem>1000.53</QtyItem>
<PrcItem>2000.32</PrcItem>
</Detalle>
1
<xsl:decimal-format name="chile" decimal-separator=',' grouping-separator='.' />
Los valores me los redondea QtyItem = 1001 y Prcitem 2000.
Por otro lado he llegado a la fórmula para que me escriba los valores en decimal llegando con este template a lo siguiente:
1
2
3
4
<xsl:template name="decimal">
<xsl:param name="num"/>
<xsl:value-of select="format-number(floor($num*100) div 100, '#0.00')"/>
</xsl:template>
Devolviendo 1000.53 y 2000.32 correctamente, Sin embargo ¿Como puedo hacer para que me separe los miles con punto?
Necesito el output: 1.000, 53 y 2.000,32
Lo otro es ¿Como podré hacer que si el numero es entero no le ponga los decimales ",00"? Es decir que si ingreso "1990" quede tal cual y no 1990.00.
Ojalá me den una mano ya que en XSL poco me manejo.
Saludos,
Valora esta pregunta


0