【发布时间】:2015-07-27 08:19:29
【问题描述】:
(此问题继续线程"SSRS mdx report: use dimension on columns",由@whytheq回答)
这个正确的代码是在前面的线程中构建的:
WITH
MEMBER [Measures].[Contacts] AS
IIF([Sales_step].CURRENTMEMBER IS [Sales_step].&[contact], [Measures].[Qnt], null)
MEMBER [Measures].[Clients] AS
IIF([Sales_step].CURRENTMEMBER IS [Sales_step].&[client], [Measures].[Qnt], null)
MEMBER [Measures].[Funded] AS
IIF([Sales_step].CURRENTMEMBER IS [Sales_step].&[funded], [Measures].[Qnt], null)
SELECT {[Measures].[Contacts],
[Measures].[Clients],
[Measures].[Funded]} ON COLUMNS,
NON EMPTY
crossjoin({[City].CHILDREN},
{[Sales_step].CHILDREN}) ON ROWS
FROM ( SELECT ( [Sales_step].MEMBERS ) ON COLUMNS
FROM [SALES_PIPE])
它会产生正确的结果:
现在我想将行数减少到一个 [City] 维度,只是为了得到如下结果:
为此,我尝试了对代码的 2 处更改:
(1) 移除交叉连接:
NON EMPTY
crossjoin({[City].CHILDREN},
{[Sales_step].CHILDREN}) ON ROWS
仅具有一个 [City] 维度:
NON EMPTY [City].CHILDREN ON ROWS
(2) 离开交叉连接并将其封装在 Extract() func 中:
Extract(
crossjoin({[City].CHILDREN},
{[Sales_step].CHILDREN}),
[City]) ON ROWS
但两种变体都给出空单元格:
如何仅在行上获得一个 [City] 维度的简短结果?
【问题讨论】:
标签: reporting-services extract mdx rdl