Sunday, 2 July 2017

P6 Multilevel Activity Codes Tips

Primavera P6 allows us to nest activity code values into sub-levels but while there might be reasons to want to use P6 activity codes nesting feature, I'm not a fan as nesting introduces WBS type rigidity to activity codes. In this post, I'll outline how I achieve multilevel activity code grouping without nesting.

To illustrate the problem with nesting activity codes, let's assume we want to group activities in a schedule by Locations and Managers responsible for each activity in a location as shown below.

  1. North Area: Manager #1 & Manager #2
  2. South Area: Manager #3 & Manager #1
  3. East Area: Manager #2 & Manager #3
  4. West Area: Manager #1 & Manager #2

The nested activity code values for the Locations and Managers above will be as shown in the figure below.

You will notice that the nested activity code values above is very rigid as anytime a Manager is reassigned to activities in a different Location, we will need to modify the activity code structure to accommodate this change. Imagine if you have 40 to 50 activity code values, it will no doubt be so frustrating to always have to modify the nested structure when there is a change in activity code value assignment.

Is Multilevel Grouping of Activities Possible Without Nesting?

Activity codes are all about flexibility to me, so to achieve multilevel grouping of activities, I create an activity code for each level. Still using our Locations and Managers example above, we will have 2 activity codes, one for Locations and another for Managers as shown in figure below.

What having these 2 codes allows us to do is to group activities either by Locations > Managers

or by Managers > Locations.

As you can see, defining an activity code for every level of grouping you want offers great flexibility that nesting of activity codes would not.

No <Activity Code> issue with Multilevel Grouping

With multilevel activity codes grouping, all activities must be assigned a code value from all levels of activity codes else the schedule will show No <nnn>, where nnn is an activity code, for activities not assigned the nnn activity code as highlighted in the figure below for activities not assigned the Location activity code.

There are 2 ways I use to resolve the No <Activity Code> issue.

  1. Filters: One way to resolve this issue is to apply a Filter that displays only the activities with the defined activity code values and this Filter will exclude those activities without the defined activity code value. But if you also want to show activities in the schedule without an activity code value then use the Blank code value option
  2. Blank Code Value: This involves adding a code value with a blank description as shown in figure below for the Location activity code value B (red rectangle).
    When this blank code value is assigned to activities without a Location code value, our layout will no longer display the No Location heading but instead will be blank as shown in figure below which is more presentable.

That is all for today and as always, if you have any questions, please leave a comment below or send me a message using the contact form. Thanks for your time.

1 comment: