Forum Discussion

moizsherwani's avatar
moizsherwani
Icon for Continued Contributor rankContinued Contributor
7 years ago
Solved

Parent-Child Hierarchy - Highest Parent (using Power Query not DAX)

Hello PBI Forum,   So my issue is as follow, I have a parent child relationship as given below and I need (within Power Query and not DAX) a way to find out the highest parent of any child   Team...
  • LivioLanzo's avatar
    LivioLanzo
    7 years ago

    you just need to change the data types then like this: 

     

    let
        Source = Excel.CurrentWorkbook(){[Name="Hierarchy"]}[Content],
    
        ChangedType = Table.TransformColumnTypes(Source,{{"Team ID", type text}, {"Parent ID", type text}}),
    
        ListTeamID = List.Buffer( ChangedType[Team ID] ),
        ListParentID = List.Buffer( ChangedType[Parent ID] ),
    
    
        fnGetHighestParent =  (n as text) as text =>
            let
                PosOfParent = List.PositionOf( ListTeamID, n ),
                ParID = ListParentID{PosOfParent}
             in
                if ParID = null then ListTeamID{PosOfParent} else @fnGetHighestParent(ListParentID{PosOfParent}),
    
    
        FinalTable = Table.AddColumn( ChangedType, 
                                      "HighestParent", 
                                      each  fnGetHighestParent( [Team ID] ), 
                                       type text)
        
    in
       FinalTable