Expert, flexible training in the use of the most powerful scheduling software program in the world: Primavera P6 by Oracle.
Primavera Scheduling

All posts in Primavera P6

Using a Filter to Find Missing Logic

Categories: logic, Primavera P6
Comments Off

One of our training clients recently asked us to create a rather unusual filter showing “open ends”, or activities that are missing predecessors and/or successors. While this information can be gleamed from the Schedule Log (Tools > Schedule) this report does not graphically represent these activities. A filter will of course allow us to show these activities on the Gantt Chart, so that we know when and where these activities occur in the schedule.

In the screen capture below I have created a simple filter to display activities with open ends. Notice that I have two lines in my filter and that I have selected “(Any of the following)” when combing the two specified parameters. The first row asks P6 to list activities where the predecessor value is blank. You might know that we can display predecessors as a column in the Activity Table, and if there are no predecessors for an activity then this cell would be empty.

In the second row I have added the same statement for the successor value. The only thing left to do is make sure P6 understands that I want activities that are missing predecessors or successors. In other words, if the first row or the second row statement is true, give me those results. To do this, I selected “(Any of the following)” filter parameters:


Filter for Open Ends







As you can see, setting up the filter is pretty simple. Leaving the value blank does not work in many situations, but for predecessors and successors this approach is fine.





Most of us understand that negative float is generated by a constraint that is not being “satisfied” and indeed, we cannot have negative float without a constraint. Or so it would seem. But during a recent training session at the Kennedy Space Center my client showed me several Level of Effort activities that had negative float. In fact, all of the Level of Efforts had negative float yet no other activity showed any negative float whatsoever. Imagine that; the activities linked to the Level of Efforts have positive float but the Level of Efforts have negative float!

In the first figure I am showing a typical setup with a Level of Effort activity linked to one predecessor and one successor. The Activity Type is shown in the Activity Table to make it easier to see which activity is the Level of Effort:

LOE Before Progress


Okay, so far nothing is amiss. The Level of Effort is linked to activities on the critical path and therefore shares the same zero (0) float. But watch what happens when the predecessor to the Level of Effort is updated with progress:

LOE After Progress

The Level of Effort activity - and only the Level of Effort – has negative float! Keep in mind that no constraints are being used in this schedule. And while all of the Task Dependent activities are on the critical path I can assure you this has nothing to do with the negative float on the Level of Effort activity.

So how is this possible?

The answer has to do with the ability in Primavera P6 to calculate float three (3) different ways. These settings appear under Schedule Options:

Float Calculation Settings

I typically calculate float as the difference between the Late Finish and the Early Finish dates. But my client had selected Late Start – Early Start. (The third option is to take the smallest value of the two calculations). Choosing any setting other than Late Finish – Early Finish will generate negative float once the predecessor to the Level of Effort has started. Moreover, astute viewers will notice that the negative float matches the number of days that have elapsed since the predecessor started. The predecessor started five work days before the Data Date and the float is -5 work days.

Why this is happening is a little hard to explain, but Primavera P6 calculates float for both the start and finish of every task. Normally this results in the same value. Level of Effort activities, however, are another matter. Primavera P6 calculates the float on this type of activity as the difference between the Actual Start Date and the Data Date and perceives the activity as being “late” because the Data Date is later than the Actual Start Date.

Thankfully this weird float issue can be easily avoided by using Late Finish – Early Finish for the float calculations. And while this has always been my personal preference I have a whole new appreciation of this setting now.



You might have noticed that Primavera P6 has something called “Set Project Default” under the Project menu. This is a very important consideration when multiple projects are open. To review, more than one project can be opened at the same time by highlighting them together and then right-clicking or using the keyboard shortcut Ctrl+O, as seen below:

P6 Professional_Opening Multiple Projects


There are several reason why we might want to open more than one project at a time. For example, we might be checking the logic on similar projects for consistency. Or we might be updating several projects on the same day and having them open together simply makes it easier to go back and forth. Activities in different projects can also be linked together by opening them together and adding relationships.


Next, we need to open the Project menu and select Set Default Project:

P6 Professional_Opening the Set Default Project Menu


Then we select which of the open projects should be the default:

P6 Professional_Selecting the Default Project


Setting a default project accomplishes several things:

  1. Whenever this group of projects is opened in the future, the default project remains the same
  2. New activities added to this group of projects will automatically be assigned to the default project (unless grouped by WBS)
  3. Schedule Options for all open projects are determined by the default project

