Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reporting services 使用多维数据为共享数据集创建参数_Reporting Services_Ssas - Fatal编程技术网

Reporting services 使用多维数据为共享数据集创建参数

Reporting services 使用多维数据为共享数据集创建参数,reporting-services,ssas,Reporting Services,Ssas,我一直在尝试根据系统中的多维数据集创建SSRS报告。此报表将使用共享数据源和共享数据集。到目前为止,我创建了一个共享数据源和一个共享数据集,该数据集在过滤区域中有大约5个维度作为参数(使用“equal”操作符),参数字段被选中,结果网格中有一组维度和度量 现在,当我使用此共享数据集创建报告时,过滤器区域中的5个维度确实显示为参数,但是,当我运行报告时,这些参数在下拉列表中没有值。我在这个过程中遗漏了什么吗?这是权限问题吗 当我创建一个本地数据集时,一切都很好,参数由维度的成员填充。但在共享数据集

我一直在尝试根据系统中的多维数据集创建SSRS报告。此报表将使用共享数据源和共享数据集。到目前为止,我创建了一个共享数据源和一个共享数据集,该数据集在过滤区域中有大约5个维度作为参数(使用“equal”操作符),参数字段被选中,结果网格中有一组维度和度量

现在,当我使用此共享数据集创建报告时,过滤器区域中的5个维度确实显示为参数,但是,当我运行报告时,这些参数在下拉列表中没有值。我在这个过程中遗漏了什么吗?这是权限问题吗

当我创建一个本地数据集时,一切都很好,参数由维度的成员填充。但在共享数据集上,同样的方法不起作用

此外,我正在使用报表生成器3.0


有人遇到过同样的问题吗?请提供帮助。

我认为参数是报表的本地参数,实际上并不被视为共享参数。您可以共享dataaset,但我不确定如何共享参数,因为它需要另一个数据集来填充它。从SSAS源创建参数时,SSRS会为每个参数创建一个隐藏数据集,并使用该数据集填充参数下拉列表

您可以编写另一个共享数据集,该数据集使用与SSRS通常对隐藏数据集使用的MDX相同的MDX,并使其可供报表生成器使用。例如,以下是SSRS为日历年参数生成的MDX:

WITH 
Member [Measures].[ParameterCaption] as [Date].[Calendar Year].Currentmember.CAPTION
MEMBER [Measures].[ParameterValue] as [Date].[Calendar Year].Currentmember.UNIQUENAME
MEMBER [Measures].[ParameterLevel] as [Date].[Calendar Year].Currentmember.LEVEL.ORDINAL
SELECT {[Measures].[ParameterCaption], [Measures].[ParameterValue], [Measures].[ParameterLevel} on COLUMNS, 
[Date].[Calendar Year].ALLMEMBERS ON ROWS 
FROM [CUBE]

您可以将其用于所需的任何维度层次结构。如果要执行产品类别参数,则只需在查询中将[Date].[Calendar Year]替换为[product].[category]

嘿,谢谢你的回复。这种方法的工作原理是,第二个共享数据集确实填充了下拉列表,但是,由于过滤列表是基于时间的(即,根据报告的时间框架,列表会有所不同),是否有一种方法可以根据报告的时间框架约束第二个数据集?是,将where子句添加到MDX语句的末尾,或将交叉连接添加到MDX语句,并在查询中放置一个参数,该参数的值将从级联参数传入