Skip to main content

Hierarchy Structure

diagram

Row Levels

Row levels are computed from column binding paths and expansion paths defined in sources.
PropertyTypeDescription
Level 0 (upstream)Root entityPrimary entity from the query from clause. No parent reference.
Level 1+ (downstream)Child entitiesNested entities reached through one-to-many or many-to-many relationships. Each level has a back reference to its parent.
Navigation pathstringDot-separated path from root entity to this level (e.g., systemRequirements.systemRequirement)
Editable propertiesstring[]List of column binding paths editable at this level
Levels are automatically determined from your column bindings and source expansion paths. You do not configure levels explicitly.

Merged Cells

In master-downstream hierarchies, cells belonging to the master (upstream) level automatically merge across all downstream rows of the same parent.
BehaviorDescription
Auto-mergeMaster-level columns span all child rows visually
Edit scopeEditing a merged cell updates the master entity, affecting all downstream rows
SelectionClicking a merged cell selects the master-level entity

Row Operations

Adding Rows

OperationButtonDescription
Add master itemadd0Creates a new top-level (Level 0) row with empty downstream collection
Add downstream itemadd1Creates a child row under the currently selected master entity
Ctrl+Space adds a new row at the currently selected level.

Removing Rows

OperationButtonDescription
Remove master itemremove0Deletes the master entity and all associated downstream items (cascading delete)
Remove downstream itemremove1Deletes only the selected child item without affecting the master or siblings
Removing a master item removes the entire hierarchy branch, including all downstream children.

Entity State Indicators

Row headers display visual indicators for the modification state of each entity:
StateCSS ClassDescription
Modifiedltc-entity--isModifiedEntity has been changed since last save
Addedltc-entity--isAddedEntity was newly created and not yet saved
Deletedltc-entity--isDeletedEntity is marked for deletion
Errorltc-entity--isErrorEntity has validation errors
Modified individual cells also receive the isModified class for cell-level change tracking.

Cell Selection and Navigation

FeatureDescription
Single cell selectionClick a cell to select it. Displays marquee border.
Range selectionDrag or Shift+Click to select a rectangular cell range
Read-only indicatorRead-only cells show a different marquee style
Toolbar aggregatesSelecting numeric cells displays aggregates (sum, count) in the toolbar

Undo and Redo

All operations support full undo/redo:
OperationDescription
Add rowUndo removes the row; redo re-adds it
Remove rowUndo restores the row; redo re-removes it
Cell editUndo reverts value; redo re-applies the change
Cell selectionSelection state is preserved across undo/redo

Relationship Types in the Tree

RelationshipCardinalityBehavior
One-to-manyone-to-manyParent row expands to show child rows beneath it
Many-to-manymany-to-manyUses association entities as intermediate level; supports linking mode
Many-to-onemany-to-oneDisplayed as reference columns (not tree levels); see Multi-Item Columns
  • Columns — column binding paths that determine tree structure
  • Sources — expansion paths that define hierarchy loading
  • Relationships — domain model relationship definitions
  • Cardinality — relationship cardinality types
  • Review Changes — review mode for inspecting modified rows

Source: Sheet component features, association management, domain model configuration
KB ArticlesSource Code
  • prod-powersheet-src/com.nextedy.powersheet.client/ltc-repo/packages/sheet/Associations.ts
  • DatabridgeMetadata.java
  • model.yaml
  • riskmanagement_model.yaml
  • powersheet.yaml