查找函数不返回值
Lookup function not returning value
我在 SSRS 中有一个数据集,它使用以下 TSQL 作为数据集:
SELECT ROW_NUMBER() OVER ( ORDER BY Judge.EventJudgeID ) AS Row ,
Judge.EventJudgeID ,
Judge.EventID ,
Judge.Judge_PersonID ,
Judge.Passcode ,
Persons.LastName + ' ' + Persons.FirstName AS JudgeName ,
Events.EventName ,
Events.EventDate
FROM DB.dbo.tblEventJudge Judge
INNER JOIN DB.dbo.Persons Persons ON PersonID = Judge_PersonID
INNER JOIN DB.dbo.tblEvents Events ON Events.EventID = Judge.EventID
对于给定的事件,它将return以下数据:
我有一份 SSRS 报告,我想把法官的名字放在上面,看起来像这样:
在法官 1 的表达式中,我有以下内容:
=Lookup(Fields!Row.Value,1,Fields!JudgeName.Value,"UpperRightBox")
这似乎运行良好。所以我将以下内容放入法官 2 框中:
=Lookup(Fields!Row.Value,2,Fields!JudgeName.Value,"UpperRightBox")
这 return 是一个空白,其中没有任何信息。我不完全理解为什么它不查找第 2 行并用 JudgeName 值填充它。我正在使用 SQL Server 2012,但这无关紧要,因为报告尚未部署。任何帮助将不胜感激。
您需要交换前两个参数。语法是:
Lookup(source_expression, destination_expression, result_expression, dataset)
source_expression: Evaluates the source expression in the current scope.
destination_expression: Evaluates the destination expression for each row of the specified dataset after filters have been applied,
based on the collation of the specified dataset.
所以对于第二个字段你需要说:取这个常数:2(来源),并遍历数据集中的所有行 "UpperRightBox",当你找到一个 2 的行时名为 "Row"(目的地)的列,告诉我该行(结果)中的法官姓名是什么。
我在 SSRS 中有一个数据集,它使用以下 TSQL 作为数据集:
SELECT ROW_NUMBER() OVER ( ORDER BY Judge.EventJudgeID ) AS Row ,
Judge.EventJudgeID ,
Judge.EventID ,
Judge.Judge_PersonID ,
Judge.Passcode ,
Persons.LastName + ' ' + Persons.FirstName AS JudgeName ,
Events.EventName ,
Events.EventDate
FROM DB.dbo.tblEventJudge Judge
INNER JOIN DB.dbo.Persons Persons ON PersonID = Judge_PersonID
INNER JOIN DB.dbo.tblEvents Events ON Events.EventID = Judge.EventID
对于给定的事件,它将return以下数据:
我有一份 SSRS 报告,我想把法官的名字放在上面,看起来像这样:
在法官 1 的表达式中,我有以下内容:
=Lookup(Fields!Row.Value,1,Fields!JudgeName.Value,"UpperRightBox")
这似乎运行良好。所以我将以下内容放入法官 2 框中:
=Lookup(Fields!Row.Value,2,Fields!JudgeName.Value,"UpperRightBox")
这 return 是一个空白,其中没有任何信息。我不完全理解为什么它不查找第 2 行并用 JudgeName 值填充它。我正在使用 SQL Server 2012,但这无关紧要,因为报告尚未部署。任何帮助将不胜感激。
您需要交换前两个参数。语法是:
Lookup(source_expression, destination_expression, result_expression, dataset)
source_expression: Evaluates the source expression in the current scope.
destination_expression: Evaluates the destination expression for each row of the specified dataset after filters have been applied, based on the collation of the specified dataset.
所以对于第二个字段你需要说:取这个常数:2(来源),并遍历数据集中的所有行 "UpperRightBox",当你找到一个 2 的行时名为 "Row"(目的地)的列,告诉我该行(结果)中的法官姓名是什么。