# Actions

## Adding an action

Drag and drop the **Add action** icon onto the view to open the **Select an action type** screen.

| **Fields**              | **Remarks**                                                                              |
| ----------------------- | ---------------------------------------------------------------------------------------- |
| Application             | Allows an action to be created based on the selected application                         |
| Synchronization         | Allows a synchronization type action to be created (synchronization bar)                 |
| Manual                  | Allows a manual type action to be created (an action that is not associated with a form) |
| Sub-process independent | Allows an independent sub-process type action to be created                              |
| Sub-process embedded    | Allows an embedded sub-process type action to be created                                 |

## Action editing screen

| **Tab**       | **Remarks**                                                                           |
| ------------- | ------------------------------------------------------------------------------------- |
| Information   | Displays the action form in edit mode                                                 |
| Parameters    | Displays the list of required and additional parameters of an application type action |
| Next actions  | Displays the list of actions following the current action in the workflow process     |
| Notifications | Displays the automatic and additional notification lists for the action               |

## Information tab

<figure><img src="https://content.gitbook.com/content/Et2LJRDQRW5N7iyOa0uy/blobs/dUfTQ3LYjZ7zDC5vhRTQ/edit_action_information.png" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
The fields displayed in the **Edit action** panel vary depending on the action type (for example, a human-based web form action or a sub-process action).
{% endhint %}

| **Fields**                                              | **Remarks**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Application or action type                              | Type of action or application used by the action                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Name                                                    | Unique identifier for the action; must respect nomenclature and be limited to 30 characters (required field)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Description                                             | Action description (limited to 255 characters)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| Participant \[1]                                        | Participant involved in the action (required field)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| Sub-process \[1]                                        | <p>Sub-process associated to the action (required field)</p><p></p><p>The list of available sub-processes is built according to the process status:</p><ul><li>If the process is active, you can choose only active or archived sub-processes</li><li>If the process is in test or under construction, you can choose in test, active, or archived sub-processes</li></ul><p>⚠️ <strong>Warning:</strong> If you change the sub-process to another one, all of the current parameters of the previous sub-process will be deleted.</p>                                                                                                                                                                                             |
| Sub-process version                                     | <p>The sub-process version (optional)<br></p><p><strong>Auto</strong> finds the most recent active, in test, or archived version (in that order) and chooses it, but if you specify a specific version in the <strong>Number</strong> field, that version will be chosen regardless of its status.</p>                                                                                                                                                                                                                                                                                                                                                                                                                             |
| Sub-process requester \[1]                              | Process users automatically defined as the requester of the sub-process (required field)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Assignment method \[2]                                  | Method of assigning the action to a participant (required field)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Retrieve users from \[3]                                | Process data containing a list of usernames (separated by commas) of the persons to whom the action will be assigned (required field)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| Split mode                                              | <p>Sets the action's behavior between a traditional <strong>synchronization bar</strong> and a <strong>split bar</strong>.<br><br><strong>Disabling incoming transition synchronization:</strong></p><ul><li>Checked (split bar): Do not synchronize incoming transitions (e.g. parallel actions)</li><li>Unchecked (synchronization bar): Synchronize incoming transitions (e.g. parallel actions) </li></ul><p>✏️ <strong>Note:</strong> Applicable to <strong>synchronization</strong> and <strong>split</strong> bars only.</p>                                                                                                                                                                                                |
| Begin block activity                                    | <p>Defines a new block of activities specifying the <strong>begin</strong> action of the block (e.g. <strong>split action</strong>). The <strong>split</strong> action can be any type;  the current synchronization bar will be automatically considered as the <strong>end</strong> action of the block (e.g. <strong>joint action</strong>).<br></p><p>✏️ <strong>Note:</strong> Applicable to <strong>synchronization</strong> bars only.</p>                                                                                                                                                                                                                                                                                  |
| Lead time \[4]                                          | <p>Amount and unit of time before the action is considered late; the value can be specified by a fixed value or retrieved at runtime from a data value.</p><p></p><p><strong>Units:</strong></p><ul><li>Years</li><li>Months</li><li>Days (takes working days into account)</li><li>Hours (takes working days and hours into account)</li><li>Minutes (takes working days and hours into account)</li><li>Seconds (takes working days and hours into account)</li></ul><p>You can choose the way the lead time will be calculated by checking (or not checking) the <strong>Use working days/hours to calculate the duration</strong> option.</p>                                                                                  |
| Pause during                                            | <p>Amount and unit of time a <strong>synchronization</strong> or <strong>split</strong> bar will be paused before launch; the value can be specified by a fixed value or retrieved at runtime from a data value</p><p></p><p>You can choose the way the pause time will be calculated by checking (or not checking) the <strong>Use working days/hours to calculate the duration</strong> option.</p><p></p><p>✏️ <strong>Note:</strong> Applicable to <strong>synchronization</strong> and <strong>split</strong> bars only.</p>                                                                                                                                                                                                  |
| Delay / Start time                                      | <p>Amount and unit of time a <strong>system</strong> action will be delayed before launch; the value can be specified by a fixed value or retrieved at runtime from a data value<br><br>You can choose the way the delay/start time will be calculated by checking (or not checking) the <strong>Use working days/hours to calculate the duration</strong> option.</p><p></p><p>You can also choose to start the first action execution without the specified delay by checking the <strong>Skip delay for the first execution when action is in direct loop</strong> option (enabled by default).</p><p></p><p>✏️ <strong>Note:</strong> Applicable to system actions only (e.g. assembly, web service, web procedure, etc.).</p> |
| Cancel the assignment if the delay is greater than \[5] | The action assignment can be automatically cancelled if the delay is greater than this specified value. You must specify a duration unit for this field.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Completion mode                                         | <p>Indicates if the action must be completed by the workflow engine in background</p><p></p><p>This option is useful when the completion takes a long time (a lot of notifications, the action is followed by a web service or a web process, etc.).</p><p></p><p>In this case, the user doesn't have to wait for the action completion to be redirected to the request follow-up form or the portal home page (according to the redirection setting defined in the Configuration Panel by the administrator).</p>                                                                                                                                                                                                                 |
| Direct loop history                                     | <p><strong>Keep direct loop actions history:</strong></p><ul><li>Checked (default): Creates a separate action for every execution when the action loops to itself only (original behavior)</li><li>Unchecked: Creates a single action for all executions when the action loops to itself only</li></ul><p>✏️ <strong>Note:</strong> Applicable to system actions only (e.g. assembly, web service, web procedure, etc.).</p>                                                                                                                                                                                                                                                                                                       |
| Visible                                                 | Indicates if the action is displayed in the request follow-up form's actions history in the User Portal                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| Help text \[6]                                          | Help text for the action, visible in the User Portal; a link allows this text to be edited                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Help link                                               | URL of an external help document for the action, visible in the User Portal                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Support email                                           | Email address for support on the action, visible in user mode                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Icon size                                               | The action icon size for the process workflow graphical view; check **Apply size to all actions** to change the size of all action icons at once                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Internal ID                                             | Action’s ID                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |

