Reporting services lookup-分组方式
我有两个数据库: 服务器1上的数据库1 Server2上的数据库2Reporting services lookup-分组方式,reporting-services,reportbuilder,reportbuilder3.0,Reporting Services,Reportbuilder,Reportbuilder3.0,我有两个数据库: 服务器1上的数据库1 Server2上的数据库2 Date | TotalCol | Col1a 10/04/2014 125 UID01 11/04/2014 101 UID01 10/04/2014 2 UID02 11/04/2014 5 UID02 我创建了一个表格,下面给出了一个小示例结果: Name | Date |
Date | TotalCol | Col1a
10/04/2014 125 UID01
11/04/2014 101 UID01
10/04/2014 2 UID02
11/04/2014 5 UID02
我创建了一个表格,下面给出了一个小示例结果:
Name | Date | Total
Name1 10/04/2014 125,101
Name1 11/04/2014 125,101
Name2 10/04/2014 2,5
Name2 11/04/2014 2,5
因此,我从Server1上的Database1获取日期和名称值
我通过在“total”文本框字段上使用以下表达式获取total列,该字段查找Server2上Database2中的总计:
=Join(LookupSet(Fields!Col1.Value, Fields!Col1a.Value, Fields!TotalCol.Value, "DataSetServer2"),",")
显然,我想做的是得到以下结果:
Name | Date | Total
Name1 10/04/2014 125
Name1 11/04/2014 101
Name2 10/04/2014 2
Name2 11/04/2014 5
这可能吗?如果需要任何进一步的信息,请告诉我,我从未真正使用过的道歉
其他信息:
DataSet2用于查询Server1上的Database1以创建表,示例数据为:
Date | Col1 | Name
10/04/2014 UID01 Name1
11/04/2014 UID01 Name1
10/04/2014 UID02 Name2
11/04/2014 UID02 Name2
然后使用以下数据集查询Server2上的Database2
Date | TotalCol | Col1a
10/04/2014 125 UID01
11/04/2014 101 UID01
10/04/2014 2 UID02
11/04/2014 5 UID02
使用示例数据集: 我基于第一个数据集创建了一个简单的表: 表达方式是:
=Lookup(Fields!Col1.Value & Fields!Date.Value
, Fields!Col1a.Value & Fields!Date.Value
, Fields!TotalCol.Value
, "DataSetServer2")
您会注意到我正在比较字段!Col1.值和字段!日期.值
到字段!Col1a.值和字段!此处前两个参数中的Date.Value
。您可以传递任何表达式,它不必是一列。我使用的表达式提供了所需的唯一查找比较
由于我们得到的是唯一的行,lookupper
可以替换为Lookup
这将提供所需的结果:
您只需要找到一种使查找唯一的方法,即
Col
和Date
的某种组合。您甚至可以在数据集中使用计算字段。这两个基础数据集是什么样子的?你能为这个问题添加一些样本数据吗?我已经添加了构成表格的两个数据集中的样本数据,这很好,伊恩,非常感谢。我不知道你可以用这样的组合。