Reporting with Gantt View Task Rollups (Part 3) – Using Group By Options

I figured I’d clean out my old queue of blog posts that I’d written but never published.  This particular post was half written when 2010 came out, and was sidelined while I soaked up all of the new product goodness.  I then borrowed parts of it for an MVP blog post and never got around to fixing it up.  Since I have a couple upcoming “Tips and Tricks” presentations coming up, I figured it was probably time to resurrect it.

This is Part Three in an ongoing series on rolling up the schedule to generate a single, 1 page report.  In this post, we’ll talk about roll up options with the Group By Summary feature.

The Group functionality is a powerful reporting tool which can be used when I desire to report on elements of my schedule that may not map precisely to elements in my WBS.  As an example, let’s say that I have developed my schedule based on a product-oriented WBS, but I wish to report on the progress of each phase.  I would then create a custom flag field to identify which phase specific tasks are in, and then Group By that field to develop an overall phase view.  Likewise, if I developed my original WBS as a phase-oriented approach (which I almost never would recommend), and want to map the schedule elements to specific products, I would employ a custom text field and the Group functionality.

Note that from my perspective, the schedule should always be structured to support your primary reporting needs – and coded to support any secondary reporting needs.

The Group By Summary feature is significantly more limited in functionality than the simple Roll Up field.  By default, only the Task bars can be summarized using the Group By Summary field.  If I want to roll up other key schedule components, like say Critical Path or baseline data, the Group By Summary will not roll up that data.

Luckily, there’s an obscure (but easy) workaround to that issue.  In the last several posts, I talked about how I never really like to check the options in the Layout screen to force a roll up of all tasks.  My preference is to selectively roll up items using the built in Roll Up field.  In this particular case, when I am rolling up data using the Grouping functionality – and I want to roll up baseline and Critical Path information, I would recommend turning those options on.

Here’s what the Format > Layout options look like by default:

image

And here’s what they should look like when rolling up schedule data to the Summary bars using the Group functionality.

image

So let’s see how those options affect the following schedule.

image 

You’ll see that I have assigned the tasks to two resources, Lkhagva and Dorj – both names that fall under the category of having been summarily rejected by my wife the last time we were in the market for baby names.  (Apparently the fact that they’re gender neutral was not a selling point).

Let’s take a look at how the rollup appears with those options off.

image

And now with those options on:

image

You’ll see in the above example that I have rolled up the Critical Path and the baseline data.  Typically, my clients may also ask for a rollup of the progress line as well.  You’ll note that in the second example, it’s relatively easy to eyeball the schedule to identify the critical path – and to identify which resources are on the critical path at any specific time.

The unfortunate byproduct of toggling on this feature is that now, everything is rolled up to the top level.  This may be ok for some users, but I usually feel the view is too cluttered, and wish to reduce the amount of clutter.  We can’t use the Roll Up field to remove items from the summary bars, as we have just overridden the use of that field.  You’ll see that if you toggle that field to No, the item does not get removed from the Rolled Up view.

In this case, I have found it helpful to create a new custom flag field to serve the same function – basically a Roll Up field for Grouped projects.   So I add a custom flag field to the project.  For this purpose, I will be using the Flag1 field.

image

Once adding that to my view, I go through the Bar Styles to add the Flag1 field as criteria for displaying.

image

Which now enables me to toggle the elements for display using the Flag1 field.  In the following example, I have toggled off everything but the Critical Path activities.

image

Reporting with Gantt View Task Rollups (Part 3) – Using Group By Options

Reporting with Gantt View Task Rollups (Part 2) – Milestone Reporting

I figured I’d clean out my old queue of blog posts that I’d written but never published.  This particular post was half written when 2010 came out, and was sidelined while I soaked up all of the new product goodness.  I then borrowed parts of it for an MVP blog post and never got around to fixing it up.  Since I have a couple upcoming “Tips and Tricks” presentations coming up, I figured it was probably time to resurrect it.

Continuing on in our series on rolling up project data to a single page summary, this post talks about how to roll milestones up to a single summary view.  Note that the Rollup component of this discussion may not be as relevant to the Project 2010 users – as they have access to the Timeline view, which pretty much serves the same purpose.  That’s not to say that the instructions below will not apply to Project 2010, only that there’s an easier way to accomplish the same thing. 

