List definitions

The reference data your shop keeps beside the schedule — departments, maintenance logs, part catalogs — as lists you define.

Configuration → List definitions — “The shapes your lists take. A definition sets the columns — a maintenance log’s date and mileage, a parts list’s number and price — and any resource type can then carry a list of that shape.” Administrator role.

A list is rows and columns you define. Orkyo uses the same mechanism for organization master data such as departments and job titles, for a maintenance log that belongs to one machine, and for a shared catalog several resources point at.

Definition, instance, row

Three things, and the difference matters:

  • A definition is the shape: the columns and their types. Maintenance log is a definition.
  • An instance holds the rows. A shared instance is named and can be pointed at by many resources; a per-resource instance belongs to one resource and is created the first time someone adds a row to it.
  • A row is one record, one value per column.

Columns

Add column sets a key, a label, and a type:

  • Text — “A short line of text — a note, a part name.”
  • Number — “A numeric value — mileage, a price, a count.”
  • Yes / no — “A checkbox in the row form.”
  • Date — “A calendar date — serviced on, expires.”
  • Link — “An http(s) address — a manual, an invoice.”
  • Choice — “One of a set of options you define.”
  • Row of this list — a reference to another row of the same list. This is what makes a list a tree: a department points at its parent department.

A column’s key and type are fixed once the column exists, because both decide how stored values are read. The label, the options and the order can change at any time.

A column can be marked required. A Row of this list column cannot: the first row of an empty list has nothing to point at.

Shown in forms

Shown in forms picks the column that names a row wherever a row appears as one value — in a picker, as a heading, inside a reference cell. Leave it unset and the first column leads.

A reference column cannot be the display column. A reference is not a name, and choosing one would leave every row in the list showing an empty cell.

References and cycles

A Row of this list cell holds one other row of the same list. Orkyo checks three things when you save: the row you point at exists in this list, it is not the row itself, and the chain above it does not come back to where it started. A loop is refused with a message saying so.

Delete a row that others point at and their references are cleared. The rows stay; the cell empties.

Using a list

  • On a resource type — bind a definition to the type and its resources each carry a list of that shape. This is the maintenance-log case. Editors fill it in from the type’s Lists tab.
  • As a lookup field — a custom field of type lookup points at a shared instance, and the value is a row of it. Job title and department on a person work this way.
  • As organization master data — organization-scoped definitions appear on the Organization page.

Limits and deletion

A list instance holds at most 500 rows.

Deleting a definition “is refused while any field or shared list still uses this shape. Deactivate it instead to stop new fields from using it.”

Definitions, their columns and the rows of shared instances all travel in the workspace export. See Import and export.