将MDX参数传递给SSRS中的URL

时间:2016-07-20 10:13:24

标签: reporting-services ssrs-2012

我有一个(非常简单的)报告,可以从SSAS Cube加载任何给定客户编号的年度数据。该报告在我们的CRM中链接,我想通过将客户编号传递到URL中来加载CRM中的报告。

我知道如何使用关系数据集来做这件事,但我在这里不知所措。

我认为网址是:

http://reportserver/CRM/Salesreport&Customer=[customer].[fields!id.value]= “1234”

CRM正在传递1234。

编辑:这适用于SSAS数据集,而非关系数据集!

1 个答案:

答案 0 :(得分:0)

使用MDX时,必须注意参数值的语法。 " 1234"的价值在您的SSAS多维数据集中不存在。有几种方法可以应用参数和过滤器,但我将举一个例子。

  1. 将网址更改为以下格式: http://reportserver/CRM/Salesreport&Customer=1234

  2. 向数据集添加过滤器,其中Fields!id.Value = Parameters!Customer.Value

  3. 通过使用数据集过滤器,您可以避免MDX语法的复杂性并在运行查询后使用数据。更有效的方法是将参数转换为MDX语法并将其传递给查询,但这需要更多的工作。

    此外,如果在查询设计器中选中“参数”框,它将自动添加一个参数以及一个隐藏数据集来填充它。这非常有用,因为它会将值转换为MDX语法。