As an experiment, try grouping multiple projects in the Activities window by Project. If you try to add an activity to any project other than the default project the activity will still land under the default project. This could be problematic of course so it is good to know that grouping by WBS allows you to insert a new activity into any of the open projects.

Schedule Options is the most critical consideration. Casual P6 users often fail to consider that the Schedule Options for a project are unique. That is to say, Schedule Options do not apply to all projects. In the following screenshot we can see these options:

P6 Professional_Schedule Options


One of the open projects may have critical activities defined as the Longest Path while another uses Total Float to define critical. Regardless of the individual project settings only the default project’s settings will apply when the projects are scheduled together. And this brings us to the most important reason for setting a default project. As a scheduling manager you might be worried that not all of your schedulers are using the proper settings for calculating their schedules. For example, I have never used Progress Override because it distorts the logic (more on this in another post). The scheduling manager can open all the projects at the same time and schedule them knowing that all projects will be calculated in the same fashion.

Now, you may be wondering about the data dates of the open projects. What happens when they are not the same date? As soon as you try to schedule the open projects you will see this message:

P6 Professional_Data Date for Multiple Projects


In P6 Web (a component of P6 EPPM) it is possible to force all open projects to calculate to the same data date. But in P6 Professional this is not possible, and is often not desirable. But the ability to make sure than all open projects are being scheduled in a consistent manner is the key. The scheduling manager only needs to check the settings for the default project and can ignore what might have been done on the individual projects. Using the wrong settings, or not fully understanding what settings were used, is a common mistake that can be easily avoided with a default project.



Calendar Issues in Primavera P6

Categories: P6 Calendars, Primavera P6
Comments Off

Most Primavera P6 users are familiar with setting up and modifying calendars. There is a potential problem, however, when specifying more than 8 hours per day for activities. P6 defaults to 8-hour work days, as we will see in a moment, and interprets anything more than 8 hours as overtime. This results in activity dates not calculating as expected. In the following example, I created a 5-day calendar with 10 hours per work day, Monday through Friday. The work day starts at 7:00 am and ends at 5:00 pm (this allows for no lunch break but my theoretical crew is a bunch of really hard workers!). I assigned this calendar to an activity with a 5-day duration. Notice what happens:

Calendar Issues in P6_1

The 5-day task finishes in 4 days. Why? Because P6 assigned an imaginary budget of 40 hours to my task based on a normal 8-hour day. By working 10 hours per day, my crew worked 40 hours in 4 days. This can be confirmed by adding a labor resource and watching what happens to the budgeted hours. While this figure can be changed later on, the initial budget will be based on 8 hours per day regardless of the calendar settings.

Now, savvy P6 users know that the hours per day can also be modified somewhere other than in the calendars. Under Admin, Admin Preferences, Time Periods, the hours per day, week, month and year can be specified. This menu is shown below:

Calendar Issues in P6_Admin Preferences

We can change the time units under Admin Preferences to show 10 hours per day. This solves the problem of P6 thinking that anything in excess of 8 hours per day is overtime, but it also changes the settings of every schedule in the database. These are Admin Preferences, and not User Preferences. Admin Preferences affect all projects.

Nevertheless, we are real close to a solution. Note that right under the time periods in the Admin Preferences there is a box with the following phrase:

“Use assigned calendar to specify the number of work hours for each time period.”

Checking this box is real important because it allows us to use the hours per day in our calendars rather than the global hours per day under Admin Preferences. But we need to make one last adjustment.

Under Enterprise, Calendars, there is an option to specify time periods. These time periods are calendar-specific. In the screenshot below we can see the time period settings for just one calendar:

Calendar Issues in P6_Calendar Time Periods

By making the hours per day in the time periods for this calendar match the hours per day in the calendar itself then P6 will properly understand what is considered to be a normal work day.

Your thoughts? Please email me with any comments or questions.





P6 Baselines Explained Once and For All

Categories: Primavera P6, Primavera P6 Baselines
Comments Off

In our experience as trainers, no subject causes more confusion in Primavera P6 than baselines. Inexperienced Primavera P6 users often believe they have a baseline when in fact they have never created one, or the baseline bars just do not look right. Even something as obscure (for many users) as Earned Value affects baselines. Because this is a fairly difficult topic, we have prepared a YouTube video that shows the proper way to create baselines in Primavera P6. Enjoy!






