在SSRS 2016中,我正在编写一些针对Tabular实例的报告。我们使用MDX作为查询语言。我在报告中手动指定默认唯一名称时遇到问题。 任何想法?这是一个错误吗?逃避问题?
我们有很多参数,我们将维度属性拉为可用值:
WITH MEMBER [Measures].[Label] AS [Dimension].[Dimension Attribute].CURRENTMEMBER.MEMBER_CAPTION
MEMBER [Measures].[UniqueName] AS [Dimension].[Dimension Attribute].CURRENTMEMBER.UniqueName
SELECT {[Measures].[Label], [Measures].[UniqueName] ON 0,
[Dimension].[Dimension Attribute].Members ON 1
FROM [CubeName]
如果我尝试手动设置默认值,Visual Studio似乎识别该值,但SSRS服务器不会。我将它设置为:
[Line of Business].[Line of Business].[All]
SSRS似乎逃避了
\[Line of Business\].\[Line of Business\].\[All\]
这也是尝试在报告中传递选择的问题。值得注意的是,如果我使用查询驱动默认值,服务器上的SSRS很乐意选择默认值:
WITH MEMBER [Measures].[UniqueName] AS AS [Dimension].[Dimension Attribute].CURRENTMEMBER.UniqueName
SELECT [Measures].[UniqueName]
FROM [CubeName]
WHERE [Dimension].[Dimension Attribute].[All]
答案 0 :(得分:0)
在SSRS中,默认值应该是一个字符串,其中包含维度成员的唯一名称,在这种情况下:
="[Line of Business].[Line of Business].[All]"
现在,在您的数据集中,您必须使用MDX STRTOSET函数,您的参数中字符串值的目的将被解释为一组有效的[Line Of Business]
维成员。
SELECT
StrToSet
(@BusinessLineParam
,CONSTRAINED
) ON ROWS
,[Measures].[Sales Amount] ON COLUMNS
FROM [Sales Cube];
如果有帮助,请告诉我。