2017-10-12 60 views
0

我有使用表格的SSRS報告。 您可以選擇多個客戶端和期間,並且對於每一對,表格中都會有一行。所以2個客戶* 3個週期= 6行。SSRS子報表在表格單元格內沒有正確檢索參數?

現在...有一些單元比單個值更復雜,我想在這些單元中放置一個子報表。子報表將該特定行的客戶和期間視爲參數。

這是問題出現的地方。參數將無法正確傳遞。

我可以把Parameters!ClientID.Value(0)作爲一個表達式,例如它會正確傳遞第一個ClientID,但是如果我只是把Parameters!ClientID.Value打破了...並且我希望客戶機/期間爲當前行。

但是,它是如何,我不能通過參數,但可以基於該客戶端/期間對每行填充新的數據集?

請注意,我真的不希望編輯構建該數據集的SP來返回客戶端/期間本身。當然,這會工作..但是,當我有參數時,爲什麼會這樣?

任何想法?我在Visual Studio Report Project中執行此操作。

回答

0

如果我理解正確,則不需要使用該參數。您需要使用數據集中字段的值。所以,如果你的表格顯示了客戶端和時間然後再傳入的參數值是=Fields!Client.Value=Fields!Period.Value

Client Period SubReportCell 
Bob  2017  "subreport here passing in Bob, 2017" 
Geoff  2015  "sub report here passing in Geoff, 2015" 

你應該只能夠從報表設置對話框的下拉列表中選擇這些。

+0

從Drop Downs中選擇ClientID和PeriodID。他們是報告參數。 然後有一個SP將每行的這些值作爲參數並返回我用於該行的DataSet。 DataSet不包含其本身的ID。 然後在每一行內都有一個子報表,我也想要這些參數。 – Caleb

+0

你讓我意識到構建DataSet的SP需要參數的LIST。我以爲它一行一行......我想我將不得不將值添加到數據集。 – Caleb

+0

好的,我沒有意識到你正在那樣做,但希望它讓你思考一種稍微不同的方法,從長遠來看應該會讓事情變得更容易。 –