Forum Discussion

mvgust's avatar
mvgust
Helper III
4 years ago
Solved

Conditional Fill Down

I'm working with a WBS structure that does not have parent entity/child entity columns. I still need to break down the WBS structure by Levels (00.00=Level 2, 00.00.00=Level 3, 00.00.00.00=Level 4) WITH it's title. I've gotten as far as the below table. 

Now, I need to fill down the values in each Level - 1,2,3,4,5 BUT where this breaks down is the record that null is the aqua color in Level 3. The value above 000.01.01 - Analytical Services by Company - shouldn't be in that record with the aqua color that should remain empty because you can see in the record to the left, it's an entirely different WBS structure. You'll see that as you move along deeper into the WBS structure, this becomes a re-occurring problem. 

I've looked up multiple videos on conditional fill down and nothing seems to fit this scenario, or at least I can't get it to work. 

 

Any help would be appreciated. 

WBS TitleWBS - CopyLevel 1Level 2Level 3Level 4Level 5
000 - Example Services000000 - Example Servicesnullnullnullnull
000.01 - Analytical Services000.01null000.01 - Analytical Servicesnullnullnull
000.01.01 -Analytical Services by Company000.01.01nullnull000.01.01 - Analytical Services by Companynullnull
000.01.01.01 - Base Operations000.01.01.01nullnullnull000.01.01.01 - Base Operationsnull
000.01.01.01.01 - Compliant Operations000.01.01.01.01nullnullnullnull000.01.01.01.01 - Compliant Operations
000.01.01.01.02 - Reliability000.01.01.01.02nullnullnullnull000.01.01.01.02 - Reliability
000.01.01.01.03 -  Sample Analysis000.01.01.01.03nullnullnullnull000.01.01.01.03 - Sample Analysis
000.01.01.01.04 - Analytical Support000.01.01.01.04nullnullnullnull000.01.01.01.04 - Analytical Support
000.01.01.01.05 - Laboratory Engineering000.01.01.01.05nullnullnullnull000.01.01.01.05 - Laboratory Engineering
000.01.01.01.06 - Laboratory Maintenance000.01.01.01.06nullnullnullnull000.01.01.01.06 - Laboratory Maintenance
000.01.01.03 - Transition000.01.01.03nullnullnull000.01.01.03 - Transitionnull
000.01.01.03.01 - Compliant Operations000.01.01.03.01nullnullnullnull000.01.01.03.01 - Compliant Operations
000.01.01.03.02 - Reliability000.01.01.03.02nullnullnullnull000.01.01.03.02 - Reliability
000.01.01.03.04 -  Analytical Support000.01.01.03.04nullnullnullnull000.01.01.03.04 -  Analytical Support
000.01.01.03.05 -Lab Engineering000.01.01.03.05nullnullnullnull000.01.01.03.05 -Lab Engineering
000.02 - External Review000.02null000.02 - Review and Supportnullnullnull
000.02.01 - External Review and Support A000.02.01nullnull000.02.01 - External Review and Support Anullnull
000.02.01.01 - External Review and Support B000.02.01.01nullnullnull000.02.01.01 -External Review and Support Bnull
000.02.01.01.01 - External Review and Support ABCD000.02.01.01.01nullnullnullnull000.02.01.01.01 - External Review and Support ABCD
000.03 - Training 000.03null000.03 - Trainingnullnullnull
000.03.01 - Training & Review000.03.01nullnull000.03.01 - Training & Reviewnullnull
000.03.01.01 - Training  A000.03.01.01nullnullnull000.03.01.01 - Training  Anull
000.03.01.01.01 - Training Delivery000.03.01.01.01nullnullnullnull000.03.01.01.01 - Training Delivery
000.03.01.01.02 - Course Development000.03.01.01.02nullnullnullnull000.03.01.01.02 - Course Development
  • Thank you for your suggestion, however fill down doesn't work as it would associate a record of 000.01.01 to 000.02 in the Level 3 column. I figured out a solution, although it does require more steps and feels like more of a hack than anything else but it works. I added a custom column with the below formula:

    let level3num = Text.BeforeDelimiter([Level 3],".",1),
    level2num = Text.BeforeDelimiter([Level 2]," "),
    compare = if Value.Compare(level3num,level2num)=0 then [Level 3] else null

    in compare


    I then created the heirarchy.

2 Replies

  • Thank you for your suggestion, however fill down doesn't work as it would associate a record of 000.01.01 to 000.02 in the Level 3 column. I figured out a solution, although it does require more steps and feels like more of a hack than anything else but it works. I added a custom column with the below formula:

    let level3num = Text.BeforeDelimiter([Level 3],".",1),
    level2num = Text.BeforeDelimiter([Level 2]," "),
    compare = if Value.Compare(level3num,level2num)=0 then [Level 3] else null

    in compare


    I then created the heirarchy.