1. If the action is a sub-process.
2. If the action is an application.
3. Available for **Automatic to the person** and **Manual** assignment methods.
4. Enabled if the assignment method is **Manual**.
5. Enabled if a lead time is specified.&#x20;
6. The default help text limit of 10,000 characters can be customized by editing the value of the `AdministrationMaxHelpTextSize` parameter in the `web.config` file.

## Deleting an action

Only a process/folder manager or an administrator can delete an action. If the process is active or archived, the action cannot be deleted.

## Adding a loop on the first action

It's not possible to create a transition leading back to the first action of a process (this isn't the same as a loop transition, which is permitted). You must add a new action that will be automatically assigned to the requester and create a loop with it.

#### 📌 Example

Here, the action `UPDATES` is added:

`- INITIATES > VALIDATES > UPDATES > VALIDATES > UPDATES > VALIDATES > ...`

## Assignment methods

### Automatic

| **Method**                                                        | **Remarks**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Automatic to the requester                                        | The action is assigned to the user who initiates the request (e.g. first action of the process is assigned to the requester).                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| Automatic to the action initiator \[1]                            | The action is assigned to the user who handled the previous action (e.g. launch of several actions one after the other by the same person).                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| Automatic to the person \[2]                                      | <p>If the type of participant is <strong>Person</strong>, the action is assigned to the user associated with the participant.</p><p></p><p>If the type of participant is <strong>List of persons</strong>, the action can be assigned to the user whose username is found in the chosen process data. If the process data contains a list of usernames (separated by commas) then one instance of the activity is created and assigned to each user of the list. In this case, an assignment error might occur if the assigned user is not associated with the participant.</p> |
| Automatic to the person who handled... (an action)                | The action is assigned to the user who handled the selected action (e.g. the final approval must be done by the same user who approved first). The list of available actions to select (in the second drop-down) will be the ones to which the selected participant has previously been associated.                                                                                                                                                                                                                                                                             |
| Automatic to the manager of the requester                         | The action is assigned to the manager of the user who initiates the request. An assignment error might occur if no manager is associated with the requester.                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Automatic to the manager of the action initiator                  | The action is assigned to the manager of the user who handled the previous action. An assignment error might occur if no manager is associated with the action initiator.                                                                                                                                                                                                                                                                                                                                                                                                       |
| Automatic to the manager of the person who handled  … (an action) | The action is assigned to the manager of the user who handled the selected action. An assignment error might occur if no manager is associated with the user who handled the selected action. The list of available actions to select (in the second drop-down) will be the ones that the selected participant has previously been associated to.                                                                                                                                                                                                                               |
| Automatic to the system                                           | Used for a synchronization related application or an automatic application (web procedure, asynchronous web procedure, or web service).                                                                                                                                                                                                                                                                                                                                                                                                                                         |

