# 3 BPMN Actions

# 3.1 Create entity

<span class="--l sentence_highlight">This action allows you to create entity records present within the system (basic or custom modules).</span><span class="--r sentence_highlight">  
</span>

<span class="--l sentence_highlight">For each individual field, a static or dynamic value (thus taken from the entities involved in the process itself) can be set (Figure 1)</span>

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/pJlimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/pJlimage.png)

<span class="--l sentence_highlight">Figure 1</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l sentence_highlight">To select a dynamic value, the system provides the “Select Option” picklist from which the entity fields of the modules involved within the process can be accessed (Figure 2)</span>

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/De5image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/De5image.png)

<span class="--l sentence_highlight">Figure 2</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l --r sentence_highlight">CAUTION: For the “Picklist” and “User” type fields, in order to use the “Select Option” field you must first select the “Other” picklist item available on the left (Figure 3)</span>

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/B6vimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/B6vimage.png)

<span class="--l sentence_highlight">Figure 3</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l sentence_highlight">PLEASE NOTE: the system automatically performs a filter based on the source field from which the “Select Options” picklist is being consulted, consequently it will only show fields whose type can be accepted by the source field.</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l --r sentence_highlight">If, for example, within the “Connected to” field of the Customer Care form I wanted to enter the contents of the “Last Name” text type field of the Lead form, the system will not make that field available, this is because it will only allow selection of the columns of the “Related to” type table field. </span><span class="--l --r sentence_highlight">(Figure 4)</span>

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/85Mimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/85Mimage.png)

<span class="--l sentence_highlight">Figure 4</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l --r sentence_highlight">Also, again from the Create Entity action, we have the option of triggering a re-direct to the newly created entity or to an entity involved in the process. </span><span class="--l --r sentence_highlight">(Figure 5)</span>

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/0xfimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/0xfimage.png)

<span class="--l sentence_highlight">Figure 5</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l sentence_highlight">Clicking on the “New Entity Created” button will redirect the user to the new record created in this specific action.</span><span class="--r sentence_highlight">  
</span>

<span class="--l --r sentence_highlight"><span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">Instead</span><span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">,</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">selecting</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">the</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">ID</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">of</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">one</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">of</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">the</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">other</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">entities</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">involved</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">in</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">the</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">process</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">will</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">redirect</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">the</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">user</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">to</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">the</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">record</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">of</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">that</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">specific</span> <span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">form</span><span class="--l --r hover:bg-blue-100 hover:dark:bg-blue-600">.</span></span>

# 3.2 Update entity

<span class="--l sentence_highlight">This action allows updating an entity (instance of a module) directly involved in the process or otherwise an entity related to them.</span><span class="--r sentence_highlight">  
</span>

<span class="--l --r sentence_highlight">Static or dynamic values (thus taken from the entities involved in the process itself) can be reported for each individual field.</span>

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/vqPimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/vqPimage.png)

<span class="--l sentence_highlight">Figure 1</span>

<span class="--l --r sentence_highlight">To select a dynamic value, the system provides the “Select Option” picklist from which the entity fields of the modules involved within the process can be accessed (Figure 2)</span>

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/T7Jimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/T7Jimage.png)

<span class="--l sentence_highlight">Figure 2</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l --r sentence_highlight">CAUTION: For the “Picklist” and “User” type fields, in order to use the “Select Option” field you must first select the “Other” picklist item available on the left (Figure 3)</span>

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/R7Nimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/R7Nimage.png)

<span class="--l sentence_highlight">Figure 3</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l sentence_highlight">PLEASE NOTE: the system automatically performs a filter based on the source field from which the “Select Options” picklist is being consulted, consequently it will only show fields whose type can be accepted by the source field.</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l --r sentence_highlight">If, for example, within the “Connected to” field of the Customer Care form I wanted to enter the contents of the “Last Name” text type field of the Lead form, the system will not make that field available, this is because it will only allow selection of the columns of the “Related to” type table field. </span><span class="--l --r sentence_highlight">(Figure 4)</span>

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/0Olimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/0Olimage.png)

<span class="--l sentence_highlight">Figure 4</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l --r sentence_highlight">As of version 24.08, it is also possible to update fields of type “Related to” created within dynamic process helper forms (Figure 5)</span>

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/OlRimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/OlRimage.png)

Figure 5

# 3.3 Delete entity

