1

SQL Server Reporting Services を使用して、データベースの値がゼロの場合、次の形式の式を --- に変換すると、適切に小数点以下 2 桁になります。

,0.00;(#,0.00);'---'

ただし、値が 0.001 で、レポートが 2 桁まで表示する必要がある場合 (つまり、0.00 を表示する必要がある場合)、結果の形式 --- レポートに表示されます。

SSRS でこれらの丸めの問題を回避する方法はありますか?もしそうなら、新しい形式/関数/などはどうなりますか? 結果は 0.001 に対して 0.00 になるはずです。

4

1 に答える 1

3

それは興味深いものです。私はあなたの結果を複製しました:

ここに画像の説明を入力

最後の列では、TextBox で次の式を使用しました。

=Switch(Fields!val.Value = 0.0, "---"
    , Fields!val.Value > 0.0, Format(Fields!val.Value, "#,0.00")
    , Fields!val.Value < 0.0, Format(Fields!val.Value, "(#,0.00);(#,0.00)"))

これにより、必要な結果が得られます。

良さそうですよね?たぶん... Webページに表示したり、PDFにエクスポートしたりする場合は、これで問題ないと思いますが、Excelにエクスポートする場合は、を使用しているFormatため、レポートに文字列が明示的に返されるため、最初の 3 つの列のように数値としてエクスポートされるのではなく、Excel エクスポート。

これがあなたの環境で問題になるかどうかを判断できるのはあなただけです。

小さな数字をゼロとして扱う SSRS を回避する方法はないと思うので、Textbox 自体でそれを処理することが唯一の選択肢かもしれません。

于 2013-09-12T10:20:57.143 に答える