Aller au contenu

Absences et suppléance

La manière dont les utilisateurs saisissent une absence et choisissent un suppléant est décrite sous Absence. Cette page décrit ce qui se passe en arrière-plan.

Chaque absence saisie par un utilisateur est enregistrée comme une entrée dans la table biz.OutOfOffice. L’invoiceR sait ainsi, à tout moment, si un utilisateur est présent ou absent.

Dans la liste des tâches, vous pouvez afficher la colonne Suppléant. Elle montre, pour chaque tâche, le suppléant inscrit. Le suppléant ne voit toutefois la tâche et ne peut ouvrir le document que tant que le véritable titulaire de la tâche est absent.

Dans la plupart des étapes, l’invoiceR inscrit le suppléant dès que la tâche est créée, c’est-à-dire lorsque le document arrive dans l’étape. Cela se produit aussi lorsque le titulaire est présent et n’a prévu aucune absence.

Dans l’étape de validation, l’invoiceR n’inscrit aucun suppléant tant que le titulaire est présent. Lorsqu’une absence commence, une tâche d’arrière-plan vérifie pour quelles tâches cet utilisateur est inscrit comme titulaire et fait repasser ces tâches par l’étape. Comme l’absence est désormais active, les suppléants sont alors inscrits et voient le document.

La raison de ce traitement particulier : une absence peut modifier le nombre de tâches. Exemple : l’imputation donne trois groupes de visa, tous avec l’utilisateur A comme valideur, mais avec trois suppléants différents. Tant que l’utilisateur A est présent, une seule tâche suffit pour lui. S’il est absent, il faut trois tâches, une pour chaque suppléant.

Vous définissez la suppléance applicable dans la validation, niveau par niveau, dans le règlement du visa (Si l’utilisateur est absent).

La tâche App.OutOfOfficeChange traite les absences qui ont commencé, se sont terminées ou ont été supprimées, et définit les suppléants manquants sur les tâches bloquées. Elle ne s’exécute que si elle est activée. Les paramètres se trouvent dans la section OutOfOfficeChange de appsettings.json (ou par mandant dans la base de données) :

ParamètreValeur par défautSignification
JobEnabledfalseactive la tâche
CronExpression10 2 * * *quand la tâche s’exécute (par défaut : tous les jours à 02:10)
NodeGuidsétape de validationIds des étapes dont les tâches sont de nouveau traitées lors d’un changement d’absence
NodeGuidsNotVisaimputation, contrôle finalIds d’autres étapes dans lesquelles le suppléant personnel est défini. N’y inscrivez pas l’étape de validation.
RequirePersonalDeputytrueindique si un suppléant personnel est obligatoire lors de la saisie d’une absence sous Mes paramètres
{
"OutOfOfficeChange": {
"JobEnabled": "true",
"CronExpression": "*/15 * * * *"
}
}

Lorsqu’un utilisateur absent modifie son suppléant personnel, l’invoiceR adapte immédiatement les tâches bloquées dans les étapes de NodeGuidsNotVisa.