The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
I am trying to create a hierarchical tree using the PATH function based on the article https://www.daxpatterns.com/parent-child-hierarchies/.
My table (imported from DB) has the typical OBJECT and PARENT columns, however at the root level, the PARENT has a value referring to another table and is thus not blank. When i try to build the hierarchy column using
= PATH ( [OBJECT], [PARENT] )
i get the error (freely translated): Value 'XXXXXX' in Table[PARENT] must also exist in Table[OBJECT]. Add the missing data and try again.
I am able to identify the roots by a logical condition (say [PARENT] = [OTHER_COLUMN]). I have tried to encapsulate the PATH call in an IF() clause, like
= IF ( [PARENT] <> [OTHER_COLUMN], PATH([OBJECT],[PATH]) )
but i still get the same error. Any ideas how to handle this? Any help is appreciated.
Solved! Go to Solution.
I found a workaround in this post: https://powerpivotpro.com/2017/12/imagine-people-tables/
This created a new parent column with root-nodes referring to itself as parent, which allows the PATH() function to do it's work.
NewParent = IF( COUNTROWS( FILTER( TABLE, TABLE[OBJECT] = EARLIER(TABLE[PARENT]) ) ) = 0, TABLE[OBJECT], TABLE[PARENT] )
I found a workaround in this post: https://powerpivotpro.com/2017/12/imagine-people-tables/
This created a new parent column with root-nodes referring to itself as parent, which allows the PATH() function to do it's work.
NewParent = IF( COUNTROWS( FILTER( TABLE, TABLE[OBJECT] = EARLIER(TABLE[PARENT]) ) ) = 0, TABLE[OBJECT], TABLE[PARENT] )