Skip to main content

Overview

In Planningboard a resource is the entity that represents one swimlane row when the board uses an assignee-based or teams-based layout. Resources are created automatically from Polarion users and carry the data the board needs to show labels, calculate capacity, and route work items to the correct row.
Flow from Polarion User to a Resource object holding label, objectId, and multiCapacity fields, to a swimlane row on the board

Resource Fields


Label Resolution

The label field is set at resource creation time from the Polarion user object.
When a Polarion user account is deactivated or removed, the corresponding resource becomes unresolvable. Planningboard falls back to displaying the user ID as the swimlane label. Work items assigned to that user remain on the board but the swimlane label loses the human-readable name. Remove or reassign such work items to keep the board clean.

multiCapacity Map

The multiCapacity field is a map that supports storing more than one capacity value per resource. This is used when multiCapacityLoad is enabled in the widget configuration. When populated: multiCapacity entries are written when the board loads capacity data in multi-capacity mode. With multiCapacityLoad = false (the default), the map is empty and capacity is tracked at the plan level only. Units: capacity values are floating-point numbers. The unit depends on your project configuration — typically hours, derived from the hoursPerDay parameter and the plan date range.
multiCapacity is only meaningful when multiCapacityLoad = true is set in the widget parameters. See Capacity Parameters for the full capacity configuration reference.

Item-Level Resource Fields

Work items on the board carry resource assignment fields that connect them to a resource (swimlane row). These fields live on the Item model, not on the Resource model itself, but they are the link between a card and its swimlane.

Single vs. Multiple Resource Assignment

Multi-resource assignment (resourceIds) is present in the data model. Confirm behavior in the live Planningboard application for your version — specifically how an item with multiple resource IDs is displayed across swimlanes.

Resource Creation from Polarion Users

Resources are not configured manually. Planningboard creates them automatically by reading the Polarion user list for the project, filtered by the role configured in the widget’s User Role parameter.
Flow from Widget Parameter User Role project_user, to Polarion querying users with that role, to creating one Resource per user, to one swimlane row per Resource on the board
The Resource(IUser user) constructor sets label from user.getName() (or falls back to user.getId() when isUnresolvable() is true). A separate constructor Resource(ObjectID objectId) exists for deserialization and programmatic creation via the scripting API.

Assignment Modes That Use Resources

Resources (and their fields) are active only when the board’s assignmentMode routes items through user-based or enum-based swimlanes. The table below shows which modes create resource objects. For the full assignment mode reference, see Assignment Modes.

Capacity Fields on Resources

When capacity tracking is active, resource-level capacity data flows from the Teams Service into the multiCapacity map. The following configuration properties control this behavior. See Capacity Parameters and Capacity Properties for the full capacity configuration reference.
The swimlane Report Link widget parameter can embed the resource’s identity into a URL. Use the ${r.objectId.itemId} placeholder to insert the user ID of the resource associated with a swimlane. Example report link value:
This opens a Polarion Wiki report filtered to the user whose swimlane was clicked. Configure this in Widget Parameters > Swimlanes (Rows) > Report Link.

Configuration Example

The example below shows a board using Users (Assignee) (ASSIGNEE) mode with capacity tracking enabled via the Teams Service. Widget parameters (relevant excerpt):
Result on the board:
Board result with two swimlanes: Alex Seller at 24h of 40h capacity with cards WI-101 and WI-205, and Carl User at 40h of 40h capacity with card WI-310
Each swimlane label (Alex Seller, Carl User) comes from the resource’s label field. The capacity bar reads from the resource’s capacity data loaded by the Teams Service.

Limitations

  • Single-assignee only in standard modes: The resourceId (single resource) is the primary assignment path. Multi-resource assignment via resourceIds is present in the data model but capacity aggregation behavior across multiple resources should be verified in the live application.
  • No multi-assignee capacity distribution: Effort for a work item is not automatically split across multiple assignees. This is a known capacity-load limitation compared to Nextedy GANTT. See the capacity documentation for current behavior.
  • User role drives swimlane membership: Only users who hold the configured role in the project appear as swimlane rows. Users outside that role are not shown even if they are assigned to work items on the board.
  • Unresolvable users: Deactivated Polarion users cause a label fallback to user ID. There is no automatic cleanup of swimlane rows for removed users.

KB Articles
  • Planningboard Widget Parameters
  • Swimlane Assignment Types
  • Planningboard interface & basic interactions
Support TicketsSource Code
  • Resource.java
  • PlanningBoardWidgetDependenciesProcessor.java
  • Config.java
  • PlanningBoardWidget.java
  • PlanningBoardDataService.java
Last modified on July 10, 2026