web-dev-qa-db-ja.com

NULLの日付を検出し、SSRSで空の文字列を表示する

DateTime?の値を含むかどうかを問わず、Reporting Servicesレポートの一部のセルをフォーマットしようとしています。

基になるデータにそのDateTime?NULLがある場合、何も表示しないようにします(空のセル)。そのデータソースに値が含まれている場合は、日付を短い日付形式で表示します(私のロケールではdd.MM.yyyy)。 。

だから私はこの式を関連するSSRSセルに入れようとしました

=FormatDateTime(Fields!DatumBSE.Value, 2)

しかし、今、すべてのNULL日付に対して01.01.0001を取得しています...

SSRS(VB)数式でこれを行う方法に頭を抱えているようには見えません... IsNothing()を使用してみましたが、実際には役に立たないようです-NULLを検出できますしかし、その場合に空の文字列を表示するようにセルに指示するにはどうすればよいですか?

ソリューション:

私はこの関数を使用してしまいました:

=IIF(IsNothing(Fields!DatumBSE.Value), "", FormatDateTime(Fields!DatumBSE.Value, 2))

今の私には問題なく動いているようです。

16
marc_s

次の式をテストしたところ、null日付が空の文字列に置き換えられました。

=IIF(Fields!DatumBSE.Value is nothing, nothing, FormatDateTime(Fields!DatumBSE.Value, 2))

私が行うもう1つの提案は、日付値の周りにCASE式を配置することにより、レポートデータセットで日付を正しい形式にフォーマットできるということです。

24
Taryn