在Sql Server Reporting Services中使用行值填充列

时间:2014-02-05 11:10:36

标签: reporting-services ssrs-tablix

我有一个名为Row和Title的2列数据集。此数据集中有8行,我想在表格的列中显示这8个标题。所以我创建了一个包含8列的表,并将每列的表达式设置为

=LookUp(Fields!Row.Value,1,Fields!Title.Value,"Titles")    
=LookUp(Fields!Row.Value,2,Fields!Title.Value,"Titles") 
=LookUp(Fields!Row.Value,3,Fields!Title.Value,"Titles") 
.
.

但是只有第一列显示标题。其他7没什么。我的表情错了吗?

1 个答案:

答案 0 :(得分:1)

您实际上只需要反转Lookup表达式中的前两个参数:

=LookUp(1,Fields!Row.Value,Fields!Title.Value,"Titles")    
=LookUp(2,Fields!Row.Value,Fields!Title.Value,"Titles") 
=LookUp(3,Fields!Row.Value,Fields!Title.Value,"Titles") 
.
.

使用Lookup,第一个参数是用于在指定的DataSet中搜索的值;第二个参数是将应用于数据集并用于匹配第一个参数的表达式。

因此,在原始表达式中使用Fields!Row.Value作为第一个参数将始终返回1,即数据集中的第一行,因此它只匹配其中一个常量值。

如上所述反转这些应该会让它继续下去。