# Application de workflow STARTPROCESS

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

L'application de workflow **STARTPROCESS** vous permet de lancer une nouvelle demande avec les paramètres correspondants. Elle fournit une solution simple pour les communications inter-processus.

Il existe trois façons d'utiliser STARTPROCESS pour lancer une nouvelle demande :

* ID du processus<br>
* Nom du processus avec version du processus<br>
* Nom du processus avec test

## Paramètres  <a href="#parametres" id="parametres"></a>

### Processus

| **Paramètre**     | **Type**  | **Direction** | **Description**                                                                                                               |
| ----------------- | --------- | ------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `PROCESS_ID`      | Numérique | IN            | ID de processus de la demande à lancer (à utiliser indépendamment, sans les autres paramètres)                                |
| `PROCESS_NAME`    | Texte     | IN            | Nom du processus de la demande à lancer                                                                                       |
| `PROCESS_VERSION` | Numérique | IN            | Version du processus à lancer                                                                                                 |
| `TEST`            | Texte     | IN            | <p>Mode test</p><ul><li><code>Y</code>: Lancer une version de test</li><li><code>N</code>: Lancer la version active</li></ul> |

### Paramètres facultatifs

| **Paramètre**          | **Type**  | **Direction** | **Description**                           |
| ---------------------- | --------- | ------------- | ----------------------------------------- |
| `REQUEST_ID`           | Numérique | OUT           | Renvoie l'ID de la nouvelle demande       |
| `IMPERSONATE_USERNAME` | Texte     | IN            | Nom d'utilisateur de l'emprunt d'identité |

Vous pouvez définir au besoin des paramètres additionnels du processus à lancer, par exemple `COMPANY` (paramètre IN, valeur texte) pour le nom de la société (p.ex. : `ACME_COMPANY`).

## Exemples

### ID du processus

| **Paramètre** | **Type**  | **Direction** | **Description**                                                                                                               |
| ------------- | --------- | ------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `PROCESS_ID`  | Numérique | IN            | Envoyer la valeur de `MY_PROCESS_ID` (une donnée numérique de processus contenant l'ID du processus à lancer, p.ex. : `1320`) |

### Nom du processus avec version du processus

| **Paramètre**     | **Type**  | **Direction** | **Description**                                                                                                                                    |
| ----------------- | --------- | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `PROCESS_NAME`    | Texte     | IN            | Envoyer la valeur de `MY_PROCESS_NAME` (une donnée de processus de type texte contenant le nom du processus à lancer, p.ex. : `LEAVE_APPLICATION`) |
| `PROCESS_VERSION` | Numérique | IN            | Envoyer la valeur de`MY_PROCESS_VERSION` (une donnée de processus numérique contenant le numéro de version du processus à lancer, p.ex.: `2`)      |

### Nom du processus avec test

| **Paramètre**  | **Type** | **Direction** | **Description**                                                                                                                                    |
| -------------- | -------- | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `PROCESS_NAME` | Texte    | IN            | Envoyer la valeur de `MY_PROCESS_NAME` (une donnée de processus de type texte contenant le nom du processus à lancer, p.ex. : `LEAVE_APPLICATION`) |
| `TEST`         | Texte    | IN            | Envoyer la valeur de`MY_TEST` (p.ex.: `Y`)                                                                                                         |
