Domanda

Se ho una semplice query MDX come:

 SELECT 
 NON EMPTY { [Measures].[Amount] } ON COLUMNS, 
 NON EMPTY {  [Date].[Date].[Date]  } 
 ON ROWS FROM [MyCube] 

E voglio filtrarlo per un ID in un'altra dimensione, questo è abbastanza facile.

 SELECT 
 NON EMPTY { [Measures].[Amount] } ON COLUMNS, 
 NON EMPTY {  [Date].[Date].[Date]  } 
 ON ROWS FROM [MyCube] 
WHERE (Asset].[Id].&[123])

ma se ho più ID c'è un modo per passarli senza creare dinamicamente la query MDX?

È stato utile?

Soluzione

Non sono sicuro al 100% di cosa tu voglia dire di non creare dinamicamente la query MDX, ma la forma della query che desideri è questa:

SELECT
    NON EMPTY { [Measures].[Amount] } ON COLUMNS,
    NON EMPTY { [Date].[Date].[Date] } ON ROWS
FROM [MyCube]
WHERE (
    [Asset].[Id].&[123],
    [OtherDim].[Foo].&[3919]
)

... quindi suppongo che avrebbe bisogno di un edificio dinamico, ma niente di troppo stressante.

Altri suggerimenti

Prova questo:

SELECT
    NON EMPTY { [Measures].[Amount] } ON COLUMNS,
    NON EMPTY { [Date].[Date].[Date] } ON ROWS
FROM [MyCube]
WHERE (
   { [Asset].[Id].&[123],[Asset].[Id].&[124]}
)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top