<span class="--l sentence_highlight">This action allows you to delete an entity (module instance) involved within the process.</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l sentence_highlight">PLEASE NOTE: The record deleted by this action is not completely deleted from the Data Base but is placed in the “Trash” section.</span>

<span class="--l --r sentence_highlight">To prevent the user from encountering an error message (being on a deleted record), the redirect function is usually used to redirect the user to a new (newly created) or existing instance.</span>

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/RXgimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/RXgimage.png)

# 3.4 Send Notification

<span class="--l --r sentence_highlight">This action allows internal notifications to be sent to system users viewable in the “Notifications” section marked by an icon depicting a bell in the top right menu.</span>

[![screenshot-2024-10-29-143219.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/screenshot-2024-10-29-143219.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/screenshot-2024-10-29-143219.png)

<span class="--l sentence_highlight">Figure 1</span>

<span class="--l --r sentence_highlight">  
</span>

<span class="--l sentence_highlight">MAIN FIELDS</span>

<span class="--l sentence_highlight">- **Description** -&gt; represents the body of the notification; specific text can be set with static and/or dynamic data belonging to the entities involved in the process.</span>

<span class="--l sentence_highlight">- **Created by** -&gt; represents the user who will turn out to be the creator of the notification (sender)</span>

<span class="--l sentence_highlight">- **Assigned to** -&gt; represents the user who will turn out to be the recipient of the notification</span>

<span class="--l --r sentence_highlight">- **Attached to** -&gt; represents the entity (instance of a module) to which the notification will be attached</span>

[![Screenshot 2025-05-30 151043.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/screenshot-2025-05-30-151043.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/screenshot-2025-05-30-151043.png)

Figure 2 (click on the image for a higher graphic resolution)

Depending on the user’s preferences, notifications can be sent as real internal notifications in the mode described above or as classic emails (Figure 3)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/LzLimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/LzLimage.png)

Figure 3

If the "Email" mode has been set, the following additional fields must be filled in (Figure 4)

\- **Subject** -&gt; represents the object that will be sent to the mail

\- **Sender mail** -&gt; represents the sender’s mail

\- **Sender name** -&gt; represents the alias relative to the sender

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/Kg0image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/Kg0image.png)

Figure 4

# 3.5 Send Email

This action allows you to send automatic emails with the possibility of attaching documents and linking the mail to an entity (standard or custom) in such a way that it remains historicized.

In the body of the email, it is possible to report on the classic static and/or dynamic values other general functions such as the current date/time, the link to the desired entity (internal for users or external for portal-side customers) (Figure 1)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/3mzimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/3mzimage.png)

Figure 1 (click on the image for a higher graphic resolution)

MAIN FIELDS

\- **SMTP Serve** -&gt; from version 23.08 you can specify how to use the outgoing mail server account to be used as sender. (Figure 2)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/0V6image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/0V6image.png)

Figure 2

\- Default -&gt; in the case that in the module Messages of the user indicated there is a configured account, the system will use the server associated with it, in the case that no account is configured the system will use the server present in   
Settings -&gt; Mail Server.

\- Custom -&gt; you can configure an outbound mail account directly within the email sending action. (Figure 3)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/bTTimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/bTTimage.png)

Figure 3

\- Global -&gt; the system will use only the server configured in Settings -&gt; Mail Server.

In addition to the three modes described above, you can select one of the accounts configured in the Messages module for the currently active users on your system.

-**From** -&gt; represents the sender of the mail

-**To** -&gt; represents the recipient of the mail

-**CC** -&gt; represents copied addresses

-**CCN** -&gt; represents the addresses in hidden copy

-**Reply to** -&gt; represents the address to which a possible answer to the automatic mail would be sent

-**Subject** -&gt; represents the subject of the mail

-**Link email to** -&gt; it is possible to indicate the entity to which to link the automatic mail.   
The item "Automatic (default)" allows to associate the mail with the entity on which the process has been triggered

-**Attach documents from** -&gt; you can select the entity from which to take the documents linked to it and attach them to the mail.

By clicking on "All" the system will attach ALL documents related to the entity. (Figure 4)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/lLaimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/lLaimage.png)

Figure 4

Ticking the "Filtered" the system will attach documents that meet the conditions inserted in the section "Conditions" (Figure 5)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/1arimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/1arimage.png)

Figure 5 (click on the image for a higher graphic resolution)

