2

SSRSに「<code>PostedOn」という名前のDateTimeフィールドを表示するクエリがあります。問題は、ASP.Netを使用してレポートを表示すると、PostedOnフィールドでのみレポートに#Errorが表示されることです。しかし、Designer Viewでレポートを表示すると、PostedOn日付が正しく表示されます。使用する場合

= Fields!PostedOn.Value

直接値の場合、SSRSでPostedOn列が空であることを示します。そして、私が使用する場合

= CDate(Fields!PostedOn.Value).ToShortDateString() 

特に#で跳ね返るよりもError。Designerは正しい日付を表示します e.g. 08/06/2012.

ASP.Netアプリケーションからこのレポートを表示すると。#を表示しErrorます。私はそれをチェックしました

=Iif(IsNothing(Fields!PostedOn.Value),"",
CDate(Fields!PostedOn.Value).ToShortDateString())' 

同様に、しかし今のところ運がありません。#Errorはレポートに表示されます。これについて私を助けてください。前もって感謝します。

4

2 に答える 2

3

日時の最小値で確認する必要があります

 =IIf(CDate(Fields!PostedOn.Value)=CDate("1/1/0001"),Nothing,
 CDate(Fields!PostedOn.Value).ToShortDateString()) 

この記事をチェックしてください

于 2012-08-06T12:50:45.357 に答える
0

たぶん、の値PostedOnNULLアプリからレポートを呼び出すときであり、null値を使用して式でいくつかの関数を実行しようとすると、エラーが発生することがよくあります。

SSRSがiif句を使用して式を評価する場合、条件、真の値、および偽の値のすべての部分がそれぞれ評価され、最後に何を実行するかが決定されます。

Iif式のフィールドに関数ToShortDateString()PostedOnあるため、PostedOnがNULLの場合にエラーが発生する可能性があります。

レポートに送信するアプリを調べてみてください。

于 2012-11-23T13:24:11.470 に答える