Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago
Solved

adding new column from SSAS model

Hello all,

I have a Power BI report which is getting data from one SSAS module. SSAS module is connected via 'Import' option.

Now I need to create new visuals that require new columns to be added to this SSAS model. After adding the required columns from this model, when I apply changes, it fetches all the rows and it is taking a lot of time. (There are quite many rows). Getting error as increase memory of the server where SSAS is deployed.

Is there any option to limit these rows or  any way to add required columns, make  visuals, Publish and then refresh the report after deploying.

Please guide.

  • This is because the SSAS data import feature can generate inefficient MDX when importing. A workaround is to write your own custom query, preferably using DAX.

     

    Once you do this, I promise you'll never go back 🙂

     

    Here's an example query you can tweak:

    DEFINE
        VAR vFilter1 =
            FILTER ( ALL ( DimProduct[Color] ), [Color] IN { "Red""Blue" } )
        VAR vFilter2 =
            FILTER (
                ALL ( DimGeography[CountryRegionName] ),
                [CountryRegionName] = "United States"
            )
    EVALUATE
    SUMMARIZECOLUMNS (
        DimProduct[Color],
        DimProduct[Size],
        DimDate[CalendarYear],
        vFilter1,
        vFilter2,
        "Total Sales"SUM ( FactInternetSales[Sales Amount] ),
        "Distinct Customers"DISTINCTCOUNT ( FactInternetSales[CustomerKey] )
    )

2 Replies

  • smearp's avatar
    smearp
    Microsoft Employee

    This is because the SSAS data import feature can generate inefficient MDX when importing. A workaround is to write your own custom query, preferably using DAX.

     

    Once you do this, I promise you'll never go back 🙂

     

    Here's an example query you can tweak:

    DEFINE
        VAR vFilter1 =
            FILTER ( ALL ( DimProduct[Color] ), [Color] IN { "Red""Blue" } )
        VAR vFilter2 =
            FILTER (
                ALL ( DimGeography[CountryRegionName] ),
                [CountryRegionName] = "United States"
            )
    EVALUATE
    SUMMARIZECOLUMNS (
        DimProduct[Color],
        DimProduct[Size],
        DimDate[CalendarYear],
        vFilter1,
        vFilter2,
        "Total Sales"SUM ( FactInternetSales[Sales Amount] ),
        "Distinct Customers"DISTINCTCOUNT ( FactInternetSales[CustomerKey] )
    )

  • Greg_Deckler's avatar
    Greg_Deckler
    Community Champion
    So, yes, you can filter the rows coming from the SSAS source in the Power Query editor.