# 3.6 Send Newsletter

This action allows you to send a newsletter directly from process related to a static or dynamic campaign defined within the "Campaign" field.

MAIN FIELDS

\- **Campaign** -&gt; represents the field through which the campaign related to the newsletter that will be sent is defined.  
Depending on the situation, you can select one of the following options:  
\- Create new each time -&gt; the system will create a new campaign each time the process starts.  
\- Create and then reuse the same campaign -&gt; the system will only create a campaign the first time the process starts, then the next times it will use the campaign created the first time.  
\- Existing -&gt; allows to select an existing campaign  
\- From the process -&gt; allows to select a record of the module Campaigns involved in the process

\- **Sender name** -&gt; represents the alias relative to the newsletter sender

\- **Sender address** -&gt; represents the email of the newsletter sender

\- **Recipients** -&gt; allows to select static records or taken from entities directly involved in the processes.  
N.B: The records belonging to the modules Companies, Contacts, Target and Lead can be selected.

\- **Subject** -&gt; represents the subject of the newsletter

\- **Email template** -&gt; represents the Email template that will be used as newsletter body.

\- **Body** -&gt; Through the Editor it is possible to modify the body by inserting static/dynamic text or HTML/CSS code

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/Rkgimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/Rkgimage.png)

Figure 1

# 3.7 Create PDF

This action allows you to create a PDF document using a template defined in the "PDFmaker" section.

MAIN FIELDS

\- **Entity PDF document** -&gt; allows to select an entity on which to generate the PDF.  
N.B: it is not possible to select an entity (instance of a module) if there is no PDF Template related to it

\- **Title PDF** -&gt; indicates the title of the PDF

\- **Relate PDF to** -&gt; represents the id of the entity involved in the process to which you want to link the PDF

\- **Language PDF template** -&gt; represents the language of the PDF Template (Italian or English)

\- **Assigned to** -&gt; represents the assigned user of the PDF

\- **PDF Template** -&gt; allows to select one of the templates available for the selected entity.

\- **Documents folder** -&gt; allows to select the folder where you want to save the PDF

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/OS2image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/OS2image.png)

Figure 1

# 3.8 Reset Dynamic form

This action refers to the use of the Process Helper and allows you to clean the content of the fields present in the dynamic form from the values that have been entered during the compilation of the same.  
It is mainly used to allow the re-compilation of the dynamic form.  
By default, any Default values entered before the actual compilation of the dynamic form will be restored. (Figure 1)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/i0Vimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/i0Vimage.png)

Figure 1

Instead, to completely empty the content of the fields present in the dynamic form ignoring any default values entered before its actual compilation, you must check the "Empty field". (Figure 2)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/39oimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/39oimage.png)

Figure 2

EXAMPLE OF USE

In order to better understand how it works, below is an example of using a dynamic form reset action to manage a possible re-compilation of the "Intervention Date" field of a dynamic form.

This field has today’s date as the default value. (Figure 3)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/o8bimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/o8bimage.png)

Figure 3

When filling in the dynamic form, the user can modify the field content by manually entering the effective date of intervention if it does not coincide with today’s date.

In case, for any reason, the dynamic form has to be recompiled, configuring a dynamic form reset action (BEFORE the configuration of the process helper) without checking the "Empty field" flag, the system will delete any intervention date entered by the user and restore today’s date.

On the contrary, by configuring a dynamic form reset action (BEFORE the configuration of the process helper) by checking the "Empty field" flag, the system will delete both the intervention date entered by the user and today’s date entered by default, actually presenting the empty field to the user.

# 3.9 Cycle Rows

This action allows you to cycle and then dynamically manage the rows of a table field or a product block.

NOTE: If there is no product block or table field in the main entity involved in the process and its related modules, the action will not be visible in the list of actions selectable via the "New Action" button.

For details on how to use the fields of the product block or the cycled table field within processes (e.g. value "Current") we recommend you refer to chapter 10.1 of the process manual.

For each cycled row, one of the following operations can be carried out:

**Send email**

Allows you to send an email for each row that meets the conditions set in the "field conditions" section. (Figure 1)  
To consider all the rows, just leave that section unfilled.

