SSRSプロジェクト2008 3.5のフレームワークでは、データセットからレコードが提供されていない場合でもすべての数値フィールドを返すようにしています。レコードがデータセットから返されていないがある場合は、次の式では動作します:レポーティングサービス - ヌルデータ参照アセンブリでも0値を取得する
= IIF(IsNothing(フィールズLocation.Value)、 "0"、フィールドLocation.Value!!)
しかしに次の呼び出し外部アセンブリおよびデータセットのレコードがない場合は、二重が動作しない返すメソッド:
= SSRSHelper.Helper.NEValue(!フィールズLocation.Value)
と呼ばれている次のC#の方法で:
public static double NEValue(object val)
{
if (val != null)
{
string valStr = val.ToString();
double valDbl;
if (double.TryParse(valStr,out valDbl))
return valDbl;
}
return 0.0;
}
このメソッドは、何も明示的に渡されず、有効な値が渡されたときに機能します。
ご協力いただき誠にありがとうございます。
修正:インライン式も機能しません。それにかかわらず、レポートではデータセットが空のときに0の値を入力する必要があり、多くのレポートで参照できるように外部アセンブリでこれを行うことをお勧めします。
フランク
あなたは正しいと思います。私はそれを行います。私を捨てていたのは、レコードが返されなくてもCount関数がデータを返すということです。私はあなたの助けに感謝します。 –