Skip to main content

Add a Multi-Enum Column

Define the column in your risksheet.json configuration file using the multiEnum:EnumID type syntax:
{
  "headerGroup": "Risk Assessment",
  "headerGroupCss": "headRiskAssessment",
  "headerCss": "headRiskAssessment",
  "header": "Affected Systems",
  "bindings": "affectedSystems",
  "type": "multiEnum:affected_systems",
  "width": 180,
  "filterable": true,
  "level": 1,
  "id": "affectedSystems"
}
Key Configuration Properties:
PropertyValuePurpose
typemultiEnum:EnumIDEnables multi-select behavior (replace EnumID with your Polarion enum identifier)
bindingsField nameLinks to the Polarion work item custom field
filterabletrueAllows filtering by selected enum values
Use multiEnum:EnumID for multi-select columns, not enum:EnumID. The prefix enum: creates single-select dropdowns. This is the most common configuration mistake.
For columns that reference multiple work items using enum-based linking, use the multiEnum:@NoIDWorkItems syntax:
{
  "headerGroup": "Traceability",
  "headerGroupCss": "headTraceability",
  "headerCss": "headTraceability",
  "header": "Related Requirements",
  "bindings": "relatedRequirements",
  "type": "multiEnum:@NoIDWorkItems",
  "width": 200,
  "readOnly": false,
  "filterable": true,
  "level": 2,
  "id": "relatedReqs"
}
Workflow: diagram
The multiEnum:@NoIDWorkItems syntax works for both upstream (items this work item links to) and downstream (items that link to this work item) traceability. Configure the bindings property to match your Polarion custom field configuration.

Handle Multiple Downstream Work Item Types

When a risk can be mitigated by multiple downstream types (e.g., both Tasks and Issues), configure the dataTypes section with a comma-separated list:
"dataTypes": {
  "risk": {
    "type": "risk"
  },
  "task": {
    "type": "task,issue",
    "role": "mitigates",
    "name": "Mitigation",
    "zoomColumn": "taskTitle"
  }
}
Add a column to display the work item type:
{
  "headerGroup": "Mitigations",
  "headerGroupCss": "headMitigations",
  "headerCss": "headMitigations",
  "header": "Type",
  "bindings": "task.type",
  "readOnly": true,
  "minWidth": 170,
  "id": "mitigationType"
}
Set "readOnly": true for the type column. Users can select the work item type when creating new items, but once created, the type cannot be changed through RISKSHEET.

Type-Specific Custom Fields

You can add columns that display custom fields specific to certain work item types. If a field doesn’t exist for a specific type, RISKSHEET stores the value in a generic string field.
If you use multiEnum fields that exist only for specific work item types, ensure you’re running RISKSHEET version 25.2.1 or newer. Earlier versions had issues handling multiEnum fields when linking items that don’t have that field defined.

Discover Enum Field IDs

To find the correct EnumID for your multi-enum column:
  1. Navigate to Polarion Administration > Work Items > Custom Fields
  2. Locate your custom field
  3. Click Edit to view the XML configuration
  4. Find the <key> element — this is your EnumID
Example XML:
<custom-field id="custom">
  <key>affected_systems</key>
  <type>enum</type>
  <multi>true</multi>
  <enumeration>affected_systems_enum</enumeration>
</custom-field>
Use multiEnum:affected_systems as the column type.

Verification

After configuration, reload your RISKSHEET. You should now see: ✅ Multi-select dropdown when clicking the column cell
✅ Selected values displayed as comma-separated chips
✅ Ability to select/deselect multiple enum options
✅ Filter capability showing all selected values

See Also

KB ArticlesSupport TicketsSource Code
  • AppConfig.ts
  • GetSetUtil.java
  • RisksheetViewServlet.java
  • MultiEnumEditor.ts
  • ExportToExcel.ts