[![cicla-righe-invia-email.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/cicla-righe-invia-email.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/cicla-righe-invia-email.png)

Figure 1

**Create entity**

Allows you to create an entity of any module (standard or custom) for each row that meets the conditions set in the "Field conditions" section. (Figure 2)  
To consider all the rows, just leave that section unfilled.

[![cicla-righe-crea-entita.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/cicla-righe-crea-entita.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/cicla-righe-crea-entita.png)

Figure 2

**Update entity**

Allows you to update an entity involved in the process for each row that meets the conditions set in the "Field conditions" section. (Figure 3)  
To consider all the rows, just leave that section unfilled.

[![cicla-righe-aggiorna-entita.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/cicla-righe-aggiorna-entita.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/cicla-righe-aggiorna-entita.png)

Figure 3

**Send notification**

Allows you to send a notification for each row that meets the conditions set in the "Field conditions" section. (Figure 4)  
To consider all the rows, just leave that section unfilled.

[![cicla-righe-invia-notifica.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/qpucicla-righe-invia-notifica.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/qpucicla-righe-invia-notifica.png)

Figure 4

**Insert table row**

It allows to insert a row in a table field present in the entities involved in processes or in the form of process helpers for each row that meets the conditions set in the "Field conditions" section. (Figures 5, 6 and 7)  
To consider all the rows, just leave that section unfilled.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/NLWimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/NLWimage.png)  
Figure 5

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/Bbpimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/Bbpimage.png)  
Figure 6

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/1OAimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/1OAimage.png)

Figure 7

**Insert product row**

Insert a row in a product block present in the entities involved in the processes for each row that meets the conditions set in the "Field conditions" section. (Figures 8, 9 and 10)  
To consider all the rows, just leave that section unfilled.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/Lraimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/Lraimage.png)  
Figure 8

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/WE5image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/WE5image.png)  
Figure 9

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/CnSimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/CnSimage.png)  
Figure 10

**Delete product row**

Allows you to delete a row in a product block present in the entities involved in the processes for each row that meets the conditions set in the "Field conditions" section. (Figure 11)  
To consider all the rows, just leave that section unfilled.  
NB: This option will only be present if you are cycling the rows of a block products.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/xeximage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/xeximage.png)Figure 11

**Delete table row**

It allows to delete a row in a table field present in the entities involved in processes or in the forms of process helpers for each row that meets the conditions set in the "Conditions on the field" section. To consider all the rows, just leave that section unfilled. (Figure 12)  
NB: This option will only be present if you are cycling the rows of a table field.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/xwpimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/xwpimage.png)

Figure 12

**Function SDK**

It allows to execute an SDK function of type Action for each row that meets the conditions set in the "Field conditions" section. (Figure 13 and 14)

N.B: this feature is only available from version 25.02 onwards.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/ShZimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/ShZimage.png)  
Figure 13

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/AMZimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/AMZimage.png)  
Figure 14

# 3.10 Reset Conditional Fields

This action refers to the use of process-side conditional fields.   
In fact, it is possible to set conditional fields on the selected entity (involved in the process) or based on the Dynamic Forms present in the process.  
In the case of conditional fields on the entity, these prevail over administrator-set conditional fields.  
The latter are disabled until the end of the process or an action task "Reset conditional fields". (Figure 1)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/G3Mimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/G3Mimage.png)Figure 1

# 3.11 Link Entities and Link Static Entities

**LINK ENTITIES**

This action allows to relate between them 2 dynamic entities that present a relation N - N.  
The 2 entities do not present a field related to each other, but the relation to N. (Figure 1)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/oDfimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/oDfimage.png)Figure 1

**LINK STATIC ENTITIES**

This action makes it possible to relate one or more static entities among those proposed to a dynamic process entity.  
It is useful for example to relate entities common to more than one case of the flow itself, e.g. Report the same document (privacy statement, checklist, etc.) (Figure 2)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/LWrimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/LWrimage.png)  
Figure 2

# 3.12 Transfer Relations

This action allows to transfer/copy related entities from one entity to another in the process.  
In the case of relationship 1 - N records will be transferred, while in the case of relationship N - N records will be copied.  
This action is useful in entity conversion flows where the original entity is converted to another and therefore all entities related to the old one can be transferred/copied into the new one. (Figure 1)  
Ex. In a process of conversion from lead to contact/company all the entities that were linked to the old lead can be transferred/copied to the new contact/company.  
Finally you can delete the lead without losing therefore all the actions that were connected to it.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/GFmimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/GFmimage.png)  
Figure 1

