# 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`)                                                                                                         |