Oracle Gold PartnerWe are pleased to announce that Primavera Scheduling’s parent company, Construction Science, is now an Oracle Gold Partner. To celebrate our upgraded partnership with Oracle we are now offering Primavera P6 software for $300 off the list price and 10% off all live online and in-person classroom Primavera P6 training programs with the purchase of software. But wait, there’s more! We are also offering volume discounts for the purchase of more than three Primavera P6 licenses. Please contact Bill Pepoon for details on these additional discounts.

The Missing Version of Primavera P6

Categories: Primavera P6
Comments Off

Oracle appears to have killed off Release 7.0 of Primavera P6. The questions is, why? Those of you who have downloaded Primavera software from the Oracle Software Delivery Cloud are probably aware of the existence of older Primavera programs that are no longer sold  – P3 and SureTrak in particular. The purpose, as we understand, is to support licensed users who may need to reinstall these programs. Oracle grants a perpetual license for each program, so this makes sense. Yet Release 7.0 has recently been dropped from Oracle’s eDelivery site. Release 7.0 was the first version released after Oracle purchased Primavera.  We have always liked this version because its user interface is a little simpler to learn and the program is less likely to crash than some of the newer releases.

Release 8.1 has been dropped as well, but this seems like much less of an issue. The differences between Releases 8.1 and 8.2 are so minor that most users would never notice them. But Release 7.0 is much different that the R8 series and it would seem likely that some users would want to continue using this older version. We know of one major construction company with over a $1B in annual revenue that has standardized on Release 7.0 so clearly it is not considered to be an inferior program. Oracle stopped using serial numbers with R7.0 so in theory the software could be copied from one computer to another, but whether this is considered legal is another matter.

Primavera Scheduling now recommends that users purchase Release 8.3 to avoid any licensing issues in the future. Our initial testing of R8.3 suggests that is more stable than R8.2 and besides, we do not have too many other choices! Either we purchase R8.2 or R8.3 or we buy something else. Primavera P6 is dominant scheduling program in the United States so there is really no incentive to switch. Please feel free to contact us if you have any questions regarding which version of Primavera to purchase.



Every Schedule Needs a “Hammock”

Categories: Primavera P6
Comments Off

Granted, we do not call them Hammocks any longer because P6 introduced a new label: Level of Effort. This is of course an activity type. Why Oracle decided Level of Effort is a better description is rather baffling. During our training classes when we talk about Hammocks most people get the analogy of something that spans from one place to another, just like the hammocks you might see in a backyard. Simply put, a Level of Effort activity measures the distance between a predecessor and a successor. Why is that important?

We typically use a Level of Effort activity to measure the project duration. This is the only accurate means of measuring the project duration if more than one calendar is being used. We assign the Level of Effort activity a calendar that matches the calendar used to specify the project duration. So if the project is supposed to finish within 300 calendar days, we give the Level of Effort activity a 7-day calendar with no holidays.

Another excellent use of this type of Level of Effort activity is to represent overhead and profit on a cost-loaded schedule. Since the Level of Effort activity already mimics the project duration, it gives us a per diem distribution of overhead and profit for the life of the project. This is much easier than trying to add overhead and profit to each activity in the schedule.

In the example below, Activity ID 01 is a Level of Effort activity with two predecessors, and two successors. When there is more than one predecessor, the earliest Start date becomes the Start date of the Level of Effort activity and the latest Finish date becomes the Finish date of the Level of Effort activity. For this to work right, the predecessor relationships must be Start to Start and the successor relationships must be Finish to Finish.

LOE Example

Any activities can be linked with a Level of Effort activity, so this is not always about “effort”. We could link the Start date of the first piping task to the Finish date of the last piping task and this would give us the overall duration of piping work. But if we tie the Level of Effort activity to something other than the first and last piping tasks we are not describing the overall timeframe for piping correctly. A WBS Summary activity is another option (which we will discuss later) if the only goal is to show a summary bar. Keep in mind, the duration of a WBS Summary activity may be incorrect unless all the activities it summarizes share the same calendar.


Oracle recently released Version 8.3 for both P6 Professional (PPM) and P6 Enterprise (EPPM). Today we will be discussing changes to P6 Professional.


Visualizer is a new feature that supports graphical reporting via customizable Gantt charts and timescaled logic diagrams (TSLDs). The TSLD was initially introduced with Version 8.0 and is now replaced by Visualizer. One of the advantages of a TSLD is the ability to show more than one activity on the same line, which reduces the height of the logic diagram considerably.