# 3.13 Insert Table Row and Insert Product Row

**INSERT TABLE ROW**

This action allows you to insert rows in a table field (Figure 1 and 2)

NOTE: if there is no table field in the main entity involved in the process and its related module, the action will not be visible among the list of actions selectable via the "New Action" button.

The values entered can be static and/or dynamic (taken from the entities involved in the process).

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/RQyimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/RQyimage.png)  
Figure 1

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/lPEimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/lPEimage.png)

Figure 2

**INSERT PRODUCT ROW**

This action allows you to insert rows in a product block (Figure 3 and 4)

NOTE: if there is no product block in the main entity involved in the process and its related module, the action will not be visible among the list of actions selectable via the "New action" button.

The values entered can be static and/or dynamic (taken from the entities involved in the process).

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/B92image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/B92image.png)  
Figure 3

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/scaled-1680-/tvYimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-05/tvYimage.png)

Figure 4

# 3.14 Copy the Products Block

This action allows you to copy the product block between entities involved in the process. (Figure 1)  
N.B: both entities must have a product block.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/image.png)

 Figure 1

All the fields present in standard will be copied automatically, instead custom fields will only be copied if there is a specific mapping within the "Field Mapping" section that can be configured directly from the products block of the Layout Editor of the module involved. (Figure 2)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/6kSimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/6kSimage.png)  
Figure 2

# 3.15 Call External Web Service

Allows you to call an external REST-type Web Service previously configured in Settings -&gt; Business Process Manager -&gt; REST Webservice. (Figure 1 and 2)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/E12image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/E12image.png)Figure 1

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/gM8image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/gM8image.png)  
Figure 2

\- **Name** → Allows you to define a name for the WS we are configuring, useful for:  
1\) making its selection easier and more intuitive on the process side  
2\) making it easier to recognize in the list of WS for possible modification on the interface side

\- **Description** → Allows you to define a description for the WS we are configuring, useful for entering detailed specifications regarding its operation

\- **Active** → If set, allows its use on the process side

\- **Type** → Allows you to define the type of WS to call; currently, only "REST" is available.

\- **Method** → Allows you to define the HTTP method to use for the request. You can select one of the following values: "GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS", "PATCH"

\- **Address** → Allows you to define the endpoint of the WS we are configuring, such as [https://mywebsite.example.com/api/](https://mywebsite.example.com/api/)

\- **Authentication** → Allows you to define the authentication method used to invoke the WS, specifically:

1\) Basic: Allows you to define a username and corresponding static password with which the WS will perform authentication

2\) Bearer (OAuth2): Allows you to perform two-factor authentication

\- Client ID: Represents the ID used to access the application

\- Client Secret Authentication: Represents the secret key used for proper authentication

\- Private Key Authentication (PEM or JWK): Allows you to upload a PEM or JWK file representing the private key used for proper authentication

\- Scope: Allows you to define the scope, i.e., which operations are permitted by the system (read-only, write-only, or read/write)

\- Token URL: Allows you to define the URL to use as the token

\- **Headers** → Allows you to define the header parameters required by the WS we are configuring

Typically, the need for These parameters depend on the structure of the WS and are therefore defined in its dedicated documentation.

\- **Parameters** → Allows you to define the input parameters required by the WS we are configuring.  
Typically, the need for these parameters depends on the structure of the WS and is therefore defined in its dedicated documentation.

\- **Raw body** → Allows you to pass a single string in JSON format containing all the input parameters required by the WS we are configuring.

Usually, the need to map this section depends on the structure of the WS and is therefore defined within its dedicated documentation.

\- **Return Fields** → Allows you to save N parameters returned as output from the WS.

Usually, the need for these fields depends on the WS structure and is therefore defined in its dedicated documentation.

In the case of complex responses (object with multiple attributes) it is possible to perform a multi-level extraction (indicating the returned field name and attribute, e.g. object.attribute, object.list.0.attribute).

Let's consider the following JSON as an example:  
{  
"object1":{  
"attribute1" : "value1",  
"attribute2" : "value2",  
"attribute3" : "value3",  
},  
"object2" : "value4"  
}

To directly obtain the value of the "attribute2" parameter as a response, you will need to perform the configuration shown in Figure 3.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/bg8image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/bg8image.png)

Figure 3

\- **Test Web Service** button → Allows you to run a test call, returning a popup with the Return Code, Response Message, Status, and the expected Output from the WS.

