web-dev-qa-db-ja.com

SSRS-データがヌルかどうかの確認

レポートには次のような表現があります。

=FormatNumber(MAX(Fields!Reading.Value, "CellReading_Reading"),3)

データセットが空の場合、「Fields!Reading.Value」は空になり、その最大値の検索は無効になります。列全体が空かどうかを確認するにはどうすればよいですか?

次のことを運よく試しました。

=iif(IsNothing(Fields!.Reading.Value),"",FormatNumber(MAX(Fields!Reading.Value, "CellReading_Reading"),3))

しかし、それでもレポートに#Errorが表示されます。 link もチェックアウトしましたが、そこから手がかりを得ることができませんでした。レポートレベルで処理したいです。

29
NLV

このようにしてみて

= IIF( MAX( iif( IsNothing(Fields!.Reading.Value ), -1, Fields!.Reading.Value ) ) = -1, "",  FormatNumber(  MAX( iif( IsNothing(Fields!.Reading.Value ), -1, Fields!.Reading.Value ), "CellReading_Reading"),3)) )
48
IordanTanev

または、SQLクエリでそのフィールドをIsNullまたはCoalesce(SQL Server)でラップします。

どちらの方法でも機能しますが、レポートに必要な処理が少なくなるように、クエリにそのロジックを含めるのが好きです。

4
Mozy