State Management
Summarize
Summary of State Management
State Management allows administrators to define State Models and State Transitions to control record transitions through a predefined list of states. This feature is crucial for maintaining organized workflows, such as moving a facility request from the Assigned state to Work In Progress. State Management is applicable to all instances in ServiceNow.
Show less
Key Features
- State Models: A state model outlines the expected workflow through a record's lifecycle for any table that extends the task table. Administrators can define state models using the State Model [sysstatemodel] table, specifying the model name and the associated task table.
- Condition Builder: This tool allows for the specification of conditions that govern the application of the state model and the required conditions for moving between states. For instance, a state model can be created for a Reservation Request table with states such as Held, Confirmed, Completed, and Canceled.
- State Transitions: Defined in the State Transitions [sysstatetransition] table, these transitions outline the conditions for entering or exiting each state, ensuring users cannot select invalid states based on current record conditions.
Key Outcomes
By implementing State Management, ServiceNow customers can expect:
- Streamlined record workflows that adhere to defined business processes.
- Reduced errors in state selection, as invalid transitions are denied across all input methods, including scripts and APIs.
- Enhanced control over task states, allowing for tailored state models that fit specific organizational needs.
State Management enables an administrator to define State Models and State Transitions that control how a record is allowed to transition through a predefined list of states.
An example of a state transition is when the State field in a facilities request is moved from the Assigned state to the Work In Progress state.
State Management is active for all instances.
What is a state model?
A state model is a list of states that describe an expected record workflow through the lifecycle of the record. State models can be defined for any table that extends the task table. State models simplify defining the state transitions allowed for a specific task type.
In the State Model [sys_state_model] table, define the name of the state model and which task table the state model is applied to. Use the condition builder to specify any conditions for applying the state model to records and any required condition for moving between states.
For example, you could define a state model for a new custom application for airline reservations. The custom application has a Reservation Request [reservation_request] table with 4 states: Held, Confirmed, Completed, and Canceled. You could define the state model to target the Reservation Request table, and then define the state transitions for each of the 4 states. When you enable the state model, the choice list for the State field includes only the choices allowed by the conditions in the state transitions.
What is a state transition?
State transitions are a list of conditions for entering or exiting each state defined for a table. In the State Transitions [sys_state_transition] table, use the condition builder to build a list of conditions required for entering or exiting each state.
To prevent users from choosing an invalid state, any attempt to update a record’s state is denied if it violates the state transitions, whether the attempt is through user input, a script, a Web API such as REST or SOAP, or any other source.
State transitions control the choice list for the State field on the target task table and prevent you from choosing any state value that does not adhere to the underlying process or does not meet the defined conditions for the transition.
For example, if the enter condition for the Completed state is State is Confirmed, only records in the Confirmed state can transition to the Complete state. When a record is in the Confirmed state, the only choice in the State field choice list is Completed.