Skip to main content

Prerequisites

  • A dedicated calendar project with work item calendars already configured (see Set Up Work Item Calendars)
  • Access to Administration > Configuration Properties in both the calendar project and each consuming project
1

Identify the Calendar Project Settings

In your calendar project, find the following values:
  • Project ID: The Polarion project ID of the calendar project (visible in the URL or project settings)
  • Global Calendar Work Item ID: The ID of the Calendar-type work item used as the global (company) calendar
2

Configure the Calendar Project

Add these properties in the calendar project under Administration > Configuration Properties:
Replace CalendarProject with the actual project ID and CAL-1 with the actual global calendar work item ID.
3

Configure Each Consuming Project

In every project that should use the shared calendar, add the same properties under Administration > Configuration Properties:
These properties must be present in both the calendar project and every consuming project. If a consuming project is missing the properties, its Gantt will not load calendar data from the shared project.
diagram
4

Enable Working Calendars in Each Widget

In each consuming project’s Gantt widget, navigate to the Working Calendars section in the widget parameters:
  1. Set Use Working Calendar to Yes
  2. Set Load User Calendars to Yes
  3. Optionally enable Load Team Assignments for team-scoped capacity
These options are interdependent and revealed in order: enabling Use Working Calendar exposes Load User Calendars, which in turn exposes Load Team Assignments:
Working Calendars widget parameters with the Use Working Calendar, Next/Previous Years to Load, and Cache Working Calendars Yes/No options
The Gantt looks up each resource’s calendar in the shared calendar project by matching the Assignee field on Calendar work items to the resource’s Polarion user ID.
5

Enable Calendar Caching (Recommended)

Cross-project calendar resolution involves querying work items in another project, which can be slow on large installations. Enable caching to improve performance:
Enable nextedy.gantt.workingCalendar.useCache=true in each consuming project’s configuration properties. Clear the cache using the Clear Calendar Cache toolbar button (which appears when caching is active), or via the api/clearCalendarCache endpoint.

How Calendar Resolution Works

When the Gantt loads in a consuming project:
  1. The Gantt reads nextedy.gantt.workitemCalendar.projectId to determine the source project
  2. For each resource, it searches for a Calendar work item in the source project where the Assignee matches the user and the From/To date range contains today
  3. If a user calendar is found, it loads the regular working hours and all linked exceptions (Time Off, Time On, Tweak) via the affects link role
  4. If no user calendar is found, the global calendar (specified by nextedy.gantt.workitemCalendar.globalID) is used as the fallback
For example, a Time Off (“New Time Off John Holiday”) is defined under John’s Calendar in the central calendar project:
Calendar project Gantt with the Global Calendar and John's Calendar work items and a New Time Off John Holiday exception bar spanning several April days
In the consuming project, those exact dates appear as grey non-working spaces for John, and a work item scheduled over them does not overwrite the holiday:
Consuming-project resource view where John Requirement's daily allocation bubbles are interrupted by grey non-working days matching his holiday, with a work item tooltip showing the scheduled dates
Each user-specific calendar in the shared project must have the Assignee field set to the correct Polarion user. Without this, the Gantt cannot match calendars to resources in consuming projects.

Verify

You should now see that time off and custom working hours defined in the central calendar project appear as grey markers and adjusted capacity values in the resource view of each consuming project’s Gantt chart. A Tweak in the central calendar — here “New Tweak Mark” on Mark’s Calendar, limiting his capacity for those days — is another exception that flows through to consuming projects:
Calendar project Gantt showing Mark's Calendar with a New Tweak Mark exception bar over the March 24-25 dates
Because the tweak lowers Mark’s available capacity below his assigned workload, the consuming project’s resource view flags those days with red overallocation bubbles, and the tooltip reports him overallocated by 0.1 against a total capacity of 2:
Consuming-project resource view with Mark Test's March 24-25 allocation bubbles in red and a tooltip reading Overallocated by 0.1, Allocated Capacity 2.1, Total Resource Capacity 2

See Also

Last modified on July 10, 2026