
Tutorial Info
- Program: Primavera P6 Project Management
- Version: 7 and up
- Difficulty: Advanced
- Time to Complete: 15 minutes
Reflection projects are a little known but very handy feature in Primavera’s P6 Power Client. A Reflection is essentially a copy of a project but with one snazzy built-in trick – the ability to merge the copied project back into the original at any time. If the genius of this trick hasn’t struck you yet, it will.
This merging ability was designed to help planners work with scenario projects.
Let’s say you’re the planner for a large capital project that is a falling behind schedule. The boss wants you to assess the impact of adding an extra shift to the work schedule. How much time can be caught up with this approach (ie: scenario)?
The thing to do here is to create a Reflection of the project, add an extra shift and verify the finish date. If the boss approves the extra shift, then you can merge this scenario project into the original project along to keep the changes you made. This saves you the time of renaming projects, resetting permissions and copying and pasting changes from one project to another. There are also some nice options to help you create a backup of the original project in case you need to reference it again in the future.
Step 1 – Creating a Reflection of a project

From the Projects window, right-click on the original project and select Create Reflection from the menu.

If the original project has any baselines you will see pop-up window where you can select whether or not to copy those baselines along with the project. Simply mark the checkbox in the Copy column if you want to preserve any baselines in the Reflected project.

You should now see a copy of your project in the Projects window. The copy will have the same Project ID with “-1″ appended. This reflection project will also be marked with a Status of “What-If” which is Primavera’s way of indicating the project is a “scenario” project and not a real project plan.

Step 2 – Open the Reflection project and Activity Layout
Now it’s time to run your scenario. ie: make changes to the Reflection project to test out your scenario, hypothesis, etc.
In this tutorial, we’ll make a small change to the reflection project’s resources.
Open the Project and then Open the Activity Layout provided the tutorial downloads section.

Before we make any changes, you’ll need to make sure a key setting for working with resources is set correctly in User Preferences. Go to Edit -> User Preferences, and click on the Calculations Tab.

Set the “Recalculate the Units, Duration, and Units/Time for existing assignments based on the activity Duration Type” option. This will make sure that Primavera will perform the necessary recalculations when resources are added or removed from an activity. Close the User Preferences window.
Step 3 – Making changes to the Reflection project
Find Activity A1020 – Convert Legacy Data. You’ll be adding another resource to A1020 to see how this will affect the project’s finish date. Since the activity’s Duration Type is set to “Fixed Units”, adding an additional resource will have the effect of shortening the activity’s duration and spreading the units equally over the 3 resources assigned. Let’s give it a try.

Add Tom Bell as a new resource assignment to A1020. Reschedule the project using the current data date and check the project’s finish date.
The project should now finish on Dec 20, 2010 whereas before it was scheduled to finish on March 1, 2010.
Step 3 – Reviewing the Differences Report
Go back to the Projects window and right-click on the Reflection project. Choose “Merge Reflection into Source Project” from the menu. You should now see the Differences Report window.
This screen is really nice. It provides you with a report on the differences between the original project and the reflection. From here you can choose which changes you want to merge into the original, or leave out by checking the box in the “Merge” column. Don’t like the updates on a particular activity? Just leave them out.
P6 also gives you some options to archive the original project, either as a baseline or as an .xer export file. This is essential as you’ll likely need to keep the original project around. And you can also choose how to handle the reflection – keep it, delete it or replace it (update it) with the new merged project.

Step 4 – Merging the Reflection into the original project plan
If you agree to merging the projects, you can go ahead and set the options as above, and click “Merge Changes” to finalize the merge. You may want to print this differences report first, or you might even copy and paste it into a text document before you Merge. You can do either of these by clicking the Display bar.