For a look at how to roll up Gantt Bars, take a look at yesterday’s post.

Rolling Milestones Up

Three elements are required to manage the data rollup feature:

1) Format > Layout > Uncheck the first two options.  We’ll talk about how to use this feature in a future post.  For now, I generally recommend turning it off, as it negates the ability to toggle rollups on or off using the default Rollup field.

image

2) Summary Task Level Rollup Field – Setting this to No will turn off all rollup functionality for this specific summary task.  This should be turned on for any summary task intended to be displayed as a rollup task in the Gantt Chart.

image

3) Task Level Rollup Field – Setting this field to Yes will rollup the task to any summary task that also has the Rollup field set to Yes.  If the summary task has Rollup set to No,  this field will not have any impact.

image

For a better description (with screen shots) of the impact of these fields, please refer back to the last post on rolling up Gantt bars.

In the following example, we have a simple project schedule.  I have a number of tasks and a number of key milestones.

image

My goal is to surface the milestones all on a single line.  To do this, I expose the built-in Rollup field, and toggle the summary task and the target milestones to yes.  This selectively rolls up the project milestones.

 image

When collapsing the summary bar, I get a view like this.  Note that one of the major challenges with attempting this approach prior to 2010 is that the text labels often run all over each other.  Additionally, the summary bar somewhat obscures our view of the project. 

image

Both issues are easy to fix.  To correct the text placement, I have two options.  I can opt to create a custom flag field, and tie it to a specific line in the Bar Styles dialog box, thus allowing me to toggle text position through the use of a custom field – or if it’s just a one-off formatting change, I can simply doubleclick on the milestone in question and modify the text placement.  Generally my preference is to use custom fields, as that allows programmatic changes of formatting in the future.  By clicking on the item and changing it, we’re creating a new, separate style just for that one item, which we may not want in the future.  Note that you can also use custom fields to toggle the milestone into a second row to avoid overcrowding the main swimlane.

In this case, however, to keep things simple, we’ll just click on the Project Started milestone, select the Bar Text tab, and move the name from the top to the bottom.

image

Now to remove the Summary bar.

image

Doubleclick on the Gantt Chart to get the Bar Styles dialog box.  Add the “Not Rolled Up” criteria to the Summary bar.

image

And the results are as follows.

image

So why use this instead of the Timeline View in 2010?  In 2010, the Timeline View doesn’t display baseline or progress.  You can’t control which text fields are connected to the milestone in the Timeline View.  With this setup, all of those custom elements may be displayed, yielding a much richer experience.

Reporting with Gantt View Task Rollups (Part 2) – Milestone Reporting

Reporting With Gantt View Task Rollups (Part 1) – Rolling Up Gantt Bar Charts

I figured I’d clean out my old queue of blog posts that I’d written but never published. This particular post was half written when 2010 came out, and was sidelined while I soaked up all of the new product goodness. I then borrowed parts of it for an MVP blog post and never got around to fixing it up. Since I have a couple upcoming “Tips and Tricks” presentations coming up, I figured it was probably time to resurrect it.

Hence, this post marks the beginning of a multipart series on developing rollup views within the Microsoft Project desktop client. Note that the screenshots are mostly from the 2007 version, but that everything should apply pretty much the same to 2010. I guess at this point, that may engender some points purely for nostalgia.

***

This post focuses on using built-in functionality that a lot of people are not familiar with. In this case, our goal is to generate a simple, 1 page report of an active project using Microsoft Project’s Rollup and Group features. Note that the Rollup component of this discussion may not be as relevant to the Project 2010 users – as they have access to the Timeline view, which pretty much serves the same purpose (albeit with some limitations). That’s not to say that the instructions below will not apply to Project 2010, only that there’s an easier way to accomplish the same thing. The Group section of this post is still definitely relevant to Project 2010.

Understanding Out of the Box Views

