Forum Discussion

SamChan's avatar
SamChan
Regular Visitor
2 years ago
Solved

Comparing the Last Level in a Hierarchy with Values from Above Levels

Hey PowerBI Community,   Over the past few days I've been grappling with a problem that's got me stumped. I'm hoping you can lend a hand.   Table: My dataset has 7 columns and 4 levels: Colum...
  • Anonymous's avatar
    Anonymous
    2 years ago

    Hi SamChan ,

    Depending on the information you have provided, you can follow these steps below:

    1.Add new table with out relationship.

    Table 2 = DISTINCT('Table'[Class])

    2.Add new measures.

    Flag = 
    VAR _selectedtable =
        ALLSELECTED ( 'Table 2'[Class] )
    VAR _classtable =
        CALCULATETABLE ( VALUES ( 'Table'[Class] ), 'Table'[Class] IN _selectedtable )
    VAR _leveltable =
        CALCULATETABLE ( VALUES ( 'Table'[Level] ), 'Table'[Class] IN _selectedtable )
    VAR _schooltable =
        CALCULATETABLE ( VALUES ( 'Table'[School] ), 'Table'[Class] IN _selectedtable )
    VAR _regiontable =
        CALCULATETABLE ( VALUES ( 'Table'[Region] ), 'Table'[Class] IN _selectedtable )
    VAR _class =
        SELECTEDVALUE ( 'Table'[Class] )
    VAR _level =
        SELECTEDVALUE ( 'Table'[Level] )
    VAR _school =
        SELECTEDVALUE ( 'Table'[School] )
    VAR _region =
        SELECTEDVALUE ( 'Table'[Region] )
    RETURN
        IF (
            _class
                IN _classtable
                    && ( _level
                    IN _leveltable
                        || _school
                        IN _schooltable
                            || _region IN _regiontable ),
            1
        )
    
    Result = 
    VAR __level1 =
        ISINSCOPE ( 'Table'[Class] )
    VAR __level2 =
        ISINSCOPE ( 'Table'[Level] )
    VAR __level3 =
        ISINSCOPE ( 'Table'[School] )
    VAR __level4 =
        ISINSCOPE ( 'Table'[Region] )
    VAR __level1_code = [TotalStudents]
    VAR __level2_code =
        CALCULATE ( [TotalStudents], ALL ( 'Table'[Class], 'Table'[Year] ) )
    VAR __level3_code =
        CALCULATE (
            [TotalStudents],
            ALL ( 'Table'[Class], 'Table'[Level], 'Table'[Year] )
        )
    VAR __level4_code =
        CALCULATE (
            [TotalStudents],
            ALL ( 'Table'[Class], 'Table'[Level], 'Table'[School], 'Table'[Year] )
        )
    VAR __result =
        SWITCH (
            TRUE (),
            __level1, __level1_code,
            __level2, __level2_code,
            __level3, __level3_code,
            __level4, __level4_code
        )
    RETURN
        __result
    

    Final output:

    How to Get Your Question Answered Quickly - Microsoft Fabric Community

    If it does not help, please provide more details with your desired out put and pbix file without privacy information.

     

    Best Regards,

    Ada Wang

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.