Visualizza "Nan" invece valore percentuale
-
10-12-2019 - |
Domanda
Sto usando SharePoint 2007 e sviluppando una visualizzazione personalizzata utilizzando SharePoint Designer 2007.
Ho una colonna di una tabella che dovrebbe visualizzare i numeri come percentuale.Il valore minimo è 0, massimo 100.
In SP Designer Sto usando il codice suggerito:
<xsl:value-of select="format-number(@Probabilit_x00e0_, "###0,%;-###0,%", "lcid1040")" />
.
Ma, a meno che non inserisco un numero come 0 o 100, vedo sempre "Nan".Nessun valore predefinito è impostato.
Perché?
Soluzione
You could capture the formatted number first and then check for a NaN value.
<xsl:variable name="myValue" select="format-number(@Probabilit_x00e0_, "###0,%;-###0,%", "lcid1040")" />
<xsl:choose>
<xsl:when test="string(number($myValue))='NaN'">0</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$myValue" />
</xsl:otherwise>
</xsl:choose>
This will switch out NaN for a zero.
Altri suggerimenti
When using "format-number", it expects a period separator for decimals. With the percentage field (LCID 1036 for french), the decimals separator is a comma.
I had to translate the comma to get it working correctly. I haven't checked if it is the same thing for 1033 or 1040 in this case.
format-number(string(translate(@PercentField,',','.')), '#,##0%;-#')