質問

SharePoint 2007を使用してSharePoint Designer 2007を使用してカスタムビューを開発しています。

数字をパーセンテージとして表示する表の列。最小値は0、最大100です。

SPデザイナーでは、推奨コードを使用しています。

<xsl:value-of select="format-number(@Probabilit_x00e0_, &quot;###0,%;-###0,%&quot;, &quot;lcid1040&quot;)" />
.

しかし、私が0または100のような数字を挿入しない限り、私は常に "NAN"を見ます。デフォルト値は設定されていません。

なぜ?

役に立ちましたか?

解決

You could capture the formatted number first and then check for a NaN value.

<xsl:variable name="myValue" select="format-number(@Probabilit_x00e0_, &quot;###0,%;-###0,%&quot;, &quot;lcid1040&quot;)" />
<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.

他のヒント

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%;-#')
ライセンス: CC-BY-SA帰属
所属していません sharepoint.stackexchange
scroll top