modelGanttSchedule
Properties, variants, types and bounds for modelGanttSchedule.
This reference describes the full structure of modelGanttSchedule. Paths include nested objects, list items and conditional branches. A branch selected by kind, contract or mode only admits its own properties.
Structure and values
| Field | Options / expected values | Description |
|---|---|---|
durationUnit |
"millisecond" | "hour" | "day" |
Required. Defines duration Unit for this object. Observe the type, variants and bounds in the Options column. |
progressScale |
"ratio" | "percent" |
Required. Defines progress Scale for this object. Observe the type, variants and bounds in the Options column. |
dependencies |
Array<closed object>; min length 1; max length 100 |
Required. Defines dependencies for this object. Observe the type, variants and bounds in the Options column. |
dependencies[].linkTypePath |
string; min length 1 |
Required. Defines link Type Path for this object. Observe the type, variants and bounds in the Options column. |
dependencies[].predecessor |
"source" | "target" |
Required. Defines predecessor for this object. Observe the type, variants and bounds in the Options column. |
Reading the contract
A path ending in [] describes each list item; {key} describes each dictionary value. The ↻ marker refers to the same recursive expression. Closed objects reject additional properties. Semantic validation denotes an additional check: matching a type does not make a reference, permission or transition valid. References must resolve in the Model and the current user context.
An older variant cannot accept properties belonging to a newer variant. The compiler checks the version and consistency of the complete Model.
Structural example
This fragment passes the schema for this section. Its business references must be defined in the enclosing Model.
{
"durationUnit": "millisecond",
"progressScale": "ratio",
"dependencies": [
{
"linkTypePath": "client",
"predecessor": "source"
}
]
}
Related references
Complete Model index · Build a Model
Applied examples : Assemble a coherent definition
The Form and record profile reference the same company, status and notes Fields.
Configuration
Contract object modelGanttSchedule. Properties and accepted values.
{
"durationUnit": "millisecond",
"progressScale": "ratio",
"dependencies": [
{
"linkTypePath": "client",
"predecessor": "source"
}
]
}
Variation and connection
Fragment placed in presentation.recordProfiles[]. Properties and accepted values.
{
"key": "client",
"definitionPaths": [
"workspace/clients/surface/client"
],
"editActionKey": "edit-client",
"identity": {
"title": {
"kind": "field",
"fieldPath": "fields/company"
},
"avatar": {
"kind": "initials",
"maximumLetters": 2
},
"subtitle": {
"kind": "field",
"fieldPath": "fields/status"
}
},
"valueLabels": [
{
"fieldPath": "fields/status",
"values": [
{
"value": "prospect",
"label": "Prospect"
},
{
"value": "active",
"label": "Active"
}
]
}
],
"card": {
"summary": {
"kind": "field",
"fieldPath": "fields/notes"
},
"tags": {
"namespace": "user",
"maximumVisible": 3
},
"metricKeys": [],
"openLabel": "Open client"
},
"queryBindings": [],
"metrics": [],
"detail": {
"primaryActionKey": null,
"creationActionKeys": [],
"actionKeys": [],
"sections": [
{
"kind": "fields",
"key": "follow-up",
"label": "Client follow-up",
"fieldPaths": [
"fields/notes",
"fields/status"
]
}
],
"settings": {
"fieldPaths": [
"fields/email"
]
},
"tags": {
"namespace": "user",
"maximumVisible": 3
},
"relatedGroups": [],
"primaryActionLabel": null
}
}
UI layout example
The illustrative layout below places this configuration in the Clients/Quotes app. Insert each fragment at the stated location, with Field, Query and Action references matching the Model declarations.
- Clients · Data
- References · Knowledge
- Preparation · Work
- Quotes · Product
durationUnit- millisecond
progressScale- ratio
dependencies- 1 item
Values above follow the configuration fragment; references resolve in the complete Model.