(this question continues thread "SSRS mdx report: use dimension on columns", answered by @whytheq)
This correct code was built in the previouse thread:
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])
it produces proper result:
Now I want to reduce quantity of rows to one [City] dimension only to get result like:
To do that I've tried 2 changes to the code:
(1) remove crossjoin:
NON EMPTY
crossjoin({[City].CHILDREN},
{[Sales_step].CHILDREN}) ON ROWS
with one [City] dimension only:
NON EMPTY [City].CHILDREN ON ROWS
(2) leave crossjoin and incapsulate it in Extract() func:
Extract(
crossjoin({[City].CHILDREN},
{[Sales_step].CHILDREN}),
[City]) ON ROWS
but both variants give empty cells:
How can I get brief results for one [City] dimension on rows only?