1. The **Automatic to the action initiator** method is available if the participant of the previous action is the same as the participant of the current action.
2. If the **Automatic to the person** method is selected, the **Retrieve the user from the data** field must be filled in.

### Manual

| **Method**                                      | **Remarks**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Manual by the action initiator                  | The user who handled the previous action selects the user to receive the next action assignment in the participant user list.                                                                                                                                                                                                                                                                                                                                                                                   |
| Manual by the person who handled... (an action) | <p>The user who handled the selected action chooses the user who will receive the next action assignment in the participant user list. The list of available actions to select (in the second drop-down) menu will be the ones to which the selected participant has previously been associated.</p><p></p><p>For processes that contain sub-processes or automatic applications, this method can replace <strong>By the action initiator</strong> when the previous action has been handled by the system.</p> |
| Manual by the coordinator                       | (Dispatching) One of the coordinators (of the selected participant) assigns the action to a user associated with the action participant.                                                                                                                                                                                                                                                                                                                                                                        |
| Self-service                                    | The first user associated with the participant who decides to handle the action receives the action assignment, at which time others are not able to handle the action anymore.                                                                                                                                                                                                                                                                                                                                 |

### Available assignment methods by action type

The following table shows the available assignment methods depending on the action type (synchronization, application, or sub-process) and the action application type (web procedure, web service, asynchronous web procedure, or web application).

<table data-header-hidden><thead><tr><th>Available assignment methods</th><th width="259" align="center">Synchronization</th><th align="center">Web procedure, web service, asynchronous web procedure</th><th align="center">Web application</th><th align="center">Sub-process</th></tr></thead><tbody><tr><td><strong>Available assignment methods</strong></td><td align="center"><strong>Sync</strong></td><td align="center"><strong>Web procedure, web service, async web procedure</strong></td><td align="center"><strong>Web application</strong></td><td align="center"><strong>Sub-process</strong></td></tr><tr><td><strong>Automatic</strong></td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td></tr><tr><td>Automatic to the requester</td><td align="center">❌</td><td align="center">❌</td><td align="center">See next table</td><td align="center">✔️</td></tr><tr><td>Automatic to the action initiator [1]</td><td align="center">❌</td><td align="center">❌</td><td align="center">✔️</td><td align="center">✔️</td></tr><tr><td>Automatic to the person [2]</td><td align="center">❌</td><td align="center">❌</td><td align="center">✔️</td><td align="center">✔️</td></tr><tr><td>Automatic to the person who handled...</td><td align="center">❌</td><td align="center">❌</td><td align="center">See next table</td><td align="center">✔️</td></tr><tr><td>Automatic to the manager of the requester</td><td align="center">❌</td><td align="center">❌</td><td align="center">See next table</td><td align="center">✔️</td></tr><tr><td>Automatic to the manager of the action initiator</td><td align="center">❌</td><td align="center">❌</td><td align="center">See next table</td><td align="center">✔️</td></tr><tr><td>Automatic to the manager of the person who handled...</td><td align="center">❌</td><td align="center">❌</td><td align="center">See next table</td><td align="center">✔️</td></tr><tr><td>Automatic to the system</td><td align="center">✔️</td><td align="center">✔️</td><td align="center">See next table</td><td align="center">✔️</td></tr><tr><td><strong>Manual</strong></td><td align="center"></td><td align="center"></td><td align="center"></td><td align="center"></td></tr><tr><td>Manual by the action initiator</td><td align="center">❌</td><td align="center">❌</td><td align="center">See next table</td><td align="center">❌</td></tr><tr><td>Manual by the person who handled...</td><td align="center">❌</td><td align="center">❌</td><td align="center">See next table</td><td align="center">❌</td></tr><tr><td>Manual by the coordinator</td><td align="center">❌</td><td align="center">❌</td><td align="center">See next table</td><td align="center">❌</td></tr><tr><td>Self-service</td><td align="center">❌</td><td align="center">❌</td><td align="center">See next table</td><td align="center">❌</td></tr></tbody></table>

