簡體   English   中英

使用報表生成器從SSRS報表的第二個Tablix中的第二個數據集中獲取數據總和

[英]Get Sum of Data from Second Dataset in the Second Tablix of SSRS report with Report Builder

我有兩個不同的數據集,它們在報表生成器工具的兩個不同的Tablix中具有相同的值。 我想在第二個Tablix中實現ELEC_DATA

我已經嘗試使用此表達式。

=LOOKUP(Field!COMP_ID.value,Field!COMP_ID.value,Field!ELEC_DATA.value,"DATASET2")

結果完全沒有顯示-也沒有錯誤。

然后,我嘗試使用自定義代碼。

=code.sumlookup(LOOKUPSET(Field!COMP_ID.value,Field!COMP_ID.value,Field!ELEC_DATA.value,"DATASET2"))

我得到的結果是“ 0”。

預期結果將是添加ELEC_DATA如所附圖片所示 在此處輸入圖片說明

在我看來,您使用的LOOKUP函數不正確。 LOOKUP函數僅需要使用4個參數。

=LOOKUP([SourceValue], [DestinationValue], [LookedUpValue], "[SourceDataset]")

但是,我不確定這是否是解決您問題的最佳方案,甚至是可行的方案。 老實說,如果您能夠將這兩個數據集合並為一個數據集查詢,這將變得容易得多。

SELECT PAC2_ID, A.COMP_ID, DATE, ELEC_DATA 
FROM TABLE1 A JOIN TABLE2 B ON B.COMP_ID = A.COMP_ID

從那里,您可以在第二個基於PAC2_ID Tablix上使用分組,從而無需任何表達式。 應用分組時,它將自動對值求和。

好吧,讓我們嘗試這樣的事情。

在第二個Tablix中再創建一個列,我們將其稱為“ PAC2ID_Calculated”。 現在,對於此列,我們將使用查找表達式=Lookup(Field!COMP_ID.value, Field!COMP_ID.value, Field!PAC2_ID, "FirstDataset")

現在,這將在新列中返回什么,它將從第一個數據集中返回COMP_ID的PAC2_ID,而第二個Tablix將如下所示

在此處輸入圖片說明

一旦獲得此結果,請根據PAC2_ID將其分組,您將獲得預期的結果。

在此處輸入圖片說明

您可以隱藏COMP_ID列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM