Im建立一個使用兩個數據集的報告。當我預覽我覺得這些類型的錯誤...Sql Server 2008報告服務:使用兩個數據集錯誤
錯誤19
[rsFieldReferenceAmbiguous]
文本框「Textbox3」值表達式直接指到外地「PerZipCode」沒有指定的數據集聚集。當報告包含多個數據集時,數據區域外部的字段引用必須包含在指定數據集範圍的聚合函數中。
什麼樣的聚合函數是需要的,哪裏有一個選項來設置它?
Im建立一個使用兩個數據集的報告。當我預覽我覺得這些類型的錯誤...Sql Server 2008報告服務:使用兩個數據集錯誤
錯誤19
[rsFieldReferenceAmbiguous]
文本框「Textbox3」值表達式直接指到外地「PerZipCode」沒有指定的數據集聚集。當報告包含多個數據集時,數據區域外部的字段引用必須包含在指定數據集範圍的聚合函數中。
什麼樣的聚合函數是需要的,哪裏有一個選項來設置它?
最小或最大或平均等:大部分these
的總需要其他數據集減少到一個值(值等的最大值),因爲你正在使用的東西不是在局部範圍內(如數據集綁定到數據區域)。無法將其他DataSet中的行與本地範圍DataSet匹配。
如果您的文本框是獨立的(不在數據區域中),同樣適用:需要聚合告訴SSRS需要採取哪一行(Max等)或對數據集進行什麼計算(Avg等)
如果您要將多個數據集添加到報表中,上述內容可能無法解決您的問題。聚合時可能出現以下錯誤:
[rsMissingAggregateScope]文本框'textbox6'的值表達式使用不帶範圍的聚合表達式。除非報表恰好包含一個數據集,否則在數據區域之外使用的所有聚合需要使用範圍。
你可能需要的是這樣的:
First(Fields!MyField.Value, "DATASETNAME")
,你可以通過使用表達式生成器,而不是字段從數據集拖放得到。
這也是'文本框的值表達式使用沒有範圍的聚合表達式'錯誤的解決方案。 – 2016-06-02 13:07:41
要在SSRS報告上使用多個數據集值,我們需要使用下面的代碼。
First(Fields!MyField.Value,「Datasetname」)。
如果鍵入這一點,你仍然得到同樣的問題,然後在文本框中單擊鼠標右鍵,然後選擇&表達的表達點擊數據集。選擇你的數據集&,然後雙擊所需的列。點擊確定後。
如果你有多個控件,然後按照同樣爲所有這些&通過執行報告驗證的相同。
如果你已經有一個聚集並且有這個錯誤,可能是因爲該報告的領域是不是最新的與數據集(一個或多個)。您可以通過refreshing the fields of the report解決問題。
要填充字段集合,請使用「數據集屬性」對話框上的「刷新字段」按鈕。 在「數據集屬性」對話框關閉之前,字段集合不會顯示在「報表數據」窗格中。
刷新特定數據集的字段 在「報告數據」窗格中,右鍵單擊數據集,然後單擊「數據集屬性」。
注意: 如果「報表數據」窗格不可見,請在「查看」菜單上單擊「報表數據」。如果窗格以浮動窗口打開,則可以停靠它。有關更多信息,請參閱如何:停靠報表數據窗格。
在「查詢」窗格中,鍵入查詢。或者,您可以使用「導入」按鈕從另一個.rdl文件導入查詢。 單擊刷新字段。 單擊確定。 在「報告數據」窗格中,展開數據集節點以查看當前定義的字段集合。
一如既往gbn你回答我的問題,並解釋「爲什麼」。再次感謝! – 2boolORNOT2bool 2011-06-15 17:43:01
最後一個問題,我有另一個報告,我已經開發使用三個數據集。它工作正常,沒有錯誤。兩者之間唯一真正的推遲是我使用表達式而不是從UI中拉出字段。這是因爲即時通訊顯式引用數據集= =第一(Fields!RegistrationTime.Value,「DataSet1」) – 2boolORNOT2bool 2011-06-15 19:52:19
首先是一個聚合和數據集1是你的範圍。所以,正如MSDN所說你應該是 – gbn 2011-06-15 19:57:54