Wrap Up
The Reflection and merging features in Primavera are great features for the planner or scheduler who needs to run project scenarios or hypothetical analysis.
Things for you to try:
- Try making more than 1 reflection of the same project to compare multiple scenarios
What else you should know about reflections:
- the Reflections features are only available in the P6 Power Client and not in P6 Web Access
- A quote from the Primavera help file: “Merging will not necessarily remove items from the source project that have been deleted from the reflection. If major elements of a project have been deleted from the reflection, you will have to manually delete them from the source project if you do not want to keep the elements in the source project. Elements that are not deleted during a merge include Activities, Resource Assignments, WBS elements, Work Products and Documents, Project Expenses, Project Issues, and Project Risks.”
Download Tutorial Files
- Project .xer and Layout [Reflections-Tutorial.zip] – Don’t know how to import our layouts? Read how here.













28 Responses
I understand that you need superuser privileges to be able to merge reflections. However, I also understand that there is something called Project Superuser. Can you merge reflections with Project Superuser privs or do is Admin Superuser required? Also, what other privileges come with Project Superuser?
Great question.
I did some checking and testing on what permissions you need to both create a reflection and to perform a merge. The P6 user guide says that you don’t need Global “Admin Superuser” privileges to create a reflection. You only need to have privileges to create projects. As for project-level permissions, you DO need to have “Project Superuser” privileges for both the source project AND the reflection project.
Project Superuser gives you ALL of the project privileges in the profiles setup screen, as well as the following (which are unstated for some reason):
1. Can change the Responsible Manager for any project that they have access to
2. Allowed to Import into an existing project with the following options – Update, Add Into or Replace
3. Select or Deselect the option to copy activities when copying a WBS node
And I guess we would add…
4. Can Merge Reflection projects back into the Source project.
M
Hi – yes i agree this looks very usefull, however my scenario is slightly more complex as the ‘reflected’ programme will need to be backed up (XER) and issued to subcontractor for update. When i have tried this and imported the updated XER it doesnt give me the ‘merge’ facility – is there a way round this?
Rob
Hi Rob,
Another good question and likely scenario. This is a nice way to use reflections for updating which I hope to cover soon.
I was able to create a reflection, export it to .xer, reimport it and merge the changes. One thing that might be tripping you up is during the import – you have to make sure that you have the reflection project open before you perform the import. This will update the reflection project in your database from the .xer file. If you don’t have the reflection project open, P6 will try to create a new project in the database and you won’t be able to perform the merge.
Steps:
1) Open the reflection project.
2) Goto File -> Import.
3) Select your file.
4) Choose from the Import Option dropdown to “Update Existing Project” and select the project in the “Import To” field to the right.
5) Complete the Import.
6) Merge the Reflection Project back into the Source.
Drop me a line back if this doesn’t fix it for you. Thanks for the comments.
Sir I’ve a question,
I’m working on 1 project which will be executed by 2 Companies
I’ve more than 4500 activities divided in 3 categories
1. Activities by ABC company
2. Activities by XYZ company
3. Activities by both companies (Combine)
All this activities are interlinked
Now my Question is
The XYZ Company want to have their part of schedule i.e Activities by XYZ company & Common activities (i.e Activities by both companies) & they will update & send that schedule to us. But the client wants only 1 Schedule for the whole project which is natural & standard.
Both the companies are located far away geographically.
Web access to XYZ company is also not possible due to security policy.
What will you suggest in this situation?
Can Reflection Project option help me in this case?
Thanks in advance for your reply
Hi Vicky,
The best approach to updates is to have the companies work in the database where the project resides. This eliminates all sorts of hassle with importing data and updates. You’ll want to ensure you have proper security profiles set up for each company that logs in.
However, if having the contractors log in to the database is not possible, as you’ve stated, then importing .xer files is probably the next best approach.
Yes, you can use Reflections for updating projects as well. I think it would be a good choice for you to use in this situation. I might suggest you make a copy of the project to test the Reflection updates on first – so can you get a feel for how they work. Just remember that reflections don’t update all data. If there are major changes in the reflected project, like new relationships and resource changes, the Reflection Merge will not import them and you’ll have to do it manually. However, you can still import a .xer without using a Reflection in that case.
If your contractors are merely providing status / actuals updates on existing activities, I do recommend you use Reflections. You’ll have the ability to review the changes in the Reflection differences report before merging them in.
This will be the topic of a future tutorial soon.
Please feel free to contact me via with any other questions. I’m happy to help. michael@plannertuts.com
Michael
Good Morning Sir,
As said by you, “reflections don’t update all data”, It’ll be
difficult for me to use that option.
How Importing .xer file can help?
I mean suppose if i (ABC Company) prepare baseline schedule for all 3
types of activities (Activities for ABC, XYZ & Combine). I export the
project as xer file, send it to other contractor (XYZ Company), During
the execution of the project say in 1st month, i will update my
portion of activities ( ABC Company activities), XYZ company will
update their portion & send .xer file to me.
Now when i import this .xer file & if i use “Update existing project”
option in Import action in Import window
then will it be correct import or there are any chances of mistakes?
How can i check that ?
I mean the resulting project will show updates by both companies correctly?
Hi Vicky,
I have a better understanding of your scenario now. If I was in your shoes, here’s how I would proceed.
1) My first choice is, if at all possible (even by nagging managers and IT folks), get these contractors to work directly in my Primavera database. If I can do that, I’ll have the utmost control over the flow of data and security to keep each contractor focused on only their activities.
2) If I have exhausted all possibilities of acheiving 1) above, then my second choice is to divide the project into 2 separate project plans. Each contractor can then perform updates via .xer file without interfering with the other contractor’s updates or activities. It is possible in Primavera to work with multiple projects as though they are 1 project, by opening them together, using Activity Codes to essentially merge the two projects together for viewing and analysis even though they are separate. Depending on what you’ve agreed to with the client, this is the next best option, however it is not perfect either. There could be challenges if both contractors don’t update their projects at the same (or reasonably close). Each project will have separate Data Date and if these DD’s become very out of sync, then I would have other challenges to deal with.
3) If neither 1) nor 2) was an option, then my next choice would be to enforce regular project updates from both Contractors using Reflections. When you merge the Reflection project, I’ll be able to see if there were major changes (new activities, new resource assignments, etc.). Since these major changes can’t be merged, I would have to preserve the project before (make a copy or baseline) and then either do an .xer import or manually update the major changes. I might use the Claim Digger tool to compare the differences after the import. I would also ask contractors to perform status updates more regularly to manage fewer updates each time.
I know it sounds difficult and tedious, and in some ways it is but using the tools in 3) would ensure that I’m very careful with the data to ensure one contractor doesn’t affect the other’s section of the project.
4) I have one further option I might pursue. Bring complete control of the schedule in-house – ie: don’t allow the contractors to update their schedules, do it for them. Many companies also take this approach and find it can help to better manage their contractors as well. This way, we get rid of hassle of updating and merging, but now we need to have a good communication strategy to get information from the contractor when we require an update.
Vicky, I hope I’ve given some viable options to consider. This is all tricky business. But I really think if you can go with option 1), it’ll make life alot easier.
Please feel free to email again if you’ve more questions. I’m here to help.
Michael
Your Comments
While looking for some on-line tutorials for advanced work (linking projects together, Reflections, etc) in Primavera P6, I came across Michael’s tutorials and comments on YOUTUBE and http://www.planertuts.com. Loved it, I’m a fan!
Michael’s tutorials are professional, free of gimmicks and dubious music choices imposed upon me. I’ve enjoyed watching every one of them! Fortunately, I’ve been able to successfully put it in practice and live-test for the benefit of my own company. Glad to say that “it does what it says on the tin”.
Great work Michael, please keep them coming – virtual classroom at its best!
Your Comments
Your tutorials were recommended to me by a colleague. I have found them all to be very useful as I didn’t know Primavera was so versitile!
Now I am looking forward to the next lot of tutorials to further impress my bosses!!
As Sunchana states ‘it does what it says on the tin’
Keep up the good work
Thanks Dave! We really appreciate your positive feedback and will strive to continue to helping this community.
[...] Use Reflections in Primavera P6 to Merge Scenarios back into your Project [...]
[...] If you’ve perused our P6 tutorials, you may already know reflection projects are great for working with and managing scenarios. But they can also provide a way to preview and selectively approve activity updates from [...]
[...] Use Reflections in Primavera P6 to Merge Scenarios back into your Project [...]
How can I get all the tutorials of you. Please advise.
Hello Krishna,
Please browse the site. All our tutorials are posted here and are currently free to peruse.
Warmest Regards,
Michael
Hi Sir. I’m using reflections to do lots of changes etc, and hope to pull all back into the original plan. However, I also want a new baseline of said changes. How does p6 react when re-baselining, a quarter way through the plan, and where I have %ages, earned values etc,,
thanks for any help.
Hi Doug,
P6 has no problems with creating baselines mid-project. After you merge your reflection in, you can rebaseline your schedule to capture it with the newly merged changes.
Hopefully that answers your question. If not, drop us another line here.
Regards,
Michael
Hi Michael,
There are different activities like A,,B,C, in my plan.they having different start dates and end dates..predecessor and successor activities.after preparing my plan i realize that its one time activity and i want to merge all these activities as one one Activity.because if i deleted all Activities it will disturb my whole plan. what should i do now??i want to merge all activities as a one time activity.
thanks
Regards
kash
Hi Kash,
A few options.
1) You could create a new activity to replace A B C, then delete A B C. But as you said, it would disturb your plan. If you delete A B C, it might also upset any baselines that have those activities in them as well.
2) A second option is to use a Level of Effort activity (set Activity Type to Level of Effort on General tab) to “summarize” those 3 activities. A Level of Effort activity is a special type that can summarize groups of activities – it will automatically span the duration from the start of A to the end of C. Create a new activity (LOE). Set it to be a “level of effort” activity type. Create a predecessor from LOE to A – set as Start-Start. Create a successor from LOE to C – set as Finish-Finish. Reschedule your project and LOE will summarize those activities – it’s duration will be auto-calculated as the duration from the start of A to the finish of C.
Give that a try and let us know if it helps. You may also review this tutorial which explains level of effort somewhat http://www.plannertuts.com/tutorials/use-a-level-of-effort-to-add-work-stoppage-info-to-a-project-and-still-track-to-your-primavera-baseline-877/.
Regards,
Michael
Hi,
I have dissolved some activities in reflection of the project. Now before merge all change in base project i want to be sure that these activites will going to be dissolve in base project as well. Is it possible to do so or is there is any other way we can make reflection as a base project?
Thank you in advance.
Best Regards
@Jayant
By design, Merging will NOT Remove items from the Source Project that have been deleted from the Reflection. If major elements of a Project have been deleted from the Reflection, the User will have to manually delete them from the Source Project.
Elements that are not deleted during a Merge include:
Activities
Relationships
Resource Assignments
WBS elements
Work Products and Documents
Project Expenses
Project Issues
Project Risks
Hello.I have an issue concerning the merge reflection into a source project, when i try to do the merge i got this message : “Cannot open both projects exclusively.You will not be able to merge.” .Any idea about how solving this matter? Many thanks in advance.
It sounds like someone else has one of your projects open. You can check who is using a project by going to File->Open, select your project and click the Users’ button.
MY question concerns the use of reflections and changing activity relationships.
Can I change the activity relationships in reflection project and upon merge, will these “revised” relationship replace what I have in the current project?
We have a scenario for some offshore work that we want to look at different marine vessel sequencing and this would allow me to do “what – if” planning in several plans to present to Offshore team.
Thanks in Advance for your assistance.
Hello. Great thread as always!
Can you re-name the reflection project without compromising it’s functionality?
Hi, yes, I believe you can. The link is not by name, but through another field which eludes me now.
M
@WTaylorCooper,
Unfortunately relationships do not merge. Same goes with resource assignments. You have to update these manually in the merged project – the merging feature will not do it for you.