# Application de workflow COMPLETEACTION

## Aperçu  <a href="#apercu" id="apercu"></a>

L'application de workflow **COMPLETEACTION** vous permet de compléter une action en cours avec les paramètres correspondant. Elle fournit une solution pour interagir et synchroniser des processus entre eux.

## Paramètres <a href="#utilisation-des-parametres-par-defaut" id="utilisation-des-parametres-par-defaut"></a>

### Demande

| **Paramètre** | **Type**  | **Direction** | **Description**                       |
| ------------- | --------- | ------------- | ------------------------------------- |
| `REQUEST_ID`  | Numérique | IN            | ID de demande de l'action à compléter |

### Action

| **Paramètre**          | **Type**  | **Direction** | **Description**                                                                  |
| ---------------------- | --------- | ------------- | -------------------------------------------------------------------------------- |
| `ACTION_NAME`          | Texte     | IN            | Nom de l'action à compléter (la première instance trouvée sera complétée)        |
| `ACTION_ID`            | Numérique | IN            | ID de l'instance de l'action à compléter                                         |
| `IMPERSONATE_USERNAME` | Texte     | IN            | Nom d'utilisateur de l'utilisateur qui sera associé à la réalisation de l'action |

### Paramètres facultatifs

Les paramètres facultatifs sont les paramètres de l'action à compléter. Vous devrez définir ces paramètres dans les paramètres d'action correspondants. Vous pouvez ajouter autant de paramètres facultatifs qu'il y a de paramètres de l'action à compléter.

#### 📌 Exemple

Si vous souhaitez compléter une action de type procédure Web asynchrone nommée `MYASYNCACTION` et qui possède le paramètre suivant :

* `AMOUNT` reçoit la valeur de la donnée `TOTAL` (vous devez créer cette donnée dans votre processus)

Alors dans votre processus, ajoutez une action de type COMPLETEACTION avec les paramètres suivants :

| **Paramètre** | **Type**  | **Direction** | **Description**                                                                                                                                   |
| ------------- | --------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `REQUEST_ID`  | Numérique | IN            | Envoyer la valeur de`MY_REQUEST_ID` (une donnée de processus de type numérique contenant l'ID de demande de l'action à compléter, p.ex. : `1320`) |
| `ACTION_NAME` | Texte     | IN            | Envoyer la valeur du nom de l'action à compléter (p.ex. : `MYSYNCACTION`)                                                                         |
| `AMOUNT`      | Numérique | IN            | Envoyer la valeur de `MY_AMOUNT` (une donnée de processus numérique contenant la valeur du montant, p.ex. : `1234.56`)                            |

{% hint style="info" %}
Vous devriez ajouter une gestion d’exception sur l’action de type COMPLETEACTION en cas d’erreur (par exemple, numéro de demande invalide ou numéro d’action invalide, etc...).
{% endhint %}
