Overview
Column values display custom data in workflow tables, showing information like patient names, file names, or other key data extracted from the workflow context. They can be defined at the workflow level (all steps) or step level (overrides).Basic Usage
Workflow-Level Columns
Define columns that appear for all steps using theWorkflow
constructor:
Step-Level Columns (Overrides)
Individual steps can override or add columns:Column Value Structure
Theget_display_col_values
parameter is a dictionary where:
- Keys: Column names displayed in the interface
- Values: Lambda functions that receive
WorkflowRunContext
and return a string orNone
None
values: Display as ”—” (em dash)
Data Sources
Start Data
Step Results
User Information
Safe Data Access
Always handle missing data gracefully:Best Practices
- Use descriptive column names:
"Patient ID"
not"ID"
- Provide fallback values: Always use
.get()
with defaults - Format data appropriately: Truncate dates, format numbers
- Keep lambdas simple: Move complex logic to separate functions
Column Inheritance
Column ordering follows a specific pattern based on the order columns are defined in the dictionary:Ordering Rules
- Workflow-level columns appear first in the order they were defined
- Step-level columns with the same key/name override workflow-level columns but maintain their original position
- Step-level columns with different keys are appended to the end in the order they were defined