6

SSRS レポートには、レポートで既に使用されているいくつかのフィールドに基づいて計算された行の値が必要です。「textboxPercentageValue」という名前のテキストボックスに表示したい。やや平易な英語では、式/式は次のとおりです。

If the value of the "Week" field is "WK1", display the value of the Variance field divided by the value of the Price field; otherwise, just display the value from the Variance field.

VB スクリプト gobbledygook では、textboxPercentageValue の Value プロパティに追加した式/式は次のとおりです。

=IIF((Fields!Week.Value="WK1"), Fields!Variance.Value / Fields!Price.Value, Fields!Variance.Value)

それでも、.rdl ファイルを SQL Server Reporting Services にアップロードしようとすると、次のようになります。

"テキスト ボックス 'textboxPercentageValue' の値式は、データセット集計を指定せずにフィールド 'Week' を直接参照しています。レポートに複数のデータセットが含まれている場合、データ領域外のフィールド参照は、データセット スコープを指定する集計関数内に含まれている必要があります。(rsFieldReferenceAmbiguous) オンライン ヘルプを参照テキスト ボックス 'textboxPercentageValue' の値の式は、データセット集計を指定せずにフィールド 'Variance' を直接参照しています。レポートに複数のデータセットが含まれている場合、データ領域外のフィールド参照は、データセット スコープを指定する集計関数内に含まれている必要があります。(rsFieldReferenceAmbiguous) オンライン ヘルプを参照 テキスト ボックス 'textboxPercentageValue' の値式は、データセット集計を指定せずにフィールド 'Price' を直接参照しています。レポートに複数のデータセットが含まれている場合、データ領域外のフィールド参照は、データセット スコープを指定する集計関数内に含まれている必要があります。(rsFieldReferenceAmbiguous) オンライン ヘルプを取得する テキスト ボックス 'textboxPercentageValue' の値式は、データセット集計を指定せずにフィールド 'Variance' を直接参照しています。レポートに複数のデータセットが含まれている場合、データ領域外のフィールド参照は、データセット スコープを指定する集計関数内に含まれている必要があります。(rsFieldReferenceAmbiguous) (rsFieldReferenceAmbiguous) オンライン ヘルプを取得する テキスト ボックス 'textboxPercentageValue' の値式は、データセット集計を指定せずにフィールド 'Variance' を直接参照しています。レポートに複数のデータセットが含まれている場合、データ領域外のフィールド参照は、データセット スコープを指定する集計関数内に含まれている必要があります。(rsFieldReferenceAmbiguous) (rsFieldReferenceAmbiguous) オンライン ヘルプを取得する テキスト ボックス 'textboxPercentageValue' の値式は、データセット集計を指定せずにフィールド 'Variance' を直接参照しています。レポートに複数のデータセットが含まれている場合、データ領域外のフィールド参照は、データセット スコープを指定する集計関数内に含まれている必要があります。(rsFieldReferenceAmbiguous)"

では、この式/式を SQL Server Reporting Services や VBScript パーサー、またはそれについて不平を言っている "誰" に対しても明確にするためには、どうすればよいでしょうか?

4

2 に答える 2

18

「データ領域」ではないレポートの領域 (テーブルやリストなど) に Textbox が追加されたようです。データ領域は、特定のレポート データセットへの参照をそのプロパティの 1 つとして持つため、Reporting Services は、そのデータ領域内のすべてのフィールド参照がそのデータセットを参照していることを認識します。このエラーが言おうとしていることは (かなり冗長な方法で) 次のとおりです。

  • データ領域外のフィールドを参照する場合、その参照は Sum() などの集計式内にある必要があります。これは、データセットにフィールドの複数の行が含まれている可能性があるためです。単一の値。
  • この集計式には、フィールドの取得元であるレポート データセットへの参照も含まれている必要があります。

したがって、フィールド "WK1" がデータセット "MyDataset1" の場合、そのフィールドを参照する式は次のようになります。

=Sum(Fields!WK1, "MyDataset1")

参照:式でのデータセット フィールド コレクション参照の使用

于 2016-01-13T01:48:46.307 に答える