Query - MDX

  • Hi,

    I am doing a report using MDX. I have a query, but this query return null values because I use CROSSJOIN. I tried to filter this null values, but I don`t know to do this.

    Query that I did:

    WITH

    SET FILTROS AS STRTOSET(@PERMISSOES)

    SET PERIODO2008 AS '{[TEMPO].[MÊS].&[200801]:[TEMPO].[MÊS].&[200812]}'

    SET PERIODO2009 AS '{[TEMPO].[MÊS].&[200901]:[TEMPO].[MÊS].&[200912]}'

    --Computadores e Periféricos

    MEMBER [Measures].[Computadores e Periféricos sem Impostos F] AS 'SUM(FILTROS,[Measures].[Computadores e Periféricos sem Impostos])',FORMAT='#,#.00'

    --Direito Uso Sistema

    MEMBER [Measures].[Direito Uso Sistema sem Impostos F] AS 'SUM(FILTROS,[Measures].[Direito Uso Sistema sem Impostos])',FORMAT='#,#.00'

    --Imóveis

    MEMBER [Measures].[Imóveis sem Impostos F] AS 'SUM(FILTROS,[Measures].[Imóveis sem Impostos])',FORMAT='#,#.00'

    --Instalações

    MEMBER [Measures].[Instalações sem Impostos F] AS 'SUM(FILTROS,[Measures].[Instalações sem Impostos])',FORMAT='#,#.00'

    --Máquinas e Equipamentos

    MEMBER [Measures].[Máquinas e Equipamentos sem Impostos F] AS 'SUM(FILTROS,[Measures].[Máquinas e Equipamentos sem Impostos])',FORMAT='#,#.00'

    --Marcas e Patentes

    MEMBER [Measures].[Marcas e Patentes sem Impostos F] AS 'SUM(FILTROS,[Measures].[Marcas e Patentes sem Impostos])',FORMAT='#,#.00'

    --Móveis e Utensílios

    MEMBER [Measures].[Móveis e Utensílios sem Impostos F] AS 'SUM(FILTROS,[Measures].[Móveis e Utensílios sem Impostos])',FORMAT='#,#.00'

    --Veículos

    MEMBER [Measures].[Veículos sem Impostos F] AS 'SUM(FILTROS,[Measures].[Veículos sem Impostos])',FORMAT='#,#.00'

    SELECT

    NONEMPTYCROSSJOIN(PERIODO2009,[CFI].[Hierarchy].[ID_CFI]) ON ROWS,

    {[Measures].[Computadores e Periféricos sem Impostos F],[Measures].[Direito Uso Sistema sem Impostos F],[Measures].[Imóveis sem Impostos F],[Measures].[Instalações sem Impostos F],[Measures].[Máquinas e Equipamentos sem Impostos F],[Measures].[Marcas e Patentes sem Impostos F],[Measures].[Móveis e Utensílios sem Impostos F],[Measures].[Veículos sem Impostos F]} ON COLUMNS

    FROM [Investimento]

    Anybody know how can I filter the null values?

    Thanks,

    Marcelo.

  • u can create member flag which will give u values as true or false

    for example:

    with Member [Measures].[Status]as'[Measures].[ABC]>0'

    and thn call this member is select

    SELECT {[Measures].[Status],.......

    and finally go to edit dataset and thn filter Tab, write the expresision as

    =Cstr(Fields!Status.Value) = True....

    this might help u...

    Regards,

    Ravi

  • thanks Ravi, but I can't to do this because the query return only values differents of 0.

    I used another form:

    WITH

    SET FILTROS AS STRTOSET(@PERMISSOES)

    SET PERIODO2008 AS '{[TEMPO].[MÊS].&[200801]:[TEMPO].[MÊS].&[200812]}'

    SET PERIODO2009 AS '{[TEMPO].[MÊS].&[200901]:[TEMPO].[MÊS].&[200912]}'

    --Computadores e Periféricos

    MEMBER [Measures].[Computadores e Periféricos sem Impostos F] AS 'SUM(FILTROS,[Measures].[Computadores e Periféricos sem Impostos])',FORMAT='#,#.00'

    --Direito Uso Sistema

    MEMBER [Measures].[Direito Uso Sistema sem Impostos F] AS 'SUM(FILTROS,[Measures].[Direito Uso Sistema sem Impostos])',FORMAT='#,#.00'

    --Imóveis

    MEMBER [Measures].[Imóveis sem Impostos F] AS 'SUM(FILTROS,[Measures].[Imóveis sem Impostos])',FORMAT='#,#.00'

    --Instalações

    MEMBER [Measures].[Instalações sem Impostos F] AS 'SUM(FILTROS,[Measures].[Instalações sem Impostos])',FORMAT='#,#.00'

    --Máquinas e Equipamentos

    MEMBER [Measures].[Máquinas e Equipamentos sem Impostos F] AS 'SUM(FILTROS,[Measures].[Máquinas e Equipamentos sem Impostos])',FORMAT='#,#.00'

    --Marcas e Patentes

    MEMBER [Measures].[Marcas e Patentes sem Impostos F] AS 'SUM(FILTROS,[Measures].[Marcas e Patentes sem Impostos])',FORMAT='#,#.00'

    --Móveis e Utensílios

    MEMBER [Measures].[Móveis e Utensílios sem Impostos F] AS 'SUM(FILTROS,[Measures].[Móveis e Utensílios sem Impostos])',FORMAT='#,#.00'

    --Veículos

    MEMBER [Measures].[Veículos sem Impostos F] AS 'SUM(FILTROS,[Measures].[Veículos sem Impostos])',FORMAT='#,#.00'

    SET [Variables] AS {[Measures].[Computadores e Periféricos sem Impostos F],[Measures].[Direito Uso Sistema sem Impostos F],[Measures].[Imóveis sem Impostos F],[Measures].[Instalações sem Impostos F],[Measures].[Máquinas e Equipamentos sem Impostos F],[Measures].[Marcas e Patentes sem Impostos F],[Measures].[Móveis e Utensílios sem Impostos F],[Measures].[Veículos sem Impostos F]}

    MEMBER [Measures].[All counts not null] AS

    iif( Count( [Variables], INCLUDEEMPTY ) =

    Count( [Variables], EXCLUDEEMPTY ), 1, null)

    SELECT

    NONEMPTYCROSSJOIN(PERIODO2009,[CFI].[Hierarchy].[ID_CFI]) ON ROWS,

    NON EMPTY({[Variables],[Measures].[All counts not null]}) ON COLUMNS

    FROM [Investimento]

    Thanks again.

    Marcelo.

Viewing 3 posts - 1 through 2 (of 2 total)

You must be logged in to reply to this topic. Login to reply