报告服务:连接数据集上的所有字段

Posted

技术标签:

【中文标题】报告服务:连接数据集上的所有字段【英文标题】:Reporting services: Join all field on a dataset 【发布时间】:2012-06-12 13:31:20 【问题描述】:

在报告中,我有一个带有过滤器的数据集(基于 MultiValue 参数)。

此数据集包含两个字段:Id 和 Name。

我需要在某处显示所有名称的串联:

Name1 / Name2 / Name3

问题是join 方法仅适用于数组,然后我无法将数据集指定为值。

我也查看了自定义代码,但没有发现任何工作。

我应该怎么做?

【问题讨论】:

【参考方案1】:

我可能有点晚了,但对于任何对此感兴趣的人来说,在 s-s-rS 中有一种相当简单的方法:

=Join(LookupSet(1,1,Fields!Name.Value, "DatasetName")," / ")

【讨论】:

LookupSet 在 s-s-rs-2005 中不可用。有没有类似的解决方案? 对不起,我不知道还有什么方法。 传奇,LookupSet 的文档记录很差 - 前两个参数为 1 是这里的窍门。 理论上,前两个参数可以是任何值——它们只需要相同即可。我现在无法测试或验证它,但只要第一个参数与第二个参数匹配,LookupSet 就会采用值(第三个参数) - 通常在两个不同的字段之间完成。【参考方案2】:

s-s-rS-2008 R2 及更高版本...

1.使用LookupSet 如果您超出 2008 版 OP 的范围,则有一个很好的解决方案:

=Join(LookupSet(1, 1, Fields!Name.Value, "DatasetName"), " / ")

这个答案使用the LookupSet solution 的功劳完全归于@urbanhusky's answer。


s-s-rS-2008 及更低版本...

我之所以保留这个答案,是因为它将@urbanhusky 的解决方案与受困于 OP 版本的 s-s-rS 及以下版本的可怜人可用的解决方案相结合。

据我所知,在 s-s-rS 2008 中只有三个“选项”,每个选项都有自己的缺点。第一个可能是最不老套的。

2。额外参数 使用允许多个值创建一个内部参数(例如“NameParameter”,参见this SO answer 或MSDN)。将参数的默认值设置为数据集中的 Name 字段。然后使用函数=Join(Parameters!NameParameter.Value, " / ") 在文本框中显示连接的名称。

这可能是您最好的选择,但如果有很多值,则该参数可能无法很好地工作。

3.使用列表 创建一个列表并将名称字段拖放到其中。如有必要,也可以按名称分组。

这里的缺点是(AFAIK)列表不能水平显示。

4.使用矩阵 哦,男孩,这个真的很丑。尽管如此,这里还是:创建一个矩阵,将名称字段拖到列标题,并隐藏第一列以及第二行(用于显示数据)。

主要的缺点是它是一种 hack(而且有些矫枉过正),而且您必须使用表达式手动修剪最后一个分隔符。

【讨论】:

不幸的是我不能:1.我只收到发件人的ID,2.我必须以水平方式放置它,3.我已经尝试过,但我必须指定宽度每列的:( 对于选项 1,我的意思是 internal 参数,不是用户必须填写的参数,而是由数据集填充的参数。 哦?不知道这种“内参”你有这方面的资料吗? 我在答案中添加了一些链接(尽管您应该花一些时间在 MSDN 和其他 SO 问题上找到自己的方式,这比询问其他人更容易且更有效)。希望对您有所帮助! 完美!能见度! :)

以上是关于报告服务:连接数据集上的所有字段的主要内容,如果未能解决你的问题,请参考以下文章

数据集上的慢联合

深度学习MLP/LeNet/AlexNet/GoogLeNet/ResNet在三个不同数据集上的分类效果实践

深度学习MLP/LeNet/AlexNet/GoogLeNet/ResNet在三个不同数据集上的分类效果实践

基于条件的 2 个大型数据集上的模糊模糊字符串匹配 - python

如何评估不同模型在一个数据集上的性能?

Firebase 可扩展性:整个数据集上的观察者与多个观察者