Skip to main content
Property interactions may vary between Risksheet versions. Test combinations in a development environment before deploying to production.

Interaction Categories

Configuration interactions fall into three categories:
CategoryDescription
OverrideOne property forces the value of another property regardless of explicit setting
DependencyOne property requires another property to be set for correct behavior
Co-occurrenceProperties that commonly appear together and affect the same feature area

Column Property Interactions

formula and readOnly

PropertiesInteraction TypeBehavior
columns[].formula + columns[].readOnlyOverrideWhen formula is set, readOnly is automatically forced to true. Setting readOnly: false on a formula column has no effect.
{
  "id": "rpn",
  "formula": "commonRpn",
  "readOnly": false
}
Result: Column is read-only despite readOnly: false because formula is set.

serverRender, type, and readOnly

PropertiesInteraction TypeBehavior
columns[].serverRender + columns[].type + columns[].readOnlyOverrideWhen serverRender is set, type is forced to text and readOnly is forced to true. Explicit values for type and readOnly are ignored.
{
  "id": "traceability",
  "serverRender": "traceabilityRenderer.vm",
  "type": "itemLink",
  "readOnly": false
}
Result: Column is text type and read-only despite explicit settings, because serverRender is set.

binding and id

PropertiesInteraction TypeBehavior
columns[].binding + columns[].idDependencyIf id is not specified, it is auto-generated from header or binding. The binding determines which Polarion work item field the column reads from and writes to.
Relying on auto-generated IDs can cause issues when other properties reference columns by ID (e.g., cellDecorators, views, sortBy, collapseTo). Always set id explicitly for columns that are referenced elsewhere.

type and binding (auto-detection)

PropertiesInteraction TypeBehavior
columns[].type + columns[].bindingDefault inferenceWhen type is not specified, Risksheet infers the type from the Polarion field type associated with the binding field ID. If inference fails, the column defaults to string type.

canCreate and column type

PropertiesInteraction TypeBehavior
columns[].canCreate + columns[].typeConditionalcanCreate is only meaningful for itemLink and multiItemLink column types. For other column types, the property is ignored. Default: true.

headerGroup and collapseTo

PropertiesInteraction TypeBehavior
columns[].headerGroup + columns[].collapseToDependencycollapseTo specifies which column ID to collapse into when the header group is collapsed. The referenced column must exist and should belong to the same headerGroup.

cellRenderer and isContentHtml

PropertiesInteraction TypeBehavior
columns[].cellRenderer + columns[].isContentHtmlCo-occurrenceWhen cellRenderer is set, the rendered output is typically HTML. Set isContentHtml: true to ensure the grid renders the HTML content rather than displaying it as escaped text.

format and type

PropertiesInteraction TypeBehavior
columns[].format + columns[].typeDependencyThe format property controls display formatting and is relevant for temporal types (date, datetime, time) and numeric types (int, float, currency). The format string interpretation depends on the column type.

DataTypes Property Interactions

dataTypes and levels

PropertiesInteraction TypeBehavior
dataTypes + levelsCo-occurrenceThe dataTypes configuration defines which work item types populate the grid, while levels defines how they are arranged hierarchically. Task-level columns should not have a level property set. The relationship between data types and levels determines the grid’s row structure.

dataTypes.risk.removeStrategy and rejectedAction/rejectedStatus/rejectedResolution

PropertiesInteraction TypeBehavior
removeStrategy + rejectedAction + rejectedStatus + rejectedResolutionDependencyWhen removeStrategy uses rejection-based removal (rather than permanent delete), the rejectedAction, rejectedStatus, and rejectedResolution properties define the workflow transition to execute. All three must be valid for the work item type’s workflow.
{
  "dataTypes": {
    "risk": {
      "type": "failureMode",
      "removeStrategy": "delete",
      "rejectedAction": "reject",
      "rejectedStatus": "rejected",
      "rejectedResolution": "invalid"
    }
  }
}
The rejectedAction must correspond to a valid workflow action available from the work item’s current state. If the action is not available (common with imported work items), the delete/reject operation fails with the error: no rejected action found.

dataTypes type and role

PropertiesInteraction TypeBehavior
dataTypes.<name>.type + dataTypes.<name>.roleCo-occurrenceThe type property specifies the Polarion work item type, and role specifies the link role used for relationships. Both are evaluated through the expression evaluator, supporting dynamic resolution from project properties.

dataTypes showInMenu and canCreate

