0

どうぞよろしくお願いいたします。

SSRSレポートシステムの式に問題があります。フィールドレポートで提供したデータセットから必須フィールドを追加していますが、レポートをプレビューしようとすると、次のメッセージが表示されます。

「レポートパラメータ「Policies_Total」に使用される値式はフィールドを参照しています。フィールドはレポートパラメータ式で使用できません。」

これは私の表現です:

=IIF(Sum(Fields!policy_id.Value, "DataSet1") Is Null, 0, Count(Sum(Fields!policy_id.Value, "DataSet1")))

これは、次の式を持つCrystalレポートから変換されることがサポートされていました。

If IsNull ({usp_rep_agent_cases;1.policy_id}) then
    0
Else
    Count ({usp_rep_agent_cases;1.policy_id}) 

どんな助けでも大歓迎です。

ありがとうございました

4

2 に答える 2

1

ほとんどの場合、フィールドを作成する前に「パラメータ」をSSRSに渡す必要があることを理解するのと同じくらい簡単かもしれません。このパラメーターが最初に選択された他の何かの値に依存している場合、フィールドはまだ私の知る限り入力されていないため、最初にリストすることはできません。データセットを作成してそのフィールドを直接参照するときに、式を使用してデータセットのフィールドから何かをカウントしようとしているようです。したがって、式を試す代わりに、他のいくつかのオプションを選択できます。

  1. パラメータの左側のペインで「使用可能な値」を選択し、「クエリから値を取得」を選択します。'データセット'であるクエリを使用できます。値は自明であり、ラベルはエンドユーザーに表示されるものです。

  2. オプション「Allownull」値はnull値を受け入れます

複数のデータセット、複数の選択、またはオブジェクトのクエリを使用する必要がある状況に遭遇する可能性があります。SSRSでの私の経験では、データの表示に使用されるデータセットを、イベントまたはアクションの決定に使用されるデータセットで参照しようとすると、気が狂うことがあります。SSRSはまた、式が多ければ多いほど相対性理論が遅くなります。RDL言語の組み込みの力を利用するのではなく、式だけでレポート全体を実行することは、私見の価値がありません。

于 2013-03-15T17:08:05.280 に答える
0

IsNothingSSRS式の場合、チェックに使用する必要がありますNULL。次のようになります。

=IIF(
  IsNothing(Sum(Fields!policy_id.Value, "DataSet1"))
  , 0
  , Count(Sum(Fields!policy_id.Value, "DataSet1"))
)

実際、表現全体は少し奇妙に思えます。自分の表現で具体的に何を達成しようとしていますか?null以外の値を数えようとしているだけですか?

=Sum(IIf(IsNothing(Fields!policy_id.Value), 1, 0), "DataSet1")

また、エラーは、これが許可されていないときにパラメータがフィールドを参照していることを示しているようです。これは、構文を変更しても解決できない場合があります。あなたが達成しようとしていることについてのより多くの情報がここで必要だと思います。

于 2013-03-15T15:16:32.600 に答える