!--a11y-->
Exemple : programme dans un modèle de
processus 
Vous trouverez ci‑dessous des exemples de textes source présents dans des programmes que vous pouvez utiliser dans un modèle de processus.

Si vous utilisez le conteneur de workflow, vous avez besoin de texte source supplémentaire. Ces parties sont affichées en italique.
Des exemples de programmes utilisés dans des modèles de processus figurent également dans le système R/3 standard.
REPORT MY_STEP_PROGRAM.
INCLUDE <CNTN01>.
[...]
START-OF-SELECTION.
[...]
GET PERNR.
[...]
IF not employee is ok.
CALL FUNCTION 'HRPY_PROCESS_SET_PERNR_STATUS'
EXPORTING
IMP_PERNR = PERNR-PERNR
IMP_PARCEL = PYPARAID
IMP_SET_ERR = 'X'.
REJECT.
ENDIF.
[...]
CALL FUNCTION 'HRPY_PROCESS_SET_PERNR_STATUS'
EXPORTING
IMP_PERNR = PERNR-PERNR
IMP_PARCEL = PYPARAID
IMP_SET_SUC = 'X'.
END-OF-SELECTION.
* Renseigner le conteneur
· Enregistrement dans la Gestion comptable : créer cycle de comptabilisation
Le programme RPCIPE00 (Enregistrement dans la gestion comptable : créer comptabilisation) commence par l'include <CNTN01>. Le sous‑programme REJECTION est accessible via cet include si aucun matricule n'est rattaché à cette étape du processus, ce qui se produit dans les situations suivantes :
¡ Le matricule a été refusé pendant la paie.
¡ Le matricule a déjà été exploité.
Dans le premier exemple, le sous‑programme REJECTION définit le statut du matricule sur Erroné. Dans le second exemple, le statut est sur Correctement terminé.
Si le statut du matricule est défini sur Correctement terminé, le programme RPCIPE00 informe le gestionnaire de processus via la routine REGISTER_AND_INDEX. Cette routine est appelée juste avant END-OF-SELECTION. À la fin de END-OF-SELECTION, la routine END_PROCESS_MODEL transfère le numéro du cycle de comptabilisation et, si nécessaire, le nom du fichier TemSe vers le conteneur de workflow.
· Générateur de paie
Dans les programmes de paie, l'instruction include pour les macros de conteneur se situe dans l'include RPCFDC19. Dans le programme RPCALCX0 (Générateur de paie - International) par exemple, le conteneur est renseigné uniquement par une exploitation après END-OF-SELECTION. L'include RPCFDC19 transfère les noms des fichiers TemSe vers le conteneur.
Si besoin est, le sous‑programme NEW_ABLEHNUNG définit le statut du matricule sur Erroné.
À la fin du sous‑programme MAIN, la routine PROCESS_SET_PERNR_STATUS paramètre le statut des matricules correctement traités.
END‑OF‑SELECTION se termine par la commande LEAVE LIST‑PROCESSING, afin que le sous‑programme FIRE‑EVENT appelle d'abord le module fonction HRPY_PROCESS_FIRE_EVENT pour renvoyer le contrôle au gestionnaire de processus.
INCLUDE RPUPMDP3.
INCLUDE <CNTN01>.
[...]
START-OF-SELECTION.
CALL FUNCTION 'HRPY_PUST_GET_CONTAINER’
EXPORTING
IMP_PARCEL = PYPARAID
TABLES
CONTAINER = PY_PM_CONTAINER.
[...]
END-OF-SELECTION.
* Renseigner le conteneur
IF NOT PYPARAID IS INITIAL.
CALL FUNCTION 'HRPY_PROCESS_FIRE_EVENT'
EXPORTING
IMP_PARCEL = PYPARAID
TABLES
IMP_CONTAINER = PY_PM_CONTAINER .
ENDIF.

Si vous avez besoin des données du conteneur de workflow ne répondant pas aux critères de sélection du programme, il vous suffit d'utiliser le texte source en italique et en gras. Pour plus d'informations, voir Conteneur de workflow.
· Afficher pièce comptable
Le programme RPCIPS00 (Afficher pièce comptable) comprend l'include RPUPMDP3. Ce programme ne traite pas les matricules il ne renseigne pas le conteneur de workflow, ce qui signifie qu'il ne requiert aucun module fonction, include ou macro supplémentaire. À la fin de END‑OF‑SELECTION, le programme RPCIPS00 renvoie le contrôle au gestionnaire de processus.
· Transfert FI/CO : export vers R/2 ou R/3 < 4.0
Le programme RPCIPX00 (Transfert FI/CO : export vers R/2 ou R/3 < 4.0) importe un fichier TemSe, le traite, puis écrit un nouveau fichier TemSe. Par conséquent, il doit utiliser la routine START_PROCESS pour importer le conteneur de workflow et la routine END_PROCESS pour archiver de nouvelles données dans le conteneur de workflow. Le module fonction HRPY_PROCESS_FIRE_EVENT est également appelé dans la routine END_PROCESS.