Any concept may have a state propertyThe state model defines how each concept type (units, configurations, and configuration items) progresses through various states, establishing clear rules for transitions and property behaviors along the way. Each concept type has its own state model and therefore its own set of states and permissible transitions, allowing for a high degree of customization.
Within each state, properties can be treated differently—for instance, locked to read-only—ensuring that concepts remain consistent and appropriately controlled as they evolve. This flexible model not only influences processes like closing baselines, but also plays a key role in template creation, where reaching a “valid-template” state involves meeting specific criteria. Ultimately, the state model offers a structured framework for governing the entire lifecycle of concepts.
Navigate into Admin / Concept Type Definitions and select a concept and open a concept type. Click the State Model Tab
Use the Add button to define all states. Each state has name, key and transition fields. The key is necessary to attribute a particular state in the guard script. The transitions field is a multiselect field which caries a collection of available states, that the current state can transition to. I.e. if "State 1" has "State 2" and "State 3" in its transitions, then this means that if a component of that concept type would be in "State 1", then its state may be switched to "State 2" or "State 3" only - not to "State 4". This mechanism allows to form directed state change flows, e.g.: "Initial" > "In Progress" > "For Approval" > "Done".
Currently every update of a component unit is considered in the backend as a state change, even if the change doesn't include the state of the component. That is why it is necessary to reference the state itself in the transitions to allow property updates while keeping the current state.
It is possible to set custom treatments for properties of the concept type per state. Click a state row to make the state selected. Right of the list of states you find the property treatments of the selected state. Use the Add Property button to reference the necessary properties and the multiselect box to set appropriate treatments. E.g. if "State 1" has property "Prop 1" with treatment "read-only", that would mean, that component of that concept type will disable that "Prop 1" fields in its forms while the state of the component is "State 1".
Having defined the state model, click the Save button. That will save all changes for that concept type.
Not all transitions are possible. If the current state is a “closed baseline” or “valid template” state its not possible to create a transition to a state that is not a “closed baseline” or “valid template”. But transitions back and forth from “closed baseline” to “valid template” is possible