API de propriété : ServiceNow Fluent

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 4 minutes de lecture
  • L’API Propriété définit les propriétés système [sys_properties] qui contrôlent le comportement de l’instance.

    Pour des informations générales sur les propriétés système, reportez-vous à la section Add a system property.

    Objet de propriété

    Ajoutez une propriété système [sys_properties] pour configurer un aspect 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. Lorsque vous créez l’application, cet ID est haché en une sys_id unique. Pour en savoir plus, consultez ServiceNow Fluent Constructions linguistiques.

    Format : Now.ID['chaîne' ou numéro]

    nom Chaîne Requis. Nom de la propriété commençant par le périmètre de l’application au format suivant : <périmètre>.<nom>.
    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 sous forme de 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, mot de passe2, short_string, time_format, fuseau horaire, uploaded_image

    description Chaîne Description de ce que fait la propriété.
    choix Tableau Une liste de valeurs de choix séparées par des virgules. Cette propriété ne s’applique que si la propriété type est définie sur choicelist.

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

    roles Objet Identificateurs de variables des objets de rôle ou noms de rôles disposant d’un accès en lecture ou en écriture à la propriété. Par exemple :
    roles: {
       read: [activity_admin, 'app_user'],
       write: [admin]
    }

    Pour plus d'informations, consultez API du rôle : ServiceNow Fluent.

    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 sur 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 s’il faut purger la valeur de cette propriété de tous les autres caches côté serveur.

    Valeurs valides :
    • true : le système ignore la purge de certains caches côté serveur, vidant ainsi uniquement le cache de la table Propriétés système [sys_properties] et préservant la valeur de propriété précédente dans tous les autres caches. Cette option évite le coût en termes de performances lié à la purge de tous les caches et à la récupération de nouvelles valeurs de propriété. En règle générale, vous ne devez définir cette propriété sur true 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 de 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 à partir 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 Booléen Marqueur indiquant s’il faut exclure la propriété de l’importation via les ensembles de mises à jour.

    Le fait de garder les propriétés système privées permet d’éviter que les paramètres d’une instance ne remplacent les valeurs d’une autre instance. Par exemple, vous ne souhaitez peut-être pas qu’une propriété système d’une instance de développement utilise la même valeur qu’une instance de production.

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

    Valeur par défaut : false

    $meta Objet Métadonnées pour les métadonnées de l’application.
    Avec la propriété installMethod , vous pouvez mapper les métadonnées d’application à un répertoire de sortie qui ne se charge que dans des circonstances spécifiques.
    $meta: {
          installMethod: 'String'
    }
    Valeurs valides pour installMethod :
    • demo : génère les métadonnées de l’application dans le répertoire metadata/unload.demo à installer avec l’application lorsque l’option Charger les données de démonstration est sélectionnée.
    • première installation : génère les métadonnées de l’application dans le répertoire metadata/unload à installer uniquement la première fois qu’une application est installée sur une instance.
    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 Rôle :
    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', 
       containsRoles: [managerRole] 
    })