2016-11-01 4 views
0

мне нужно немного помочь с моим SSRS кода параметра в MDX контекста Я пытаюсь вернуть расположение страны, с и тип = вещества и количество домов (не используется в качестве параметра) для выпадающего списка я использую подпись, UniqueName и level.ordinal методMDX (SSRS) Параметр подмножество

WITH MEMBER [Measures].[ParameterCaption] AS 
[Country].[Location].CurrentMember.Member_Caption 
MEMBER [Measures].[ParameterCaption2] AS 
[Type].[Type].CurrentMember.Member_Caption 
MEMBER [Measures].[ParameterValue] AS 
[Country].[Location].CurrentMember.UniqueName 
MEMBER [Measures].[ParameterLevel] AS 
[Country].[Location].CurrentMember.Level.Ordinal 
SELECT 
{ [Measures].[HouseCount] 
, [Measures].[ParameterCaption] 
,[Measures].[ParameterValue] 
,[Measures].[ParameterLevel]}ON COLUMNS 
, ([Type].[Type].ALLmembers)ON ROWS 
FROM [Cube]; 

это не возвращает то, что я после

enter image description here

я должен быть показан список мест только там, где они пересекаются с типом = материи и имеет дом сосчитать I, когда я настроить код либо получить все местоположения или что показ таблицы значение

ответ

1

Вы, возможно, потребуется переместить [Country].[Location] в контекст и ввести в п WHERE?

WITH MEMBER [Measures].[ParameterCaption] AS 
    [Country].[Location].CurrentMember.Member_Caption 
MEMBER [Measures].[ParameterCaption2] AS 
    [Type].[Type].CurrentMember.Member_Caption 
MEMBER [Measures].[ParameterValue] AS 
    [Country].[Location].CurrentMember.UniqueName 
MEMBER [Measures].[ParameterLevel] AS 
    [Country].[Location].CurrentMember.Level.Ordinal 
SELECT 
    { 
     [Measures].[HouseCount], 
     [Measures].[ParameterCaption], 
     [Measures].[ParameterValue], 
     [Measures].[ParameterLevel] 
    } ON COLUMNS, 
    NonEmpty(
     [Country].[Location].[Location].MEMBERS 
    ,[Measures].[HouseCount] 
    ) ON ROWS 
FROM [Cube] 
WHERE [Type].[Type].[matter]; 
+0

ли вам также необходимо фильтровать ряды с домом рассчитывать? Возможно, измените предложение ON ROWS на 'NonEmpty ([Country]. [Location]. [Location] .MEMBERS, [Measures]. [HouseCount]) ON ROWS' и посмотрите, делает ли это это – GregGalloway

+0

спасибо @GregGalloway Я пропустил этот бит их запрос – whytheq

0

You не имеют фильтрации в вашем запросе, как это написано в настоящее время. Чтобы достичь того, что вы заявляете (возвращайтесь туда, где Type: matter), тогда просто выберите только этот тип на ROWS.

WITH MEMBER [Measures].[ParameterCaption] AS 
    [Country].[Location].CurrentMember.Member_Caption 
MEMBER [Measures].[ParameterCaption2] AS 
    [Type].[Type].CurrentMember.Member_Caption 
MEMBER [Measures].[ParameterValue] AS 
    [Country].[Location].CurrentMember.UniqueName 
MEMBER [Measures].[ParameterLevel] AS 
    [Country].[Location].CurrentMember.Level.Ordinal 
SELECT 
    { 
     [Measures].[HouseCount], 
     [Measures].[ParameterCaption], 
     [Measures].[ParameterValue], 
     [Measures].[ParameterLevel] 
    } ON COLUMNS, 
    ([Type].[Type].[matter]) ON ROWS 
FROM [Cube]; 
+0

Привет, ребята, потому что [Measures]. [ParameterCaption] выбран даже где оператор возвращает все места не только те, где тип материи – user2181700

Смежные вопросы