Forum Discussion

sharrold's avatar
sharrold
Frequent Visitor
6 years ago
Solved

How to parameterize a column for aggregation

I have users who would like to be able to modify what columns a table aggregates by. My issue is that I seem unable to do this in Power BI. I basically want to be able to do the following in SQL: SE...
  • v-kelly-msft's avatar
    v-kelly-msft
    6 years ago

    Hi sharrold

     

    Measure should be corrected as below:

    Result = 
    SWITCH (
        SELECTEDVALUE ( 'Level 1 Table'[LevelName] ),
        "Department", SWITCH (
            SELECTEDVALUE ( 'Level 2 Table'[LevelName] ),
            "Department", CALCULATE (
                SUM ( 'Data'[Revenue] ),
                FILTER (
                    'Data',
                    [Department] IN FILTERS ( 'Level 1 Table'[LevelValue] )
                        && [Department] IN FILTERS ( 'Level 2 Table'[LevelValue] )
                )
            ),
            "Product", CALCULATE (
                SUM ( 'Data'[Revenue] ),
                FILTER (
                    'Data',
                    [Department] IN FILTERS ( 'Level 1 Table'[LevelValue] )
                        && [Product] IN FILTERS ( 'Level 2 Table'[LevelValue] )
                )
            ),
            CALCULATE (
                SUM ( 'Data'[Revenue] ),
                FILTER ( 'Data', [Department] IN FILTERS ( 'Level 1 Table'[LevelValue] ) )
            )
        ),
        "Product", SWITCH (
            SELECTEDVALUE ( 'Level 2 Table'[LevelName] ),
            "Department", CALCULATE (
                SUM ( 'Data'[Revenue] ),
                FILTER (
                    'Data',
                    [Product] IN FILTERS ( 'Level 1 Table'[LevelValue] )
                        && [Department] IN FILTERS ( 'Level 2 Table'[LevelValue] )
                )
            ),
            "Product", CALCULATE (
                SUM ( 'Data'[Revenue] ),
                FILTER (
                    'Data',
                    [Product] IN FILTERS ( 'Level 1 Table'[LevelValue] )
                        && [Product] IN FILTERS ( 'Level 2 Table'[LevelValue] )
                )
            ),
            CALCULATE (
                SUM ( 'Data'[Revenue] ),
                FILTER ( 'Data', [Product] IN FILTERS ( 'Level 1 Table'[LevelValue] ) )
            )
        ),
        SWITCH (
            SELECTEDVALUE ( 'Level 2 Table'[LevelName] ),
            "Department", CALCULATE (
                SUM ( 'Data'[Revenue] ),
                FILTER ( 'Data', [Department] IN FILTERS ( 'Level 2 Table'[LevelValue] ) )
            ),
            "Product", CALCULATE (
                SUM ( 'Data'[Revenue] ),
                FILTER ( 'Data', [Product] IN FILTERS ( 'Level 2 Table'[LevelValue] ) )
            ),
            SUM ( 'Data'[Revenue] )
        )
    )

     

    Finally you will see:

     

     

    For the related .pbix file, pls click here.

     

    Best Regards,

    Kelly