Therefore, once the WS has been configured in Settings -&gt; Business Process Manager -&gt; REST Web Service, it will be possible to call this WS within processes (Figures 4, 5, and 6).

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/mANimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/mANimage.png)  
Figure 4

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/HBIimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/HBIimage.png)  
Figure 5

To better explain how to configure this action within a process, an example of configuring a WS call is shown below.

The goal of the process is to generate, upon activation of a collaborator on Vtenext, a user on an external system associated with it.  
The WS requires input of JSON with the following structure:  
{  
"firstname": "Mario",  
"lastname": "Smith",  
"type": "Internal Employee",  
"email": "mariorossi@test.com",  
"status": "Active"  
}

If successful, the response code = 201 will be returned, along with a JSON output containing several variables, including the ID of the created user. Below is an example of the JSON:

{  
"firstname":"Mario",  
"lastname":"Smith",  
"type":"Internal Employee",  
"email":"mariorossi@test.com",  
"status":"Active",  
"id":"532",  
"createdAt":"2025-07-03T13:05:11.752Z"  
}

First, in Settings -&gt; Business Process Manager -&gt; REST Web Service, we perform the initial configuration. of the WS (Figure 5)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/Ykqimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/Ykqimage.png)

Figure 6

Next, we create a process having the flowchart shown in Figure 6:

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/Bweimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/Bweimage.png)

In the "WS Call" ServiceTask, we configure the external WS call action. (Figure 7)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/Dcyimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/Dcyimage.png)Figure 7

The system automatically returns all the elements configured in Settings -&gt; Business Process Manager -&gt; REST Webservice.  
In addition, you can define additional Headers, Parameters, and Return Fields, allowing you to pass dynamic values from the records involved in the process.

WARNING! → In some cases, the Header parameters inherited from the configuration performed in Settings -&gt; Business Process Manager -&gt; REST Webservice will be set to blank by default (Figure 8).

[![GBSimage.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/gbsimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/gbsimage.png)

Figure 8

Therefore, for the WS call to work correctly, you must select one of the "Default" options available in the "Select Options" picklist at the top right of each field. (Figure 9)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/MaOimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/MaOimage.png)

Figure 9

In the Raw Body, we modify the original JSON by dynamically inserting the content of the fields in the Collaborator form associated with the process.

In the "Historicize WS Response" ScriptTask, we activate a process helper and create four text fields in its dynamic form (Figure 9).

In fact, the default WS call returns the variables "Response Code," "Response Message," and "Successful Outcome?" (1 if the call was successful, 0 if it was unsuccessful).

Finally, we create the "id" field, in which we will store the expected output from the WS in question, i.e., the external ID of the created user.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/cxhimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/cxhimage.png)

Figure 10

To map the content, within the "Select Options" picklist, the system provides a dedicated section for WS calls with their corresponding metaID (Figure 11).

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/rX6image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/rX6image.png)

Figure 11

In the "WS Call Check" task, we check the contents of the "Response Code" and "Successful Result?" fields and route the process into two different branches (Figure 12).

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/scaled-1680-/QHGimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-07/QHGimage.png)

Figure 12

The final "OK" and "KO" ScriptTasks shown in the process flowchart can be configured as desired, for example, to log the WS output (i.e., the ID of the user created in the external system) in a dedicated field in the employee's profile, or to send an email/notification to the IT department in the event of a failed call.

# 3.16 Cycle Related Records

This action allows you to use records (instances of a module) that have a 1- N or N - N relationship with the starting module.

In order to use the data of the records cycled within the action, the system provides (in the "Select option" picklist) a dedicated section (Figure 1)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/aB4image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/aB4image.png)

Figure 1

By clicking on the specific section, the system allows you to quickly select one of the fields present in the related module being examined (Figure 2)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/A2himage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/A2himage.png)

Figure 2

NOTE: the system automatically performs a filter based on the starting field from which you are consulting the "Select options" picklist, consequently it will only show the fields whose typology can be accepted by the starting field.  
If, for example, inside the "Member of" field of the Company module you wanted to insert the content of the text type "Address" field, the system will not make this field available, this is because it will only allow you to select the "Related to" type fields.

Once you have selected the field of the related module you are cycling, a further picklist will be presented to the right of the "Select options" field, from which you will be able to select one of the available items (Figure 3)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/1jZimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/1jZimage.png)

