Table des matières
Articles reliés
- Créationde formulaires personnalisés dans Octopus
- Sujetalternatif et destination vers le sujet
- Configuration avancée des tâches
Introduction
L'information fournie par l'utilisateur à partir du formulaire Octopus est importante et nous avons développé les conditions dans les formulaires et les tâches pour l'exploiter. Ce sont les conditions qui rendent le formulaire dynamique et nous permettent de poser des questions à l'utilisateur basées sur les réponses déjà obtenues. De plus, les conditions permettent d'adapter le workflow de la requête en choisissant les tâches qui ont besoin d'être générées.
Les conditions s'appliquent sur deux types d'actions :
-
L'affichage d'un champ dans un formulaire.
-
La génération d'une tâche d'une demande de service.
Base pour les conditions
Les conditions peuvent être basé sur :
- La valeur d'un champ du formulaire personnalisé.
- La valeur d'un champ de la requête.
- Si le champ a été rempli ou s'il est resté vide.
Fonctionnement
Pour ajouter des conditions à un champ de formulaire ou à la création d'une tâche, vous devez utiliser la touche F3 du clavier pour voir les champs disponibles et ajouter la description de la condition.
Configuration d'une condition pour un formulaire
Dans la création d'un formulaire dynamique, les champs du formulaire et ceux de la requête représentent les critères qui seront utilisés en tant que conditions pour déterminer si le champ doit être affiché ou non à l'utilisateur.
Suivre les étapes suivantes pour ajouter une Condition d'affichage :
- Aller dans la section des Options.
- Placer le curseur dans le champ Condition d'affichage.
- Faire F3 à partir du clavier.
- Choisir le champ sur lequel la condition sera basée.
- Ajouter la ou les conditions d'affichages.
- Faire une vérification avec le formulaire pour s'assurer que le tout fonctionne.
- Procéder à des corrections au besoin.
- Terminer avec OK sur le champ et procéder au reste de la configuration du formulaire.
Configuration d'une condition pour une tâche
Dans la création des tâches avancées, les champs de la requête et les questions du formulaire Octopus représentent les critères qui seront transformés en variables. Ces variables peuvent être utilisées dans le champ Condition pour générer ou non la tâche.
Suivre les étapes suivantes pour ajouter une condition de création de la tâche :
- Placer le curseur dans le champ condition.
- Appuyer sur la touche F3 pour afficher les champs personnalisés du formulaire et les champs Octopus disponibles.
- Faites votre sélection et confirmer avec OK.
Comment bâtir les conditions et les opérateurs disponibles
Que les conditions soient utilisées dans un formulaire ou dans une tâche, la méthode pour configurer la condition est la même. Comme il est plus facile de voir et de valider avec l'écran de visualisation, les exemples plus bas seront démontrés dans les formulaires.
Lorsqu'on prépare des conditions pour les tâches, un truc peut être de tester la condition dans un champ du formulaire en premier; de cette manière on peut déterminer tout de suite si la condition fonctionne.
On ne peut pas utiliser une variable après l'opérateur. Il faut absolument tester avec une valeur, comme dans les exemples qui suivent.
Pour les environnements bilingues, il est important de bâtir les réponses aux types de champs Liste déroulantes et Boutons radio dans les deux langues. L'utilisation de la virgule est très utile dans ce mode.
Il faut aussi faire attention lorsque l'on renomme un champ ou un choix d'une liste de valeur, car on pourrait ainsi rendre une condition non valide. Utiliser l'écran de visualisation pour bien valider les conditions.
La virgule
- Pour ajouter plus d'un choix à une condition, il faut séparer les choix par une virgule.
- Bleu, Blanc, Rouge
- Dans un mode de fonctionnement bilingue, c'est de cette manière qu'on tiendra compte des deux langues.
- Oui, Yes
Les guillemets
- Les guillemets servent à encadrer une réponse dans un champ texte, texte long ou à un item d'une liste de valeur dont la réponse comporte une virgule. Comme expliqué au point précédent, la virgule sert à séparer les différentes réponses valables dans une condition. Ils serviront dans des éléments de listes de valeurs telles que :
- iPhone 6, argent
- iPhone 6, gris
- LG G4, noir
- Samsung Galaxy, noir
- Une condition basée sur ces champs aura besoin d'être mise entre guillemets pour fonctionner :
- NomDeLaVariable="iPhone 6, gris", "iPhone 6, argent"
Est égale à
- Utiliser le signe égal = dans une condition basée sur un champ de type Liste déroulante ou avec des Boutons radio.
- Pour indiquer le ou les choix qui rendront la condition vraie.
Un choix est présenté à l'utilisateur pour faire préparer du papier pour un service.
Il a 3 options :
Dans le cas du choix avec le logo, l'utilisateur doit ajouter une image.
On fera donc apparaître la demande pour le logo seulement si le choix de l'utilisateur est égale à Papier-parchemin + Nom du service + Logo.
À partir du champ Ajouter le fichier du logo, on ajoute la condition d'affichage.
- Avec F3 on obtient le nom de la variable :
- $Commandedepapier.Choisirselonvotrebesoin
- On ajoute le signe égal =
- On met le choix qui rend la condition vraie.
- Papier-parchemin + Nom du service + Logo
Le résultat sera de faire apparaître le champ Ajouter le fichier du logo, si la condition est vraie.
- Utiliser le signe égal = dans une condition basée sur un champ de type Case à cocher, Date, Date et Heure, Fichier joint ou CI.
- = Vrai, pour indiquer que la condition est vraie si le champ est coché ou rempli.
- = Faux, pour indiquer que la condition est vraie si le champ reste vide.
Dans le cadre d'une demande de téléphone mobile, on offre à l'utilisateur de cocher les options dont il a besoin.
Il n'y a pas de condition de reliée aux trois premiers choix, mais si l'utilisateur fait la sélection du 64GB, on veut faire apparaître un commentaire et demander à l'utilisateur d'inscrire son Centre de coût.
Voici la condition du Centre de coût :
Et le résultat lorsque la condition est vraie :
Est différent de
- Utiliser les signes plus petit et plus grand comme suit <> dans une condition basée sur un champ de type Liste déroulante ou Boutons radio.
- Pour indiquer le ou les choix qui rendront la condition vraie.
Un choix est présenté à l'utilisateur pour faire préparer du papier pour un service.
Il a 3 options :
Dans deux des trois choix, on aura à demander le Nom du service à l'utilisateur.
On fera donc apparaître la demande pour le nom seulement si le choix de l'utilisateur <>Papier-parchemin.
Voici la condition du Nom du service :
Et le résultat lorsque la condition est vraie :
Le champ a été rempli ou choisi
On peut baser une condition sur le fait d'avoir ajouté de l'information ou d'avoir utilisé un champ.
- Utiliser la combinaison =Vrai dans une condition basée sur l'utilisation d'un champ de type Case à cocher, Date, Date et Heure, Texte, Fichier joint ou CI.
- =Faux serait au contraire basé sur le fait que le champ reste vide.
Dans une requête pour un déménagement, on doit faire apparaître un message à l'utilisateur s'il a des boîtes à faire déménager.
On fera donc apparaître le commentaire seulement s'il y a de l'information d'ajoutée au champ Autres items à déménager.
Voici la condition du commentaire :
Et le résultat lorsque la condition est vraie :
Valeur contenue dans un champ du formulaire
- On peut baser une condition sur le texte rempli par l'utilisateur dans un champ texte ou texte long.
- On doit mettre le texte recherché entre guillemets.
- Octopus ne fait pas la distinction emtre les minuscules et les majuscules.
- Les variables de types "Wild cards" ne fonctionnent pas.
On demande à l'aide d'un champ texte à l'utilisateur le nom de son équipe de hockey préférée.
On fera donc apparaître un commentaire en fonction de la réponse. Pour se faire, on aura plusieurs champs de type Commentaire pour personnaliser le message à l'utilisateur en fonction de sa réponse.
Voici la condition d'un des commentaires :
Et les divers résultats lorsque la condition est vraie :
Valeur contenue dans un champ de la requête
- On peut baser une condition sur les champs de la requête au lieu du formulaire par exemple :
- Le Site de l'utilisateur.
- Le Département de l'utilisateur.
- Le champ VIP de l'utilisateur.
Certains noms de champs, tels que Site ou Département, peuvent être associés à divers éléments comme le Demandeur, l'Utilisateur ou un CI. Il est donc important de faire la sélection du champ à partir du bon nœud. Pour bâtir une condition avec les Site/sous-sites, il faut les séparer par virgule, comme par exemple : Champ1 = "Site,sous-site1,sous-site2"
Dans notre scénario, parce qu'on est en train de mettre en place de nouveaux équipements, nous savons que l'information disponible aux utilisateurs n'est pas la même d'un site à l'autre.
Les nouvelles imprimantes installées à Québec ont une étiquette qui les identifie clairement, mais ce n'est pas le cas ailleurs.
On se basera donc sur le site de l'utilisateur de la requête pour notre condition. Si l'utilisateur est de Québec et qu'il rapporte un problème d'imprimante, nous ajouterons des champs de plus pour identifier l'équipement en question.
À partir des champs Commentaire identification, Identification de l'imprimante et Indiquer où se trouve l'imprimante, on ajoute la condition d'affichage.
- Avec F3 on ouvre la fenêtre de sélection :
- Ouvrir le nœud Incident / SR.
- Ouvrir le nœud Utilisateur.
- Faire la sélection du Site.
@Incident.User.SiteRootName
- On termine la condition avec le site recherché ou différent de :
- =Québec
- <>Québec
Voici la condition pour l'ajout du commentaire :
Le formulaire sera comme suit pour un utilisateur qui n'est pas de Québec :
Et pour un utilisateur de Québec :
Les combinaisons de champs
Les conditions peuvent être combinées entre elles pour définir une condition sur plus d'un champ à la fois. Ceci fonctionne autant dans les champs du formulaire qu'avec ceux de la requête.
Utiliser les variables suivantes pour combiner une condition sur plus d'un champ :
- @OR
- Pour une condition de type OU, Champ1 = ABC @OR Champ2 = ABC, DEF.
- Le tout peut être sur la même ligne ou on peut faire un retour de chariot (Enter) pour séparer le premier champ de la variable.
- Une seule des conditions doit être vraie pour que la condition fonctionne.
Dans un formulaire pour une demande d'équipement, on offre à l'utilisateur de cocher les items dont il a besoin. Par contre, nous voulons qu'il donne une justification s'il demande un portable ou un deuxième écran. Il y a un seul champ de justification, mais deux champs qui peuvent déclencher la condition.
Choix offerts à l'utilisateur :
Voici la condition pour le champ de justification :
$Demandedéquipement.Portable=Oui @OR $Demandedéquipement.Deuxièmeécran=Oui
Résultats si un ou l'autre des champs est coché :
- @AND
-
Pour une condition de type ET, Champ1=ABC @And Champ2=DEF.
-
Le tout peut être sur la même ligne ou on peut faire un retour de chariot (Enter) pour séparer le premier champ de la variable.
-
Toutes les conditions doivent être vraies pour que la condition fonctionne.
-
Dans un formulaire pour une demande d'équipement, on veut offrir aux utilisateurs de Montréal qui font partie du département des Communications le choix d'un iPad pour vérifier le contenu des pages Web de la compagnie. La condition aura à être basée sur le site et sur le département.
Voici la condition pour le choix d'iPad :
@Incident.User.SiteRootName=Montréal@AND@Incident.User.Department=Communications
Résultats en fonction du site et du département :
Pour un utilisateur de Montréal du département de Marketing, une seule condition est vraie.
Pour un utilisateur de Québec du département des Communications, une seule condition est vraie.
Pour un utilisateur de Montréal du département des Communications, les deux conditions sont vraies.
- Parenthèses
- Permet de combiner plusieurs opérateurs dans une même expression logique.
- Respecte la priorité des opérations en traitant le contenu des parenthèses en premier lieu.
- Les parenthèses doivent être équilibrées des deux côtés des opérateurs, par exemple: ( expr1 ) @And ( expr2 @Or expr3 ) présente le même nombre de parenthèse de part et d'autre de l'opérateur @And.
Par exemple, si les champs Courriel ou Poste sont vides.
La condition pour le champ courriel vide serait @Incident.User.Email=Faux
Affichage des erreurs
Au fil du temps, des changements peuvent être apportés à votre catalogue de champs personnalisés (fusion, suppression, etc.) pouvant laisser des références invalides dans vos types de requêtes.
Les erreurs existantes seront visibles en consultant les types de requêtes à partir dans le menu Gestion des données de référence. Elles seront rapportées à titre d'avertissement par un triangle comprenant un point d'exclamation ou par un rond jaune aux endroits où elles se produisent. Dans le cas des tâches, le ou les numéros de celles problématiques, c'est-à-dire là où se trouvent des erreurs, seront mentionnés. Voir la 2e image ci-dessous.
Notez bien que la sauvegarde de votre type de requête sera toujours possible, mais la présence de champs ou conditions invalides affectera le comportement souhaité dans les types de requêtes concernés.
Les variables de type Champs personnalisés peuvent être utilisées aux endroits suivants :
- Sujet alternatif
- Tâches
- Sujet
- Description
- Condition
- Champs de formulaire
- Condition d'affichage
Voici des exemples où des erreurs existent :
Merci, votre message a bien été envoyé.