Scripts clients du catalogue
Les scripts côté client peuvent ajouter des effets dynamiques et une validation aux formulaires. Les scripts peuvent s’appliquer à des éléments de catalogue de services ou à des jeux de variables, ce qui permet aux administrateurs d’utiliser les mêmes fonctionnalités que celles disponibles dans d’autres formulaires.
Vous pouvez utiliser des scripts côté client pour :
- Obtenir ou définir des valeurs de variables.
- Masquer ou afficher les variables.
- Rendre les variables obligatoires ou non.
- Validez l’envoi du formulaire.
- Ajoutez quelque chose au panier.
- Commandez quelque chose immédiatement.
Considérations relatives aux scripts clients du catalogue
Lorsque vous créez des scripts clients de catalogue, tenez compte des considérations suivantes.
- Les scripts clients de catalogue s’exécutent lorsqu’un utilisateur commande un élément à partir du catalogue de services. Les scripts clients de catalogue peuvent également s’exécuter lorsque des variables ou des jeux de variables pour un élément de catalogue sont affichés lorsqu’un utilisateur demande cet élément.
- Pour qu’une variable soit accessible à l’aide d’un script client de catalogue, elle doit avoir un nom de variable. Les variables sans nom n’apparaissent pas dans la liste des variables disponibles.
- Lorsque vous utilisez des scripts clients standard sur un formulaire Élément demandé ou Tâche du catalogue, notez les champs portant le même nom que les variables. Si un champ de table et une variable du même nom sont tous deux présents dans un formulaire, le champ de table est mis en correspondance lorsqu’il est consulté à l’aide d’un script. Si cela se produit, adressez spécifiquement la variable en la nommant
variables.nom de variable.Par exemple :g_form.setValue('variables.replacement', 'false') ; - Si vous utilisez des créateurs d’enregistrement pour transmettre des variables du catalogue de services à d’autres types d’enregistrements, ces variables sont rendues visibles dans ces enregistrements avec un éditeur de variables, tel que le formateur d’interface utilisateur de l’éditeur de variable de changement sur les formulaires de demande de changement. Vous pouvez manipuler ces variables à l’aide de méthodes de script client standard, telles que
setDisplay,setMandatory,setValueetgetValue. - Les scripts clients de catalogue peuvent être utilisés pour les éléments de catalogue inclus dans un assistant.
- Vous pouvez utiliser l’API
g_form.refreshSlushbucket(fieldName)pour mettre à jour une variable de collecteur de liste.
Différences de scripts clients de catalogue
Les scripts clients de catalogue sont très similaires aux scripts clients standard, à quelques différences près.
- Au lieu de sélectionner une table telle que Incident pour le script, sélectionnez un élément de catalogue ou un jeu de variables. Votre système pouvant comporter un grand nombre d’éléments de catalogue, vous devez sélectionner un élément de catalogue ou un jeu de variables à l’aide d’un champ de référence plutôt que de la liste de choix utilisée par le formulaire de script client standard.
- Lors de l’utilisation d’un script client de catalogue onChange(), il est lié à une variable particulière au lieu d’un champ. Le système remplit automatiquement la liste de sélection des noms de variables avec toutes les variables nommées de l’élément de catalogue ou du jeu de variables sélectionné.
Créer un script client de catalogue
Suivez cette procédure pour créer un script client de catalogue.
Procédure
Exemples de scripts clients de catalogue
Exemples de scripts clients pour effectuer des actions courantes.
Obtenir la valeur d’une variable
Utilisez la syntaxe suivante pour obtenir la valeur d’une variable de catalogue. Notez que la variable doit avoir un nom. Remplacez variable_name par le nom de la variable.
g_form.getValue('variable_name');
Limiter le nombre de caractères qu’un utilisateur peut saisir dans une variable
Voici un exemple de script qui s’exécute lorsque la variable est affichée, plutôt que lorsque l’élément est commandé.
function onLoad(){
var sd = g_form.getControl('short_description');
sd.maxLength=80;
}