2017-05-03 148 views
0

我在SQL Server 2012上使用SSRS并使用报告构建器构建钻取报告。我有一个表格6行和多列。每个文本框都有一些数字,我应该能够点击这些数字并转到不同的报告。这两个报告都位于报告服务器上的同一文件夹下。如何从另一个报告中指定报告的路径?

问题:

我可以通过下面的说明,在this页面做,直到这一点。 我的问题是我不能使用静态链接,因为每个文本框都应该指向它自己的独特报告。当我使用“浏览”按钮或通过提供静态链接“指定报告:”时,同一列中的所有文本框将使用相同的链接。我需要的是能够以指定这是格式的报表路径/Folder_Name/<valueOfColumn1><valueOfColumn2><nameOfColumn3>;

我的尝试:

所以,我想通过点击“FX”按钮,并提供链接使用“表达式”作为=Globals!ReportFolderFields!column1.ValueFields!column2.ValueFields!column3.Name

结果:

当我尝试通过使用表达式中使用上述方法不投任何错误,但在文本框中无法点击(不转指针到索引鳍GER)。当我使用“浏览”按钮使用静态链接时,同一个文本框可点击并将我带到另一个报告。

我在这里错过了什么?任何指针都会有帮助。

+0

不知怎的,这并没有出现在题正确。
我需要的是能够指定格式为“/ Folder_Name/valueOfColumn1valueOfColumn2nameOfColumn3”的报告路径 – 300

+0

需要注意报告链接的是他们始终需要相对于主文件夹启动,或者是相对的来自当前报告位置的路径是否是评估表达式的情况? - 另外,这里有一些方便的提示:https://docs.microsoft.com/en-us/sql/reporting-services/report-design/specifying-paths-to-external-items-report-builder-and -rsrs –

+0

感谢您的回复。是的,当我尝试通过单击“fx”按钮尝试“表达式”中的所有组合时,当我尝试只是= Fields!column1.ValueFields!column2.ValueFields!column3.Name它会在我尝试保存报告时抛出错误。 错误:文本框'' 的ActionInfo.Action.Drillthrough.ReportName表达式包含错误:[BC30456]'ValueFields'不是 'Microsoft.ReportingServices.ReportProcessing.ReportObjectModel.Field'的成员。 – 300

回答

2

公式中字段列表的语法需要进行一些更改。它看起来像你真正想要做的是将几个字段连接在一起,并在几个地方用斜杠,以获得正确的URL格式。

让我们假设下列元素解析为您需要的字符串。 (这有时是有帮助的,以验证这些决心,你通过插入文本框为每个单独,在排除故障的报告的部分期待什么,以后可以随时将其删除。)

Globals!ReportFolder 
Fields!column1.Value 
Fields!column2.Value 
Fields!column3.Name 

如果您愿这些串联在一起,作为一个网址与正确的地方增加了几个斜线一起使用,你需要遵循SSRS conventions on operators in expressions,这会导致这样的事情:

"/" & Globals!ReportFolder & "/" & Fields!column1.Value & Fields!column2.Value & Fields!column3.Name 

一如既往,因为这是一个表达式,它需要以等号开始。

表达式生成器不会插入运营商为你字段之间 - 这并不是说聪明......

+0

感谢您为我提供格式化表达式的正确方法。这正是我需要的。 – 300