報表產生器函數 - 編頁報告中的 Lookup 函數 (報表產生器)
適用於:Microsoft 報表產生器 (SSRS) Power BI Report Builder SQL Server Data Tools 中的報表設計師
Lookup 會在編頁報告中從包含名稱/值對的資料集傳回第一個符合指定名稱的值。
注意
您可以在 Microsoft 報表產生器、Power BI Report Builder,以及 SQL Server Data Tools 的報表設計師中,建立及修改編頁報告定義 (.rdl) 檔案。
語法
Lookup(source_expression, destination_expression, result_expression, dataset)
參數
參數 | 定義 |
---|---|
source_expression | (Variant) 在目前範圍中評估並指定要查閱之名稱或索引鍵的運算式。 例如: =Fields!ProdID.Value 。 |
destination_expression | (Variant) 針對資料集中的每個資料列評估並指定要比對之名稱或索引鍵的運算式。 例如: =Fields!ProductID.Value 。 |
result_expression | (Variant) 對資料集 (source_expression = destination_expression) 的每個資料列進行評估,而且指定要擷取之值的運算式。 例如: =Fields!ProductName.Value 。 |
資料集 (dataset) | 指定報表中資料集名稱的常數。 「產品」可能是您使用的資料集範例。 |
傳回
Lookup 會傳回 Variant,或在沒有相符項目時傳回 Nothing。
備註
使用 Lookup 可從具有一對一關係之名稱/值對的指定資料集中擷取值。 例如,如果是資料表中的 ID 欄位,您可以使用 Lookup 從未繫結至資料區的資料集中,擷取對應的 [名稱] 欄位。
Lookup 會執行下列動作:
評估目前範圍中的來源運算式。
根據指定之資料集的定序,在套用篩選之後針對指定之資料集的每一個資料列評估目的地運算式。
在第一個符合來源運算式和目的地運算式的項目上,針對資料集中的該資料列評估結果運算式。
傳回結果運算式值。
如需針對具有一對多關係的單一名稱或索引鍵欄位擷取多個值,請使用 Report Builder 函數 - 編頁報告中的 LookupSet 函數 (Report Builder)。 如需針對一組值呼叫 Lookup,請使用 Report Builder 函數 - 編頁報告中的 Multilookup 函數 (Report Builder)。
適用以下限制:
當套用所有篩選運算式之後,便會評估Lookup 。
只支援一層的查閱。 來源、目的地或結果運算式不能包含查閱函數的參考。
來源和目的地運算式必須評估為相同的資料類型。 傳回類型與評估之結果運算式的資料類型相同。
來源、目的地和結果運算式無法包含報表或群組變數的參考。
Lookup 不能當做下列報表項目的運算式使用:
資料來源的動態連接字串。
資料集中的導出欄位。
資料集中的查詢參數。
資料集中的篩選。
報表參數。
Report.Language 屬性。
如需詳細資訊,請參閱Report Builder 函數 - 編頁報告中的彙總函數參考 (Report Builder) 和編頁報告中總計、彙總與內建集合的運算式範圍 (Report Builder)。
範例
在下列範例中,假設資料表繫結至一個資料集,此資料集包含產品識別碼 ProductID 的欄位。 另一個資料集 "Product" 包含對應的產品識別碼 ID 和產品名稱。
在下列運算式中,Lookup 會比較 "Product" 資料集之每一個資料列中 ProductID 與 ID 的值,而且當找到符合的項目時,就會傳回該資料列的 [名稱] 欄位值。
=Lookup(Fields!ProductID.Value, Fields!ID.Value, Fields!Name.Value, "Product")