Skip to main content

Column Types

TypeDisplay FormatStorage FormatUse Case
dateYYYY-MM-DDISO 8601 date onlyStart dates, target dates, milestones
datetimeYYYY-MM-DD HH:MM:SSISO 8601 with timeTimestamps, deadlines with precision
timeHH:MM:SSTime onlyDuration start/end, work hours

Configuration Properties

Basic Date Column

NameTypeDefaultDescription
headerstringRequiredColumn header text
bindingstringRequiredPolarion field reference (e.g., targetDate, createdDate)
typestringauto-detectSet to date for date-only columns
widthnumberautoColumn width in pixels
readOnlybooleanfalsePrevent editing of date values
filterablebooleantrueAllow users to filter by date range
formatstringlocale defaultCustom date format string (see Globalize documentation)

Example: Basic Date Configuration

{
  "header": "Target Date",
  "binding": "targetDate",
  "type": "date",
  "width": 120,
  "filterable": true
}

DateTime Columns (Date + Time)

Datetime columns capture both date and time information for precise temporal tracking.
NameTypeDefaultDescription
headerstringRequiredColumn header text
bindingstringRequiredPolarion field reference
typestringauto-detectSet to datetime for date and time
formatstringlocale defaultFormat string for display (e.g., yyyy-MM-dd HH:mm:ss)
readOnlybooleanfalsePrevent editing

Example: DateTime Configuration

{
  "header": "Deadline",
  "binding": "dueDateTime",
  "type": "datetime",
  "width": 160,
  "format": "yyyy-MM-dd HH:mm"
}

Time-Only Columns

Time columns display and edit time values without date information, useful for duration tracking and shift management.
NameTypeDefaultDescription
headerstringRequiredColumn header text
bindingstringRequiredPolarion field reference
typestringauto-detectSet to time for time-only values
formatstringHH:mm:ssTime format string
readOnlybooleanfalsePrevent editing

Example: Time Configuration

{
  "header": "Work Start Time",
  "binding": "workStartTime",
  "type": "time",
  "width": 100
}

Date Input Behavior

User Input Formats

The system accepts multiple date input formats and automatically converts to ISO 8601:
Input FormatInterpretation
2026-02-12Parsed as YYYY-MM-DD
02/12/2026Parsed based on locale
2/12Parsed as relative to current year
todaySets to current date
tomorrowSets to next day

Keyboard Shortcuts

ShortcutAction
Ctrl+;Insert today’s date
/ Increment/decrement date by 1 day
Ctrl+↑ / Ctrl+↓Increment/decrement by 1 month

Format Strings

Date format strings use Globalize syntax for localization:
FormatExampleNotes
yyyy-MM-dd2026-02-12ISO 8601 standard
dd/MM/yyyy12/02/2026European format
MM/dd/yyyy02/12/2026US format
yyyy-MM-dd HH:mm:ss2026-02-12 14:30:00Full datetime
d MMM yyyy12 Feb 2026Abbreviated month

Example: Custom Format

{
  "header": "Review Date",
  "binding": "reviewDate",
  "type": "date",
  "format": "dddd, d MMMM yyyy"
}
This renders as: “Wednesday, 12 February 2026”

Localization and Culture

Date formatting respects the global culture setting in your risksheet.json configuration:
{
  "global": {
    "culture": "de-DE"
  }
}
Common culture codes:
CodeLanguageDate Format
en-USEnglish (US)MM/dd/yyyy
en-GBEnglish (UK)dd/MM/yyyy
de-DEGermandd.MM.yyyy
fr-FRFrenchdd/MM/yyyy
ja-JPJapaneseyyyy/MM/dd

Linking Date Columns to Polarion Fields

Date columns support binding to various Polarion field types:
Polarion Field TypeColumn TypeNotes
DateOnlydateNative date field
DatedatetimeIncludes time component
CustomField (Date)date or datetimeCustom field with date type
StringdateAuto-converted from ISO format

Example: Binding to Custom Date Fields

{
  "header": "Schedule Start",
  "binding": "customFields/scheduleStartDate",
  "type": "date",
  "width": 120
}

Comparison and Filtering

Date columns support advanced filtering and comparison operations:

Filter Operators

Equals: 2026-02-12
Before: < 2026-02-12
After: > 2026-02-12
Between: 2026-01-01 to 2026-12-31
Is empty
Is not empty

Comparison in Formulas

formulas.daysUntilDue = function(info) {
  var today = new Date();
  var dueDate = new Date(info.item['dueDate']);
  var diff = Math.ceil((dueDate - today) / (1000 * 60 * 60 * 24));
  return diff >= 0 ? diff : 'OVERDUE';
}

Visual Decision Matrix

Use CaseColumn Type
Date-only values (milestones, targets)date
Precise timestamp (deadlines, events)datetime
Time-only tracking (work hours, shifts)time
Use datetime for most risk management workflows where precision is important. Use date for planning dates where time is irrelevant. Time-only columns are rarely needed in FMEA/HARA analyses.
All date values are stored in ISO 8601 format internally (YYYY-MM-DD for dates, HH:MM:SS for times) regardless of display format. The display format only affects how users see the data in the grid.

Version Compatibility

FeatureAddedStatus
Date columnsv19.0Stable
DateTime columnsv19.0Stable
Time columnsv20.0Stable
Custom format stringsv21.0Stable
Culture-aware formattingv22.0Stable

Editing Date Values

When editing date cells, users see an inline date picker:

Disabling Date Picker

For read-only analysis columns, set readOnly: true:
{
  "header": "Analysis Date",
  "binding": "analysisDate",
  "type": "date",
  "readOnly": true
}

Common Patterns

Pattern 1: Risk Assessment Timeline

[
  {"header": "Identified", "binding": "identifiedDate", "type": "date"},
  {"header": "Target Mitigation", "binding": "targetDate", "type": "date"},
  {"header": "Resolution Deadline", "binding": "deadline", "type": "datetime"},
  {"header": "Closed", "binding": "closedDate", "type": "date", "readOnly": true}
]

Pattern 2: Review and Approval Tracking

[
  {"header": "Review Due", "binding": "reviewDueDate", "type": "date"},
  {"header": "Reviewed At", "binding": "reviewedDateTime", "type": "datetime", "readOnly": true},
  {"header": "Approved At", "binding": "approvedDateTime", "type": "datetime", "readOnly": true}
]

System Fields

Certain Polarion system fields are always read-only date columns:
FieldTypeRead-OnlyDescription
createddatetimeYesWork item creation timestamp
updateddatetimeYesLast modification timestamp
dueDatedateNoBuilt-in due date field
Source Code
  • GetSetUtil.java
  • PolarionAppConfigManager.java
  • CellPreviewFormatter.ts
  • risksheet.json
  • SheetConstants.ts