Figure 3

\- "**Sum**" -&gt; only for fields of type Number, Currency and Percentage, allows you to obtain the sum of ALL records of the related module concerned (connected to the starting module).  
ATTENTION! -&gt; This item ignores the conditions entered in the "Conditions" section.  
To learn more about managing the partial sum of the records of the related module concerned (connected to the starting module), see chapter 9.1 of the process manual.  
PLEASE NOTE: this item will still be available for other types of fields but, logically, it will not produce any results.

\- "**Minimum**" -&gt; only for fields of type Number, Currency and Percentage, allows you to obtain the lowest value among ALL records of the related module concerned (connected to the starting module).  
ATTENTION! -&gt; This item ignores the conditions entered in the "Conditions" section.  
PLEASE NOTE: this item will still be available for other types of fields but, logically, it will not produce any results.

-"**Maximum**" -&gt; only for fields of type Number, Currency and Percentage, allows you to obtain the highest value among ALL records of the related module concerned (connected to the starting module).  
ATTENTION! -&gt; This item ignores the conditions entered in the "Conditions" section.  
NOTE: this item will still be available for other types of fields but, logically, will not produce any results.

-"**Average**" -&gt; only for Number, Currency and Percentage fields, allows you to obtain the average value of ALL records of the related module concerned (connected to the starting module).  
ATTENTION! -&gt; This item ignores the conditions entered in the "Conditions" section.  
PLEASE NOTE: this item will still be available for other types of fields but, logically, it will not produce any results.

-"**Last**" -&gt; allows you to obtain the value of the last record of the related module concerned (connected to the starting module).  
ATTENTION! -&gt; This item ignores the conditions entered in the "Conditions" section.

-"**Current**" -&gt; allows you to obtain the current value, i.e. the value of the record of the related module concerned (connected to the starting module) that is being cycled at that precise moment  
ATTENTION! -&gt; This item is the only one that respects the conditions entered in the "Conditions" section.

-"**Sequence**" -&gt; allows you to obtain the value of a specific record (if present) of the related module concerned (connected to the starting module).  
ATTENTION! -&gt; This item ignores the conditions entered in the "Conditions" section.  
To indicate the exact number of the record, you will have to fill in the field that will be presented on the right and finally click on the dedicated button (Figure 4)

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/zepimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/zepimage.png)

Figure 5 (click on the image for a higher graphic resolution)

For each cycled record, you can perform one of the following operations:

**Send email**

Allows you to send an email for each record that meets the conditions set in the "field conditions" section. (Figure 6)  
To consider all the records, simply leave that section unfilled.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/hSdimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/hSdimage.png)

Figure 6

**Create entity**

Allows you to create an entity of any form (standard or custom) for each record that meets the conditions set in the “Field conditions” section. (Figure 7)  
To consider all records, simply leave that section unfilled.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/Zygimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/Zygimage.png)

Figure 7

**Update entity**

Allows you to update an entity involved in the process for each record that meets the conditions set in the “Conditions” section. (Figure 8)  
To consider all records, simply leave that section unfilled.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/zzkimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/zzkimage.png)

Figure 8

**Send notification**

Allows you to send a notification for each record that meets the conditions set in the “Field conditions” section. (Figure 9)  
To consider all records, simply leave that section unfilled.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/oucimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/oucimage.png)

Figure 9

**Insert table row**

Allows you to insert a row in a table field present in the entities involved in the processes or in the process helper forms for each record that meets the conditions set in the “Field conditions” section. (Figures 10 and 11)  
To consider all the records, simply leave that section unfilled.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/1Climage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/1Climage.png)

Figure 10

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/gYWimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/gYWimage.png)

Figure 11

**Create PDF**

Allows you to create a PDF for each record that meets the conditions set in the “Field Conditions” section. (Figure 12)  
To consider all records, simply leave that section unfilled.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/M9Timage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/M9Timage.png)

Figure 12

**SDK Functions**

Allows you to launch an SDK function of the Action type for each record that meets the conditions set in the “Field Conditions” section. (Figure 13 and 14)

N.B.: this feature is only available from version 25.02 onwards.

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/777image.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/777image.png)

Figure 13

[![image.png](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/scaled-1680-/slbimage.png)](https://usermanual.vtenext.com/uploads/images/gallery/2025-06/slbimage.png)

Figure 14