I have an MDX query written. It is working without any error on SSMS, but when I create a dataset using the same query in SSRS, I get the below error:
The query cannot be prepared: The query must have at least one axis. The first axis of the query should not have multiple hierarchies, nor should it reference any dimension other than the Measures dimension..
Parameter name: mdx (MDXQueryGenerator)
The query that I have written is:
WITH
MEMBER [Measures].[AT] AS
IIF(( [Measures].[Dato] = "AT"),"AT",NULL)
MEMBER [Measures].[N. Aziende] AS
IIF(( ( [Mercato].[Mercato].CurrentMember.Properties("NAME") = "Azienda") OR ( [Measures].[N Aziende] = "AT")), NULL, [Measures].[N Aziende])
MEMBER [Measures].[Dato AT] AS
IIF(( [Measures].[Dato] = "AT"), NULL, [Measures].[Dato])
MEMBER [Measures].[Rank] AS
IIF(( ( [Mercato].[Mercato].CurrentMember.Properties("NAME") = "Totale Mercato") OR ( [Measures].[N Aziende] = "AT")), NULL, [Measures].[Posizione])
MEMBER [Measures].[Evol %] AS
IIF(( [Measures].[Dato] = "AT"), NULL, [Measures].[Evol %])
MEMBER [Measures].[Quota %] AS
IIF(( ( [Mercato].[Mercato].CurrentMember.Properties("NAME") = "Totale Mercato") OR ( [Measures].[N Aziende] = "AT")), NULL, [Measures].[Quota])
MEMBER [Measures].[Peso %] AS
IIF(( ( [Measures].[N Aziende] = "AT") OR ( [TipoAnno].[Tipo Anno].CurrentMember.Properties("NAME") = "Anno Precedente")), NULL, [Measures].[Dato AT]/([Canali].[Descrizione Canale].[TOTALE],[Measures].[Dato AT]))
MEMBER [Measures].[Pos %] AS
IIF(( ( ( [Mercato].[Mercato].CurrentMember.Properties("NAME") = "Totale Mercato") OR ( [Measures].[N Aziende] = "AT")) OR ( [TipoAnno].[Tipo Anno].CurrentMember.Properties("NAME") = "Anno Precedente")), NULL, [Measures].[Posizione %])
MEMBER [Measures].[Pos. Ent.] AS
IIF(( ( ( [Mercato].[Mercato].CurrentMember.Properties("NAME") = "Totale Mercato") OR ( [Measures].[N Aziende] = "AT")) OR ( [TipoAnno].[Tipo Anno].CurrentMember.Properties("NAME") = "Anno Precedente")), NULL, [Measures].[Posizione assoluta])
SELECT {
[Measures].[Dato],
[Measures].[AT],
[Measures].[N. Aziende],
[Measures].[Dato AT],
[Measures].[Rank],
[Measures].[Evol %],
[Measures].[Quota %],
[Measures].[Peso %],
[Measures].[Pos %],
[Measures].[Pos. Ent.]
} ON COLUMNS,
EXCEPT(
[Canali].[Descrizione Canale].[Descrizione Canale].MEMBERS,
{[Canali].[Descrizione Canale].&[00]}) ON ROWS
FROM ( SELECT ( {[Tempo].[Periodo].[Mese Anno].&[2012]&[12],
[Tempo].[Periodo].[Mese Anno].&[2013]&[12],
[Tempo].[Periodo].[Mese Anno].&[2014]&[12],
[Tempo].[Periodo].[Mese Anno].&[2015]&[12]}) ON COLUMNS
FROM ( SELECT ( [GeografiaAgro].[Descrizione Regione ISTAT].&[01]) ON COLUMNS
FROM [AGRO]))
WHERE
(
[TipoMisura].[Tipo Misura].&[1],
[TipoPeriodo].[Tipo Periodo].&[2],
[Mercato].[Mercato].&[1],
[Aziende].[Descrizione Codice Azienda].&[100 - BASF]
);
I am not able find what is the issue, what changes do I need to bring to the above so that I will work in creating SSRS dataset.