In addition to the P6 Professional’s standard graphical features, Visualizer adds the following features:

  • Stack columns and use word wrapping in the Gantt chart
  • Use notebook topics or a list of steps as a bar label or as a field in the activity table
  • Apply various fonts to individual labels and fields
  • Color-code and apply different shapes for bars and endpoints
  • Draw bars on top of each other, for example, to show critical highlighting

Visualizer is a desktop application that can be launched either from within P6 Professional or from the computer’s start menu. It connects directly to the P6 database. This marks the first time users have been able to view project data without launching P6.

After launching Visualizer, users can choose to create or open a TSLD or Gantt chart. Users can also print and manage layouts from inside Visualizer. P6 Professional layouts or Visualizer layouts created by other users can even be imported.

The Gantt chart includes a grid and a bar chart. The grid displays activity information in a table format, similar to the Activity Table in P6 Professional. On the Chart & Grid tab in Layout Options, display the Gantt chart, the grid, or both.

The screen below shows an example of a TSLD in Visualizer with multiple bars per row and critical activities coded in red:

Visualizer TSLD

Discussion Feature

Previously we had the ability to track comments about activities using the Notebook tab in the Activity view. Version 8.3 adds a new Discussion feature that tracks these comments by team member. All comments are dated and labeled with the contributor’s name. Similar to Notebook comments, Discussions are stored electronically with the activities. This is a nice tool for encouraging dialogue and feedback on activities.

Also, we can now add a column called “Unread Comments” to the Activity Table to prompt team members to review the most recent Discussions. Notebook comments, by comparison, can only be shown as a label on an activity bar and do not appear in the Activity Table.

Visualizer Discussion Tool

XML Import/Export Enhancements

P6 Professional Version 8.3 provides a number of enhancements to its XML import/export functionality. Users can now exchange XML project files with previous versions of P6 Professional from Version 6.2 Service Pack 4 (SP4) onward. Also, all features supported by the P6 Professional XER format (constraining of external relationships during import, inclusion of Price/Unit in resource assignments, etc.) are supported in XML format as well.

P6 Professional Version 8.3 also gives users the ability to import or export multiple projects simultaneously. When exporting multiple projects, the projects are combined into a single XML file. Importing multiple projects requires the projects to be contained in a single XML file.

Visualizer Export

Bottom Line – Worth an Upgrade?

Users who have a current support agreement with Oracle can upgrade to Version 8.3 for free. Otherwise, you will have to pay full price to get the newest version. Version 8.3 does have some nice enhancements but they are not worth buying a new license. The TSLD still does not show relationship lags – only the relationship types – despite several upgrades since it was first introduced. Users have been asking for this feature for quite a while. Of course, the Gantt chart does not show the lags either so we will have to wait until, perhaps, Version 8.4 is released.

In the meantime, we will be testing Version 8.3 for bugs. Versions 8.1 and 8.2 tend to crash more often than Version 7.0 (our favorite) so reliability is always a concern. The casual user of P6 would not miss the enhancements found in Versions 8.1 and 8.2 so it once again comes down to whether a free upgrade is available. Certainly, new users should consider Version 8.3 as there is no discount for buying older versions and Version 8.3 is backwards compatible with earlier versions of P6 Professional.




Our YouTube channel contains several short videos explaining some of the features of Primavera P6 such as creating portfolios, lookahead filters and baselines. These videos were recorded using the same GoToMeeting software that we use in our live online training programs. However, we do not use any videos in our online training. These classes are always live! The YouTube videos are intended to provide snippets of our training programs only.

Here is the link to our YouTube channel:

Nevertheless, we are exploring the option of offering our 4-hour Primavera P6 Quick Start training program in a video format. This would be a series of roughly 15 video lessons that would cover the same subject matter as our live Quick Start P6 program, with the option to call us with any questions up to 30 days later.

My feeling is that our Primavera P6 Quick Start program is an introduction to P6 that would translate well to video lessons. And by making it available on video, clients could access the lessons online whenever they want. I really enjoy teaching the online classes because it is a great opportunity to meet people. Still, the videos would be very convenient.

We are exploring a couple of pricing models for the Primavera P6 Quick Start video program:

  • $200 for access to the online videos, but no live follow-up support
  • $300 for access to the online videos, with 30 days of live support

Our live Primavera P6 Quick Start program is $300, by the way. There will most likely be a limit to accessing the videos online to ensure than the videos are not being watched by people who did not purchase the program. For example, we might have a “time bank” whereby each lesson can only be viewed twice.

So, what do you think? I’d love to hear your thoughts!