2016-11-01 2 views
0

ich mit meinem SSRS Parameter Code in MDX ein wenig Hilfe benötigen Kontext Ich versuche, mit Land Orte zurückzukehren und type = Materie und ein Haus Zählung (nicht als Parameter verwendet) für die Dropdown-Liste ich die Beschriftung bin mit, und unique level.ordinal MethodeMDX (SSRS) Parametersatz

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]; 

diese nicht zurück, was nach

ich bin

enter image description here

ich eine Liste der Standorte sollte nur gezeigt, wo sie mit einem type = Materie gekreuzt werden und hat ein Haus ich rechnen, wenn ich den Code entweder bekommen alle Lage zwicken oder was ist Show-Tabelle der Wert von

Antwort

1

Möglicherweise müssen [Country].[Location] in einen Kontext bewegen und geben Sie in eine WHERE Klausel?

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

Sie mit einem Haus, das Sie auch zum Filtern von Zeilen müssen zählen? Vielleicht ändern Sie die ON ROWS-Klausel in 'NonEmpty ([Land]. [Ort]. [Ort] .MEMBERS, [Maßnahmen]. [HouseCount]) ON ROWS und sehen, ob das tut es – GregGalloway

+0

Dank @GregGalloway Ich vermisste dieses Bit von ihre Bitte – whytheq

0

Sie Sie haben keine Filterung in Ihrer Abfrage, wie sie gerade geschrieben wird. Um zu erreichen, was Sie angeben (geben Sie nur zurück, wo Typematter ist), dann wählen Sie einfach nur diesen Typ auf den 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

Hallo Jungs, weil [Measures]. [ParameterCaption] ausgewählt ist sogar mit Wo Aussage es gibt alle Standorte nicht nur diejenigen, wo die Art Materie – user2181700