API de propriété : ServiceNow Fluent

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 3 minutes de lecture
  • L’API Property inclut des objets qui définissent les propriétés système [sys_properties].

    Objet de propriété

    Ajoutez des propriétés système [sys_properties] pour configurer certains aspects d’une application.

    Tableau 1. Propriétés
    Nom Type Description
    $id Chaîne ou numéro Requis. ID unique pour l’objet de métadonnées fourni au format suivant, où <valeur> est une chaîne ou un nombre.
    $id: Now.ID[<value>]

    Lorsque vous créez l’application, cet ID est haché dans un sys_ID unique.

    nom Chaîne Requis. Nom de la propriété commençant par le périmètre de l’application au format suivant : <scope>.<name>.
    valide N'importe lequel Une valeur pour la propriété. La valeur doit être le type de données correct.

    Toutes les valeurs de propriété sont stockées sous forme de chaînes. Lors de la récupération des propriétés via la méthode gs.getProperty(), traitez les résultats comme des chaînes. Par exemple, une propriété vrai|faux renvoie « vrai » ou « faux » (chaînes), et non l'équivalent booléen.

    type Chaîne Type de données pour la valeur de la propriété.

    Valeurs valides : chaîne, entier, booléen, liste de choix, couleur, date_format, image, mot de passe, password2, short_string, time_format, fuseau horaire, uploaded_image

    description Chaîne Description de l’objet de la propriété.
    choix Tableau Liste de valeurs de choix séparées par des virgules. Cette propriété s’applique uniquement si la propriété type est définie sur liste de choix.

    Si vous avez besoin d’une étiquette de choix et d’une valeur différentes, utilisez un signe égal (=) pour séparer l’étiquette de la valeur. Par exemple, ['Bleu=0000FF', 'Rouge=FF0000', 'Vert=00FF00'] affiche Bleu, Rouge et Vert dans la liste, et enregistre la valeur hexadécimale correspondante dans le champ de valeur de propriété.

    roles Objet Les identificateurs variables des objets de rôle ou les noms des rôles qui disposent d’un accès en lecture ou en écriture à la propriété. Pour plus d'informations, consultez API de rôle : ServiceNow Fluent.
    roles: {
       read: [activity_admin, 'app_user'],
       write: [admin]
    }
    ignoreCache Booléen Marqueur indiquant s’il faut purger le cache lorsque la valeur de la propriété est définie.

    Le système stocke les valeurs de propriété système dans des caches côté serveur pour éviter d’interroger la base de données pour les paramètres de configuration. Lorsque vous modifiez une valeur de propriété système, le système vide le cache de la table Propriétés système [sys_properties]. Utilisez ce champ pour déterminer si la valeur de cette propriété doit être purgée de tous les autres caches côté serveur.

    Valeurs valides :
    • true : le système ignore la purge de certains caches côté serveur, ce qui permet de purger uniquement le cache de la table Propriétés système [sys_properties] et de conserver la valeur de propriété antérieure dans tous les autres caches. Cette option évite le coût de performance lié à la purge de tous les caches et à la récupération des nouvelles valeurs de propriété. En règle générale, vous ne devez définir cette propriété sur vrai que lorsque vous avez une propriété système qui change plus d’une fois par mois et que la valeur de la propriété est uniquement stockée dans la table Propriétés système [sys_properties].
    • false : le système purge tous les caches côté serveur et récupère la valeur de propriété actuelle de la base de données. Définissez cette propriété sur faux pour que tous les caches aient la valeur de propriété actuelle.

    Valeur par défaut : false

    isPrivate (en anglais seulement) Booléen Marqueur indiquant s’il faut exclure la propriété de l’importation via des ensembles de mises à jour.

    La confidentialité des propriétés système permet d’éviter que les paramètres d’une instance ne remplacent les valeurs d’une autre instance. Par exemple, vous pourriez ne pas souhaiter qu’une propriété système d’une instance de développement utilise la même valeur qu’une instance de production.

    Valeurs valides :
    • true : la propriété n’est pas incluse dans les ensembles de mises à jour.
    • false : la propriété est incluse dans les ensembles de mises à jour.

    Valeur par défaut : false

    import { Property } from '@servicenow/sdk/core'
    
    Property({
       $id: Now.ID['1234'],
       name: 'x_snc_app.some.new.prop',
       type: 'string',
       value: 'hello',
       description: 'A new property',
       roles: {
          read: ['admin'],
          write: [adminRole, managerRole],
       },
       ignoreCache: false,
       isPrivate: false,
    })
    Les rôles référencés sont définis à l’aide de l’objet Role :
    import { Role } from "@servicenow/sdk/core";
    
    const managerRole = Role({ 
       $id: Now.ID['manager_role'], 
       name: 'x_snc_example.manager' 
    })
    
    const adminRole = Role({ 
       $id: Now.ID['admin_role'], 
       name: 'x_snc_example.admin', 
       contains_roles: [managerRole] 
    })