# Process States

A BPM Process has a collection of states and the current state is the last element of the collection. Each change of state in a BPM Process store:

* A Time Stamp.
* The backoffice User that performed the change (if applicable).

State changes are free (with one exception) and can be only performed by a **backoffice** user . Once an **Aborted** state is **confirmed** can **NOT** be **rollbacked**.

The **Aborted** state is equal to **Paused** state until is **confirmed**. When a BPM Process is paused or aborted **no** action/event is performed by the process.

This is a **critical operation** for complex process and must well **analyzed before** it's **execution**. If the Process is **not** in **Running state** then tasks can **not** be performed and events are **ignored**.

![](https://3974112602-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LH4gGgyMb1_fhOg782r%2F-LHEeaoONyar00KMURGo%2F-LHEewytgAfMlEqAR1lt%2Fprocess-states.png?alt=media\&token=fb944503-bc5a-47d3-8043-e668e3ae76d5)

**List of automatic tasks after a BPM Process abortion is confirmed:**

* **Remove all tasks from BpmRunningTasksMatrix**
  * All running tasks are removed from the Task Matrix so user can not take any task of the aborted process.
* **No task is removed from BpmFinishedTasksMatrix**
  * The finished tasks of the aborted process are not removed from Task Matrix.
* **Remove assignments from BpmUsers**
  * If any user has an assignment in the aborted Process then the assignment is removed.
* **Remove timer events from BpmTimerEventMonitor**
  * All timers related to the Process are removed.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://bpmflow.gitbook.io/project/functional-and-technical-information/states/process-states.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