1. The **Automatic to the action initiator** method is available if the participant of the previous action is the same as the participant of the current action.
2. If the **Automatic to the person** method is selected, the **Retrieve the user from the data** field must be filled in.

### Available assignment methods for Web application actions by participant type and role

The following table shows the available assignment methods when selecting an **Application** action type and a **Web application** action application type depending on the associated participant type and participant role.

| **Available assignment methods**                      | **Person** | **List of persons: Participant** | **List of persons: Requester** | **List of persons with coordinator: Participant** | **List of persons with coordinator: Requester** |
| ----------------------------------------------------- | :--------: | :------------------------------: | :----------------------------: | :-----------------------------------------------: | :---------------------------------------------: |
| **Automatic**                                         |            |                                  |                                |                                                   |                                                 |
| Automatic to the requester                            |      ❌     |                 ❌                |               ✔️               |                         ❌                         |                        ✔️                       |
| Automatic to the action initiator \[1]                |     ✔️     |                 ❌                |                ❌               |                         ❌                         |                        ❌                        |
| Automatic to the person \[2]                          |     ✔️     |                ✔️                |               ✔️               |                         ✔️                        |                        ✔️                       |
| Automatic to the person who handled...                |      ❌     |                ✔️                |               ✔️               |                         ✔️                        |                        ✔️                       |
| Automatic to the manager of the requester             |      ❌     |                ✔️                |               ✔️               |                         ✔️                        |                        ✔️                       |
| Automatic to the manager of the action initiator      |      ❌     |                ✔️                |               ✔️               |                         ✔️                        |                        ✔️                       |
| Automatic to the manager of the person who handled... |      ❌     |                ✔️                |               ✔️               |                         ✔️                        |                        ✔️                       |
| Automatic to the system                               |      ❌     |                 ❌                |                ❌               |                         ❌                         |                        ❌                        |
| **Manual**                                            |            |                                  |                                |                                                   |                                                 |
| Manual by the action initiator                        |      ❌     |                ✔️                |               ✔️               |                         ✔️                        |                        ✔️                       |
| Manual by the person who handled...                   |      ❌     |                ✔️                |               ✔️               |                         ✔️                        |                        ✔️                       |
| Manual by the coordinator                             |      ❌     |                 ❌                |                ❌               |                         ✔️                        |                        ✔️                       |
| Self-service                                          |      ❌     |                ✔️                |               ✔️               |                         ✔️                        |                        ✔️                       |

1. The **Automatic to the action initiator** method is available if the participant of the previous action is the same as the participants of the current action.
2. If the **Automatic to the person** method is selected, the **Retrieve the user from the data** field must be filled in.

## Next action tab

| **Field**             | **Remarks**                                                      |
| --------------------- | ---------------------------------------------------------------- |
| Action to be added \* | Process action to add as the action following the current action |

\* An action can only be used once as the "next action" in the transition from the current action.

| **Columns**         | **Remarks**                                                  |
| ------------------- | ------------------------------------------------------------ |
| Next action         | Name of the next action                                      |
| Transitions to      | List of possible actions to follow                           |
| Condition/Exception | A link displays the transition’s condition form in edit mode |
| Deletion            | Clicking **`x`** deletes the transition to the next action   |
