Skip to main content

Configure Upstream Cross-Project Columns

To display linked items from another project in an itemLink or multiItemLink column, add the project parameter to the column’s typeProperties:
{
  "columns": [
    {
      "header": "System Requirement",
      "binding": "sysReq",
      "type": "itemLink",
      "typeProperties": {
        "linkTypes": "systemRequirement",
        "linkRole": "refines",
        "project": "RequirementsProject"
      }
    }
  ]
}
For items from multiple projects, specify a comma-separated list:
{
  "typeProperties": {
    "linkTypes": "systemRequirement",
    "linkRole": "refines",
    "project": "RequirementsProject,EngineeringProject"
  }
}
diagram

Configure Downstream Cross-Project Tasks

To display and create downstream tasks in another project, use project or projects in the dataTypes.task section: Single target project:
{
  "dataTypes": {
    "task": {
      "type": "mitigationAction",
      "role": "mitigates",
      "project": "TasksProject"
    }
  }
}
Multiple target projects:
{
  "dataTypes": {
    "task": {
      "type": "mitigationAction",
      "role": "mitigates",
      "projects": "TasksProject,VerificationProject"
    }
  }
}
Use the project parameter for a single target project. Use projects (plural) when loading tasks from multiple projects. For itemLink/multiItemLink columns loading from multiple projects, the system saves new items to the first listed project by default.

Save New Items in the Current Project

When a column loads items from multiple projects, new items created from that column are saved in the first listed project. To force new items into the current project, add createInCurrentDocument:
{
  "typeProperties": {
    "project": "ProjectA,ProjectB",
    "linkTypes": "systemRequirement",
    "linkRole": "refines",
    "createInCurrentDocument": true
  }
}
When createInCurrentDocument is not set, the system uses the first project listed in the project parameter for saving new items. Reorder the project list to control the default save target.

Dynamic Configuration via Configuration Properties

For portable configurations that work across different project environments, use Risksheet Configuration Properties to dynamically resolve project IDs, link roles, and types:
{
  "typeProperties": {
    "linkRole": "$config.getRisksheetProjectProperties().getProperty('taskLinkRole', 'mitigates')",
    "linkTypes": "$config.getRisksheetProjectProperties().getProperty('taskLinkTypes', 'mitigationAction')",
    "project": "$config.getRisksheetProjectProperties().getProperty('taskProject', 'DefaultProject')"
  }
}
This pattern reads values from the project’s Risksheet Configuration Properties with fallback defaults, eliminating hardcoded project IDs. It makes configurations portable when deploying the same Risksheet template across multiple projects.

Cross-Project Work Item Operations

Risksheet supports full CRUD operations on cross-project items:
OperationBehavior
DisplayItems from configured projects appear in columns with their project-qualified IDs
CreateNew items saved to the first listed project or current project (with createInCurrentDocument)
UpdateEditing cross-project items updates them in their home project
Delete/UnlinkUnlinking removes the relationship; deletion removes the item from its home project
Items from different Polarion server instances cannot be displayed in the same Risksheet. Cross-project linking requires all projects to reside on the same Polarion server.

Limitations

LimitationDetails
Direct links onlyCross-project display works for directly linked items. Indirect links through intermediary work items in other projects require additional configuration.
Same server requiredAll linked projects must be on the same Polarion server instance.
Assignee field contextThe userRole: 'project_assignable' property fetches users from the Risksheet project, not the task’s project. Use a global role as a workaround.

Verify Your Configuration

After setting up cross-project linking:
  1. Open the Risksheet document and confirm that linked items from other projects appear in the configured columns
  2. Create a new linked item and verify it is stored in the expected project
  3. Confirm that autocomplete suggestions show items from all configured projects
  4. Check that unlinking and deletion work correctly for cross-project items
You should now see work items from other Polarion projects displayed in your Risksheet grid with full linking, creation, and editing capabilities.

See Also

KB ArticlesSupport TicketsSource Code
  • RisksheetDataStorage.java
  • AppConfig.ts
  • WorkItemBasedReview.java
  • DefaultTraceProvider.java
  • AppConfigParser.ts