PropertiesInteraction TypeBehavior
dataTypes.<name>.showInMenu + columns[].canCreateComplementaryshowInMenu: false hides the “+New” button from the toolbar for that data type. canCreate: false on individual columns disables inline creation from specific link columns. Both can be used independently or together.
  • showInMenu: false alone: Toolbar creation hidden, but column-level creation still available
  • canCreate: false alone: Column-level creation disabled, but toolbar creation still available
  • Both false: No creation path available for that item type

dataTypes document and createInDocument

PropertiesInteraction TypeBehavior
dataTypes.<name>.document + dataTypes.<name>.createInDocumentIndependentdocument controls which document items are loaded from (read scope). createInDocument controls where new items are stored (write target). These paths are completely independent — you can load from the whole project while creating in a specific document.
{
  "dataTypes": {
    "task": {
      "type": "mitigationTask",
      "role": "mitigates",
      "createInDocument": "Risks/Tasks"
    }
  }
}
Use the folder/documentId path format for createInDocument. Without this property, new items go to the project tracker instead of a specific document.

dataTypes and typeProperties

PropertiesInteraction TypeBehavior
dataTypes + typePropertiesOverrideThe typeProperties pattern allows dynamic resolution of type, role, project, and document from Risksheet Configuration Properties (project-level settings). Values resolved through typeProperties take precedence over hardcoded values in dataTypes.

Global Property Interactions

readonly and revision

PropertiesInteraction TypeBehavior
readonly + document revisionOverrideWhen viewing a historical revision (non-empty revision), readonly is automatically forced to true regardless of the configured value.

readonly and reviewer

PropertiesInteraction TypeBehavior
readonly + reviewerComplementaryreadonly: true makes the entire grid non-editable. reviewer: true enables reviewer mode, which restricts editing to review-specific controls. Both result in limited editing, but reviewer mode may allow review actions that readonly mode does not.

downstreamReadonly and dataTypes

PropertiesInteraction TypeBehavior
downstreamReadonly + dataTypesScope restrictiondownstreamReadonly: true makes all downstream linked items (tasks, controls) read-only. This affects all data types configured as downstream items. Individual column readOnly settings on downstream columns are overridden.

global.culture and column formats

PropertiesInteraction TypeBehavior
global.culture + columns[].formatDependencyThe culture setting affects how date, number, and currency values are formatted. Column-level format strings are interpreted in the context of the active culture. For example, date columns format dates differently for en (MM/DD/YYYY) vs. de (DD.MM.YYYY).

Styling Interactions

cellDecorators, styles, and columns

PropertiesInteraction TypeBehavior
cellDecorators + styles + columnsChainCell decorators reference CSS classes defined in styles. Decorators are applied to columns by matching the decorator key to a column ID or by being referenced from the column’s cellDecorator property. The chain is: column value -> decorator function -> CSS class toggle -> style applied.
{
  "cellDecorators": {
    "rpn": "function(info){ $(info.cell).toggleClass('rpn3', info.value > 350); }"
  },
  "styles": {
    ".rpn3": "background-color: #f8eae7 !important; color: #ab1c00 !important;"
  }
}

headers.rowHeader.renderer and cellDecorators

PropertiesInteraction TypeBehavior
headers.rowHeader.renderer + cellDecoratorsDependencyThe headers.rowHeader.renderer property references a named function from the cellDecorators section. The referenced function must be defined.

Views and Column Interactions

views and columns

PropertiesInteraction TypeBehavior
views + columns[].idDependencySaved view definitions reference columns by their id. View configurations toggle column visibility. Referenced column IDs must match id values in the columns array.

sortBy and columns

PropertiesInteraction TypeBehavior
sortBy + columns[].idDependencyThe sortBy array references column IDs to define default sort order. Referenced IDs must match existing column id values.

Interaction Summary Diagram

Source PropertyTarget PropertyInteraction
formulareadOnlyForced true
serverRenderreadOnlyForced true
serverRendertypeForced text
revisionreadonlyForced true
bindingtypeAuto-inferred if missing
bindingidAuto-generated if missing
dataTypeslevelsRow structure
removeStrategyrejectedAction / Status / ResolutionLinked settings
cellDecoratorsstylesCSS class references
rowHeader.renderercellDecoratorsFunction reference
viewscolumns[].idVisibility toggle
sortBycolumns[].idSort target
collapseTocolumns[].idCollapse target
global.cultureColumn formatInterpretation
documentcreateInDocumentIndependent paths
showInMenucanCreateComplementary controls

See Also