Microsoft Project contains a number of Rollup Views out of the box. Few users in my experience have ever used these views, but they’re still there. The 2007 version even included the Rollup_Formatting Macro, which is one of those items that didn’t quite make the transfer to the 2010 product. (For instructions on how to bring it over to 2010, please see Dale Howard’s post on the topic.)

The macro actually performs/performed (depending on which version you’re using) some interesting functions:

  • It removed any custom bar styles applied to the view.
  • Toggled how the bars show up within the view (i.e. simply a finish milestone or the entire task bar)
  • Flag every other task to display the task label above the task using the Flag10 field. This effectively staggers the labels for the tasks so that there’s less chance of text overlap.

image

Here’s the same view with the summary row expanded. Note how the Text Above field is flagged as yes for every alternate row.

image

Microsoft Project also comes with a couple other rollup views:

  • Bar Rollup – displays bars on the summary level.
  • Milestone Date Rollup – displays diamonds and dates for milestones at the summary level.
  • Milestone Rollup – displays diamonds at the summary level.

Rolling Data Up

First and foremost, it is important to remember that any schedule should be built upon the foundation of the WBS. That is the crux of effective rollup reporting. Each element of the schedule should be rolled up to match a specific deliverable listed within the WBS.

Assuming that this is indeed the case, then rolling up data will provide an easy to use view listing each WBS item on a specific line. Three elements are required to manage the data rollup feature:

1) Format > Layout > Uncheck the first two options. We’ll talk about how to use this feature in the next section. For now, I generally recommend turning it off, as it negates the ability to toggle rollups on or off using the default Rollup field.

image

2) Summary Task Level Rollup Field – Setting this to No will turn off all rollup functionality for this specific summary task. This should be turned on for any summary task intended to be displayed as a rollup task in the Gantt Chart.

image

3) Task Level Rollup Field – Setting this field to Yes will rollup the task to any summary task that also has the Rollup field set to Yes. If the summary task has Rollup set to No, this field will not have any impact.

image

So let’s take a look at a couple of examples. This is a relatively simple set of experiments borrowed from questions seen frequently on the Microsoft Project newsgroups.

In the first example, we wish to display a set of four subtasks rolled up on one Gantt Line. These may be subtasks or phases within the project.

image

By toggling the Rollup field, we can get each of the four tasks to show up on the summary line.

image

Note that if I set the summary task Rollup to No, then all of the formatting goes away.

image

The problem now is however, how do I visually differentiate the four tasks. To do that, I will add four flag fields, one for each subtask category. We’ll call them Phases 1-4.

image

Then I modify the Gantt Chart bars. To access this screen, doubleclick on the Gantt Chart. Scroll down to where you see the “*Rolled Up…” entries begin. Note that the “*” before each of the titles tells Microsoft Project not to include that specific label in the project legend when the project is printed. Using the *Rolled Up Task as the base, I insert four lines, and change the colors appropriately.

image

Going back to the Gantt Chart, this yields the following results:

image

At this point, I may also opt to change the formatting options for the subtasks so that they match their rolled up counterparts. I can then roll up the tasks to get the following view.

image

Let’s go back into the Bar Styles and modify the text labels…..

image

Note that I staggered the names, and put the labels on top for Phases 1 and 3, and on the bottom for Phases 2 and 4. This brings up the single trickiest issue that I have found with managing rollups, and that is trying to ensure that the text doesn’t all land on top of each other. The only solutions I have developed for this would be to use custom flag fields to control multiple bar chart styles, and thus allow me to toggle the text location – or add a callout using the Drawing options.

image

One more task remains – and that is to remove the summary task black bar. One handy trick when modifying the Gantt Styles is that you can mouse over the offending item to see which element in the Bar Styles Dialog is controlling the formatting:

image

So we have identified that the offending element is the Summary line. To remove this, I go back into the Bar Styles, and change the criteria for that bar:

image

And the end results look like this:

image

Now I point out that this view is pretty simplistic, and doesn’t come close to demonstrating the capabilities of Microsoft Project. In addition to rolling up Task bars, I can also roll up such items as baseline data, progress lines, or other key elements. This means that I can, in theory, roll up an entire view of the project to a handful of lines.

Reporting With Gantt View Task Rollups (Part 1) – Rolling Up Gantt Bar Charts