Every date in a P6 schedule is a count of working time on a calendar. Change the calendar and the same logic and durations give different dates. That makes calendars one of the quickest things an owner can check, and one of the easiest places for a schedule to go quietly wrong: a missing holiday here, a 24-hour lag calendar there, an imported global calendar nobody meant to change.
Learning outcomes
- Explain the three calendar pools in Oracle Primavera P6 (global, project and resource) and which objects can use each.
- Create and edit calendars from Enterprise, Calendars, including holidays, exceptions and hours per time period.
- Work out which calendar sets an activity's dates and its relationship lags.
- Check a contractor's calendars against an Ontario five-day, eight-hour contract requirement.
The lesson
What a calendar holds
A P6 calendar sets the work hours on each day of the week, the default hours per time period (used to convert hours into days, weeks and so on), national and company holidays, project-specific work and nonwork days, and resource vacations [1]. You can create as many calendars as you need for different work patterns [12]. P6 uses calendar assignments when it schedules, levels resources and tracks progress [1].
Three pools
Calendars live in three separate pools [1]:
- Global calendars are available to every project in the database. They can be assigned to activities and to resources.
- Project calendars belong to one project. Each project has its own pool, and these calendars can be assigned to that project's activities.
- Resource calendars belong to resources. They come as shared calendars, which several resources can use, and personal calendars for one user, who can edit their own work week and exceptions [1].
The assignment rules are short: activities use a global or a project calendar; resources use a resource or a global calendar [1].
Inheritance: why global calendars are powerful
Project and resource calendars can be linked to a global calendar, and changes to that global calendar then flow to every linked calendar [1]. In a project calendar the link is the field Inherit Holidays and Exceptions from Global Calendar [6]. Put Ontario's holidays on one global calendar and every linked calendar picks them up; edit it and every linked project moves. Before editing one, select it and click Used By to see what depends on it [4][8]. Oracle also notes that editing a global calendar can change manually entered future period values on linked activities or resources [4].
One global calendar can be marked Default, which makes it the default global calendar for activities and resources [3].
Creating and editing calendars
All three pools are managed from one dialog. In P6 Professional (version 26):
- Choose Enterprise, Calendars, then pick Global, Project or Resource [3][5][7].
- Click Add. P6 asks which existing calendar to copy; choose it and click Select [3].
- Type the new calendar's name, then click Modify to edit it [3].
In the editing dialog you move month by month. To mark a holiday, click the date and click Nonwork. To change hours on one day, set Total work hours/day or, for exact hours, Detailed work hours/day and mark hours Work or Nonwork. To undo an exception, click it and click Standard. Time Periods sets the hours per day, week, month and year that the calendar uses to convert durations [4]. P6 rounds working hours to the nearest half hour [4].
Hours per time period: the display trap
P6 stores all time in hours and converts it for display [2]. If the conversion factor does not match the calendar, durations display wrongly even though the stored hours are correct. Oracle's example: a 30-hour activity on a 10-hour-per-day calendar shows as 3d6h if P6 converts at a global 8 hours per day, but as 3d if it converts using the activity's own calendar [2]. The fix is an administrator setting, Use assigned calendar to specify the number of work hours for each time period. In a P6 Professional database it is on the Time Periods tab of Admin, Admin Preferences; when P6 Professional is connected to a P6 EPPM database, it is set in P6 Application Settings instead [2]. Until it is checked, the Time Periods fields in each calendar stay disabled [4].
Which calendar sets an activity's dates?
It depends on the activity type. A Task Dependent activity is scheduled on its own calendar; a Resource Dependent activity is scheduled on its assigned resource's calendar [1]. (Lesson 7 covers the other activity types.) Relationship lag follows a separate rule: the Calendar for scheduling Relationship Lag option in Schedule Options picks the successor's, the predecessor's, a 24-hour or the project default calendar, with the successor's used if none is chosen [9]. We looked at that dialog in Lesson 4.
Northgate worked example
Northgate Distribution Centre (fictional) is a 12,000 m² tilt-up warehouse in Vaughan, Ontario, built by Halvorsen Builders Ltd. (fictional) for Northgate Logistics Inc. (fictional) under CCDC 2-2020. The Northgate fact sheet sets the working rule: Monday to Friday, 8 hours a day, Ontario statutory holidays non-working. The owner's scheduler checks Halvorsen's calendars on the review copy NDC-BL00-R in NDC.REV, never on the evidence copy NDC-BL00.
Which holidays?
Ontario's Employment Standards Act names nine public holidays: New Year's Day, Family Day, Good Friday, Victoria Day, Canada Day, Labour Day, Thanksgiving Day, Christmas Day and Boxing Day. Easter Monday, the Civic Holiday and Remembrance Day are not on the list [10]. Between the contractor's schedule start on Mon Mar 1, 2027 (M3) and final completion on Fri Mar 31, 2028 (M11), nine holiday dates fall on or are moved to weekdays. In 2027 Christmas and Boxing Day fall on a weekend, and New Year's Day 2028 is a Saturday. The Act deals with weekend holidays through substitute days for each employee [10], so the act itself does not fix a site-wide date. Northgate's calendar treats the next weekdays as the days off. That is a planning assumption, and the owner should confirm it against how Halvorsen's trades actually observe them.
View the data
| Date (nonwork in calendar) | Holiday | Note |
|---|---|---|
| Fri Mar 26, 2027 | Good Friday | |
| Mon May 24, 2027 | Victoria Day | |
| Thu Jul 1, 2027 | Canada Day | |
| Mon Sep 6, 2027 | Labour Day | |
| Mon Oct 11, 2027 | Thanksgiving Day | |
| Mon Dec 27, 2027 | Christmas Day | Falls Sat Dec 25; moved (assumption) |
| Tue Dec 28, 2027 | Boxing Day | Falls Sun Dec 26; moved (assumption) |
| Mon Jan 3, 2028 | New Year's Day | Falls Sat Jan 1; moved (assumption) |
| Mon Feb 21, 2028 | Family Day | |
| Mon Aug 2, 2027 | Civic Holiday | Not an ESA public holiday |
What the holidays are worth
From M3 to M9 there are 230 weekdays. Eight of the holiday dates fall in that span, which leaves 222 working days. If a calendar also treats Easter Monday and the Civic Holiday as days off, the count drops to 220. A calendar with no holidays is eight working days optimistic: float that does not exist.
View the data
| Calendar | Weekdays | Holidays off | Working days |
|---|---|---|---|
| Mon–Fri, no holidays | 230 | 0 | 230 |
| Mon–Fri, Ontario public holidays off | 230 | 8 | 222 |
| Also Easter Monday (Mar 29, 2027) and Civic Holiday (Aug 2, 2027) off | 230 | 10 | 220 |
The owner's calendar check
On NDC-BL00-R, the owner's scheduler works through five steps:
- List the calendars. Enterprise, Calendars, Project, then Global. Note every calendar that arrived with the import.
- See what uses each one. Use Used By to find which activities sit on which calendar [8]. A seven-day calendar on 300 activities is a question; on concrete curing it is normal.
- Open the main calendar and step through the months. Confirm 8 working hours Monday to Friday, then check each date in Figure 3 is nonwork. Note whether holidays sit on the calendar itself or come through Inherit Holidays and Exceptions from Global Calendar, and which global calendar that is [6].
- Check extra nonwork days. A winter shutdown, the Civic Holiday or Easter Monday may be reasonable, but they are Halvorsen's choices, not the Act's. Ask for them to be stated in the narrative.
- Check lag and display. Record the relationship lag calendar from Schedule Options [9], and confirm durations display correctly in days (the hours per time period setting) [2].
A note on imports
Global calendars belong to the whole database, so a contractor's global calendars can arrive in the owner's global pool when its XER is imported. The import configuration decides what happens when imported global data matches records already in the database: insert new, keep existing, update existing or do not import [11]. Check how your version handles calendars before the first import. An "update existing" on a shared global calendar could change dates in every project that inherits from it.
Owner's move
- Write the calendar into the contract. State the work week, hours and holidays in the schedule specification, and say how weekend holidays are treated. "Ontario statutory holidays" alone leaves the Christmas 2027 question open.
- Keep one owner reference calendar. Northgate keeps a global calendar, "NLI Ontario 5d 8h", built to the contract rule. On a review copy, the scheduler can point Halvorsen's calendar at it through the inherit field to test the effect, without touching the evidence copy.
- Require every calendar to be listed and explained. Each calendar, what it is for and which activities use it should be in the baseline narrative.
- Protect global calendars. Only the P6 administrator should edit global calendars in the owner's database, because one edit can move dates in many projects.
Common mistakes
- Using the default calendar as is. A copied standard calendar knows nothing about Ontario holidays until someone adds them.
- Treating the Civic Holiday as a statutory holiday. It is not in the Act's list [10]. It can be a site day off, but it should be a stated choice.
- Editing a global calendar without checking Used By. Every linked calendar changes with it [1][8].
- Ignoring the lag calendar. A lag on a 24-hour calendar runs through nights and weekends [9].
- Reading days without checking hours per time period. Durations can display wrongly when the conversion does not match the calendar [2].
Quick quiz
Which calendars can be assigned to an activity?
- Resource or global
- Global or project
- Project or resource
- Any calendar in the database
A Resource Dependent activity is scheduled on:
- The project default calendar
- Its own activity calendar
- The calendar of its assigned resource
- A 24-hour calendar
Which field links a project calendar to a global calendar's holidays?
- Inherit Holidays and Exceptions from Global Calendar
- Default
- Used By
- Time Periods
Which of these is not a public holiday under Ontario's Employment Standards Act?
- Family Day
- Good Friday
- Civic Holiday
- Boxing Day
A 30-hour activity sits on a 10-hour-per-day calendar but displays as 3d6h. The likely cause is:
- A missing holiday
- Hours per time period converted at a global 8 h/day
- Retained Logic
- A must finish by date
Show answers and explanations
- B. Activities use global or project calendars; resources use resource or global calendars [1].
- C. Resource Dependent activities follow the assigned resource's calendar [1].
- A. The inherit field on a project calendar names the global calendar it takes holidays and exceptions from [6].
- C. The Act lists nine public holidays; the Civic Holiday is not one of them [10].
- B. 30 hours at 8 h/day displays as 3d6h. Converting with the activity's own calendar gives 3d [2].
Key terms
- Global calendar
- A calendar available to every project in the database, assignable to activities and resources.
- Project calendar
- A calendar that belongs to one project and can be assigned to its activities.
- Resource calendar
- A calendar assigned to resources; shared by several resources or personal to one user.
- Default global calendar
- The global calendar marked Default, used as the default for activities and resources.
- Exception
- A date whose hours differ from the calendar's standard week, such as a holiday marked nonwork.
- Hours per time period
- The conversion factors P6 uses to show stored hours as days, weeks, months or years.
- Used By
- The button in the Calendars dialog that shows what a calendar is assigned to.
- Public holiday (Ontario)
- One of the nine days listed under the Employment Standards Act, 2000.
References
- Oracle. Calendars. Primavera P6 Professional Help, Version 26.
- Oracle. Defining default hours per time period in calendars. Primavera P6 Professional Help, Version 26.
- Oracle. Create a global calendar. Primavera P6 Professional Help, Version 26.
- Oracle. Edit a global calendar. Primavera P6 Professional Help, Version 26.
- Oracle. Create a project calendar. Primavera P6 Professional Help, Version 26.
- Oracle. Edit a project calendar. Primavera P6 Professional Help, Version 26.
- Oracle. Create a shared resource calendar. Primavera P6 Professional Help, Version 26.
- Oracle. View global calendar assignments. Primavera P6 Professional Help, Version 26.
- Oracle. General tab - Schedule Options dialog box. Primavera P6 Professional Help, Version 26.
- Government of Ontario. Your guide to the Employment Standards Act: Public holidays.
- Oracle. Modify Import Configuration dialog box. Primavera P6 Professional Help, Version 26.
- Oracle. About Calendars. Primavera P6 EPPM Help, Version 26.
Verified on November 4, 2026.
Next lesson in this trackWBS in P6PMI, PMP and PMBOK are registered marks of the Project Management Institute, Inc. Oracle and Primavera are trademarks of Oracle. Microsoft Project is a trademark of Microsoft. BRC Academy is not affiliated with or endorsed by these organizations.