Skip to main content

Overview

Multi-enum columns (also called multi-select enums) store collections of enum values. Unlike single-enum columns that hold one value, multi-enum columns hold arrays of multiple selected options. They work with both native Polarion multi-enum fields and string fields containing comma-separated enum IDs.
Multi-enum columns require a Polarion field type that supports multiple values, such as List<IEnumOption> or a string field configured to hold comma-separated values.

Column Type Declaration

Multi-enum columns are declared using the multiEnum: prefix followed by the enumeration identifier:
{
  "header": "Applicable Standards",
  "id": "applicableStandards",
  "type": "multiEnum:standards_list",
  "width": 200,
  "filterable": true
}

Configuration Properties

Basic Properties

PropertyTypeDefaultDescription
headerstringRequiredColumn header text displayed in the grid
idstringRequiredUnique column identifier used for data binding
typestringRequiredMust be multiEnum:<enumId> where enumId matches a Polarion enumeration
widthnumberAutoColumn width in pixels; typically larger than single-enum columns
minWidthnumber80Minimum column width to display multiple selections
bindingstringvalue of idData binding path for the column

Display and Formatting

PropertyTypeDefaultDescription
headerGroupstringNoneHeader group text for column grouping
headerGroupCssstringNoneCSS class for styling the header group
headerCssstringNoneCSS class for styling the column header
cellCssstringNoneCSS class applied to all cells in the column
showEnumDescriptionbooleanfalseDisplay enum option descriptions in the multi-select editor
wordWrapbooleantrueWhether text wraps within cells to accommodate multiple values
multiLinebooleantrueForces textarea-style rendering for multi-value display

Behavior and Editing

PropertyTypeDefaultDescription
readOnlybooleanfalsePrevents editing when true; set to false to enable edits on upstream multi-enum fields
filterablebooleantrueWhether the column appears in filter controls
sortablebooleantrueWhether users can sort by this column
editablebooleantrueControls whether cells can be edited

Styling and Appearance

PropertyTypeDefaultDescription
cssClassstringNoneAdditional CSS classes for custom styling
cellRendererstringNoneCustom renderer for specialized cell rendering
cellDecoratorIdstringNoneCell decorator for visual indicators on multiple selections

Data Type Mapping

Multi-enum columns support multiple Polarion field types for data storage:
Polarion Field TypeBehavior
List<IEnumOption>Native Polarion multi-enum field — recommended
StringStores comma-separated enum IDs (blank values filtered automatically)
IEnumOption[]Array of enum options
When using string fields to store multiple enums, blank values are automatically removed from the collection during save. Empty strings and null values do not create separate selections.

Example Configurations

Basic Multi-Select Standards

{
  "header": "Applicable Standards",
  "id": "applicableStandards",
  "type": "multiEnum:standards_list",
  "width": 180,
  "filterable": true,
  "sortable": true
}

Multi-Enum with Custom Styling

{
  "headerGroup": "Compliance",
  "headerGroupCss": "complianceGroup",
  "headerCss": "standardsHeader",
  "header": "Standards",
  "id": "standards",
  "type": "multiEnum:standards_enum",
  "cellCss": "standardsCell",
  "width": 200
}

Upstream Multi-Enum with Editing

Upstream (linked item) multi-enum columns are read-only by default. Enable editing with readOnly: false:
{
  "header": "Requirement Tags",
  "id": "requirementTags",
  "bindings": "requirement.tags",
  "type": "multiEnum:tag_list",
  "width": 180,
  "readOnly": false,
  "level": 2
}

Multi-Enum for Risk Categories

{
  "header": "Risk Categories",
  "id": "riskCategories",
  "type": "multiEnum:risk_category",
  "width": 200,
  "headerGroup": "Risk Assessment",
  "headerGroupCss": "riskGroup",
  "filterable": true,
  "showEnumDescription": true
}

Editor Behavior

The multi-enum editor provides a checkbox-based interface for selecting multiple values:

Selection Display

  • Cell Display: Selected values are displayed as a comma-separated list
  • Editing: Clicking the cell opens a dropdown showing all available options with checkboxes
  • Selection State: Currently selected options display with checkmarks
  • Option Order: Options appear in the enumeration’s defined order

Selection Mechanics

Use dependent enum rules (when released) to filter available options based on other column values. For example, show applicable standards only when a specific risk type is selected.

Empty Value Handling

Multi-enum columns handle empty values as follows:
ScenarioBehavior
No selections madeColumn displays empty; null/empty collection stored
Blank option selectedAutomatically filtered out during save
Comma-separated string (string field)Empty values between commas removed automatically
Edit and clear all selectionsCell becomes empty; collection cleared

Read-Only Upstream Multi-Enums

Upstream multi-enum columns (multi-enums showing linked item properties) are read-only by default. This prevents accidental modification of linked objects. Control this with the Polarion configuration property:
nextedy.risksheet.upstreamSubColumnsReadonly=false
To enable editing of a specific upstream multi-enum column, set readOnly: false:
{
  "bindings": "linkedItem.multiEnumField",
  "type": "multiEnum:enumId",
  "readOnly": false
}

Multi-Enum with Work Items (Advanced)

Multi-enum columns can reference work items using the special syntax multiEnum:@NoIDWorkItems. This allows selecting multiple work items as enum values:
{
  "header": "Linked Work Items",
  "id": "linkedItems",
  "type": "multiEnum:@NoIDWorkItems",
  "width": 250
}
Work item multi-enum syntax requires Polarion custom field configuration with appropriate XML setup. Consult your Polarion administrator for configuration details.

Filtering and Sorting

Filter Behavior

Multi-enum columns support filtering by:
  • Single Value: Filter rows containing a specific enum value (matches if any selected value matches)
  • Multiple Values: Filter rows containing any of the specified values
  • Empty/Not Empty: Filter rows with no selections vs. rows with selections

Sort Behavior

Multi-enum columns sort by:
  • Display Order: Lexicographic order of comma-separated display text
  • Count: Number of selected values (when configured)
  • First Value: First selected option in enumeration order

Comparison with Single-Enum

AspectSingle-EnumMulti-Enum
Values per cell1 or null0 or more
Column typeenum:enumIdmultiEnum:enumId
Polarion field typeIEnumOption or StringList<IEnumOption> or String
Editor styleDropdown (radio)Dropdown (checkboxes)
Blank handlingAllowed as nullFiltered out automatically
DisplaySingle value or emptyComma-separated list or empty
KB ArticlesSupport TicketsSource Code
  • GetSetUtil.java
  • AppConfig.ts
  • ExportToExcel.ts
  • RisksheetViewServlet.java
  • CustomMergeManager.ts