Skip to main content

Step 1: Mark Non-Working Days in Polarion

Before configuring the Gantt, define your holidays and non-working days in the Polarion working calendar:
  1. Navigate to Administration > Working Calendar in your Polarion project
  2. Select the dates you want to mark as non-working (holidays, company closures)
  3. Save the calendar changes

Step 2: Enable the Working Calendar in the Gantt Widget

Open the Gantt widget parameters and locate the Working Calendars section:
  1. Set Use Working Calendar to Yes
This is the master toggle that enables calendar-aware scheduling. When enabled, the Gantt respects non-working days when calculating task durations and resource capacity.
The Working Calendars settings are interdependent. Setting Use Working Calendar to Yes reveals the Load User Calendars option. Enabling that reveals Load Team Assignments. Each toggle progressively adds more calendar detail.

Step 3: Load Holiday Data via Gantt Config Script

To load the non-working days into the Gantt view, add the following to the widget parameters under Advanced > Gantt Config Script:
$workingCalendar.loadNotWorkingDays(2025).loadNotWorkingDays(2026).buildConfiguration()
Adjust the years to cover the time range you need. Each .loadNotWorkingDays(year) call loads holiday data for that specific year.
Loading calendar data for each year adds to the initial page load time. Load only the years relevant to your project timeline to keep performance optimal. For most projects, loading the current year and the next year is sufficient.

Step 4: Configure Year Range in Widget Parameters

For a more permanent configuration, set the year range in the Working Calendars widget parameters:
ParameterDescriptionRecommended Value
Next Years to LoadNumber of future years of calendar data to load1-2
Previous Years to LoadNumber of past years of calendar data to load1
Higher values ensure calendar data is available for long-range planning but increase startup time.

How Non-Working Days Appear

Once configured, non-working days are reflected in the Gantt in several ways:
  • Timeline cell highlighting — off-day cells receive a visual highlight distinguishing them from working days
  • Resource view — grey markers appear in the resource view for days where a user is unavailable
  • Duration calculations — when auto-scheduling is enabled, non-working days are skipped when computing task durations
If you mark a date as a global non-working day in the Polarion calendar, it is not possible to override it with a personal exception. A global Time Off applies to all users. To allow per-user exceptions, use the Work Item Calendar approach instead where Time On work items can override global Time Off.
If you modify the Polarion working calendar after the Gantt has been loaded, the changes may not appear immediately due to server-side caching. Enable the Cache Working Calendars widget parameter for performance, but remember to clear the cache after making calendar changes using the administration API endpoint.

Verification

You should now see:
  • Non-working days highlighted in the Gantt chart timeline
  • Grey markers in the resource view on holiday dates
  • Task duration calculations skipping non-working days when auto-scheduling is active

See Also

KB ArticlesSupport TicketsSource Code
  • prod-gantt-src/com.nextedy.polarion.gantt.client/cypress/e2e/working-calendars/csv-calendar.cy.ts
  • prod-gantt-src/com.nextedy.polarion.gantt.client/cypress/e2e/working-calendars/ganttOffDaysCellBackground.cy.ts
  • prod-gantt-src/com.nextedy.polarion.gantt.client/cypress/e2e/Aresource-view/AganttInitialEstimation.cy.ts
  • prod-gantt-src/com.nextedy.polarion.gantt/src/com/nextedy/polarion/gantt/model/impl/CalendarBuilder.java
  • prod-gantt-src/com.nextedy.polarion.gantt/src/com/nextedy/polarion/gantt/widget/GanttWidgetDependenciesProcessor.java