Prenez en charge les types de travail flexibles en permettant aux agents de commencer à se déplacer avant leurs heures de travail planifiées. Par exemple, vous pouvez ajouter du temps de déplacement en dehors des heures de travail planifiées d’un agent au cas où le mauvais temps augmenterait soudainement le temps de déplacement.
Avant de commencer
Si vous êtes administrateur, vous pouvez exécuter un script et ajouter le temps de déplacement en dehors des heures de travail pour tous les utilisateurs.
Rôle requis : wm_dispatcher, wm_manager, wm_admin ou admin
Procédure
-
Accédez à la .
-
Effectuez l'une des actions suivantes :
- Si vous êtes un répartiteur, accédez à .
- Si vous êtes gestionnaire, accédez à .
-
Sélectionnez un profil d’utilisateur.
-
Pour ajouter ou mettre à jour des enregistrements d’utilisateurs, effectuez l’une des opérations suivantes.
| Option | Description |
|---|
| Ajouter un nouvel enregistrement pour cet utilisateur |
- Cliquez sur Nouveau.
- Sélectionnez la case à cocher Voyager en dehors des heures de travail.
- Cliquez sur Envoyer.
|
| Mettre à jour un enregistrement existant |
- Ouvrez l’enregistrement existant.
- Sélectionnez la case à cocher Voyager en dehors des heures de travail.
- Cliquez sur Mettre à jour.
|
-
Pour ajouter du temps de déplacement en tant qu’heures de travail pour tous les utilisateurs, procédez comme suit :
-
Accédez à la
-
Dans la fenêtre Exécuter le script, ajoutez le script pour inclure le temps de déplacement aux heures de travail pour tous les utilisateurs.
Tableau 1. Options permettant d’inclure le temps de déplacement comme heures de travail pour les utilisateurs
| Option |
Description |
| Ajouter le temps de déplacement aux heures de travail pour tous les utilisateurs |
- Ajoutez ce script :
createWorkParamsForAllAgents("yes");
function createWorkParamsForAllAgents(travelOutsideWorkHours) {
var now_GR = new GlideRecord("sys_user_has_role");
gr.addEncodedQuery("role=26c324ba1b32200096f9fbcd2c0713c2"); // fetching users having wm_agent role
gr.query();
gs.info("total work agents found: "+gr.getRowCount());
var agentWorkParameter = {};
while (gr.next()) {
var userId = gr.getValue("user");
if (!agentWorkParameter[userId]) {
var wp = new GlideRecord("wm_agent_work_configuration");
wp.initialize();
wp.setValue("user",userId);
wp.setValue("travel_outside_of_work_hours", travelOutsideWorkHours); // setting default value for travel_outside_of_work_hours
wp.insert();
agentWorkParameter[userId] = true;
}
}
}
- Cliquez sur Exécuter le script.
|
| Mettre à jour le temps de déplacement au sein des heures de travail pour tous les utilisateurs |
- Ajoutez ce script :
updateWorkParamsForAgents("yes"); // param1: default travel outside work hours value
function updateWorkParamsForAgents(travelOutsideWorkHours) {
var now_GR = new GlideRecord("wm_agent_work_configuration");
gr.query();
gs.info("total agent work parameters found: "+gr.getRowCount());
var updateCount = 0;
while (gr.next()) {
var canTravelOutside = gr.getValue("travel_outside_of_work_hours");
if ( canTravelOutside != travelOutsideWorkHours) {
gr.setValue("travel_outside_of_work_hours", travelOutsideWorkHours);
if (gr.update())
updateCount ++;
}
}
gs.info("total agent work parameters updated: "+updateCount);
}
- Cliquez sur Exécuter le script.
|