---
sourceDocument: Interface utilisateur de la Now Platform Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/xanadu/platform-user-interface

 Release :

    - xanadu

ft:locale :

    - fr-FR

ft:publication_title :

    - Interface utilisateur de la Now Platform Xanadu

ft:clusterId :

    - platux

bundleId :

    - platux

workflow :

    - Platform


---

# Schéma de l'option de widget

# Schéma de l'option de widget {#ariaid-title1}

* Rversion finale: Xanadu
* 
* Mis à jour 1 août 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 6 minutes de lecture

Les instances de widget permettent aux utilisateurs de configurer de façon unique chaque widget qu'ils ajoutent à une page. Utilisez le schéma d'option pour définir les paramètres de votre widget.

## Options d'instance de stockage {#c_WidgetInstanceOptions__section_hxc_kmy_h1b}

Lors du développement d'un widget, vous pouvez modifier le schéma d'option pour créer des paramètres pour votre widget, ou créer une table pour stocker les options d'instance. Si vous modifiez le schéma d'option existant, toutes les options d'instance définies sont stockées au format JSON dans le champ Options supplémentaires, format JSON de la table sp_instance. Les types de champs suivants sont disponibles :  
* Chaîne
* Booléen
* Entier
* Référence
* Choix
* Field_list (dépend de la table)
* Field_name (dépend de la table)
* Glide_list
{#c_WidgetInstanceOptions__ul_yp3_qxb_f1b}

Pour utiliser d'autres types de champs non pris en charge dans le schéma d'options, créez une table d'extension pour stocker votre schéma d'option de widget personnalisé. L'utilisation d'une table vous permet d'effectuer les actions suivantes :  
* Ajoutez n'importe quel ServiceNow type de champ, y compris les champs avec une personnalisation avancée, au schéma d'options.
* Définissez un schéma d'option complexe.
* Options de recherche et de filtrage d'instance.
{#c_WidgetInstanceOptions__ul_ls1_ktd_f1b}  
Remarque :  
Bien que le stockage des options dans une table vous permette de définir des options plus complexes, cette méthode est plus difficile à maintenir que la modification du schéma d'option. Pour éviter de créer des tables inutiles et d'ajouter des appels serveur supplémentaires à votre widget, modifiez le schéma d'option existant quand cela est possible. Stockez des options dans une table uniquement lorsque des options complexes ou pouvant faire l'objet de recherches sont nécessaires.

## Utilisation des options d'un widget

Permet d'accéder aux options du widget à partir du script client et du script serveur à l'aide de la variable globale options . Vous pouvez accéder à n'importe quelle valeur d'option dans votre script client widget ou votre script serveur à l'aide `de options.optionName`.  
Script client

    function() {
      /* widget controller */
      var c = this;
        console.log(c.options.text_color) //Outputs the text_color option for this instance
    }

Script serveur

    (function() {
         $sp.log(options.text_color) //Logs the value of the text_color option to the browser console.
    })();

## Définition des options par défaut

Avant qu'une valeur d'option ne soit définie sur une instance, elle apparaît comme une valeur indéfinie lorsque vous accédez à cette variable d'option. Utilisez le script du serveur de widgets pour spécifier les valeurs par défaut de vos options.  

    (function() {
      options.text_color=options.text_color||"blue";
      options.maximum_entry_count=options.maximum_entry_count||5;
    })

## Modifier le schéma de l'option de widget {#ariaid-title2}

Les instances de widget permettent aux utilisateurs de configurer de façon unique chaque widget qu'ils ajoutent à une page. Modifiez le schéma de l'option pour définir les paramètres de base de votre widget.

### Avant de commencer

Vous devez avoir cloné ou créé un nouveau widget.

Rôle requis : admin ou sp_admin

### Procédure

1. Accédez à la ToutPortail de servicesConfiguration du Portail de servicesÉditeur de widget.
2. Sélectionnez le widget dont vous souhaitez configurer le schéma d'option.
3. Cliquez sur l'icône de menu ( ![icône Menu]()) et sélectionnez Modifier le schéma de l'option.  
   Cette option n'apparaît que pour les utilisateurs qui ont le droit de modifier le widget.
4. Cliquez sur + pour ajouter une option de widget.
5. Définissez une étiquette, un nom, un type, une astuce et une section de formulaire.  
   D'autres champs s'affichent en fonction du type que vous sélectionnez.

   L'ajout d'options de widget flexibles vous permet de créer des widgets plus réutilisables. Vous pouvez ajouter des valeurs par défaut pour aider les utilisateurs à comprendre chaque option de widget. Si vous ne sélectionnez aucune section de formulaire, la valeur par défaut est définie sur Autres options.
6. Cliquez sur Enregistrer.  
   Le schéma d'option que vous avez défini est stocké au format JSON dans le champ Schéma d'option de la table sp_widget. En fonction de ce schéma d'options, chaque instance du widget peut utiliser des options d'instance définies individuellement.
7. Testez le schéma de l'option en ajoutant le widget à une page dans le Portail de services concepteur.
   1. Accédez à la Portail de servicesConfiguration du Portail de servicesConcepteur de portail de services.
   2. Ajoutez le widget à une page et cliquez sur l'icône de modification sur l'instance de widget pour afficher les options d'instance.
   3. [Configurez les options de l'instance de widget](https://servicenow-prod.fluidtopics.net/XU4kaTs40cK30SLWqurY1g "Créez des instances uniques de widgets en configurant les options de chaque instance.").
   4. Affichez la configuration en accédant à l'enregistrement d'instance dans la table sp_instance.  
      Les options d'instance sont stockées au format JSON dans le champ Options supplémentaires, format JSON .
   {#edit-option-schema__substeps_clj_yj2_31b}

## Stocker les options d'instance dans une table {#ariaid-title3}

Créez une table pour stocker les options d'instance de widget au lieu de modifier le schéma d'option existant. Lorsque vous utilisez une table comme schéma d'option de widget, vous pouvez définir des champs personnalisés à l'aide de n'importe quel ServiceNow type de champ, ajouter des filtres aux champs et rechercher ou interroger des options d'instance.

### Avant de commencer

Rôle requis : admin ou sp_admin

### Pourquoi et quand exécuter cette tâche

Pour définir un schéma d'option personnalisé, ajoutez des champs à une table d'extension sp_instance, puis configurez votre widget pour qu'il utilise la table d'extension comme source de données. L'utilisation d'une table d'extension vous permet d'effectuer les actions suivantes :  
* Ajoutez n'importe quel ServiceNow type de champ, y compris les champs avec une personnalisation avancée, au schéma d'options.
* Définissez des options de widget complexes.
* Options de recherche et de filtrage d'instance.
{#sp-instance-ext-table__ul_ls1_ktd_f1b}  
Remarque :  
Bien que le stockage des options dans une table vous permette de définir des options plus complexes, cette méthode est plus difficile à maintenir que la modification du schéma d'option. Pour éviter de créer des tables inutiles et d'ajouter des appels serveur supplémentaires à votre widget, modifiez le schéma d'option existant quand cela est possible. Stockez des options dans une table uniquement lorsque des options complexes ou pouvant faire l'objet de recherches sont nécessaires.

### Procédure

1. Créez une table qui étend une table sp_instance pour stocker votre schéma d'options personnalisé.
   1. Accédez à la Définition du systèmeTables.
   2. Cliquez sur Nouveau.
   3. Définissez une étiquette et un nom.
   4. Dans le champ Table étendue , sélectionnez une table sp_instance qui fournit les champs nécessaires.  
      {#sp-instance-ext-table__table_fgm_prd_f1b__entry__2}

      | Table d'instance | Description |
      |-|-|
      | Instance \[sp_instance\] | Inclut les champs d'instance de base. |
      | Instance avec la table \[sp_instance_table\] | Inclut les champs sp_instance et les champs permettant d'afficher les données de table telles que Table et Filtre. |
      [ ]

      {#sp-instance-ext-table__table_fgm_prd_f1b}
   5. Enregistrez le formulaire.
   {#sp-instance-ext-table__substeps_kzj_sqb_f1b}
2. Définissez des champs personnalisés dans la table d'extension.  
   Vous pouvez définir n'importe quel type de champ à utiliser dans votre schéma d'options en ajoutant de nouvelles colonnes dans la liste Colonnes .
3. Mettez à jour votre widget pour utiliser la table d'extension comme source de données.
   1. Accédez à la Portail de servicesWidgets.
   2. Ouvrez le widget pour lequel vous souhaitez créer des options personnalisées.
   3. Dans le champ Table de données , sélectionnez votre table d'extension sp_instance.  
   {#sp-instance-ext-table__substeps_wqw_ftb_f1b}
4. Configurez le formulaire de la table d'extension pour afficher les champs souhaités.  
   Les champs configurés dans le formulaire sont disponibles en tant qu'options d'instance.
   1. Accédez au formulaire de la table d'extension : `<yourInstance>/<your_extenstion_table>.do`.
   2. Cliquez avec le bouton droit sur le menu d'en-tête et sélectionnez ConfigurerMise en page.
   3. Ajoutez les champs au formulaire.
   4. Cliquez sur Enregistrer.
   {#sp-instance-ext-table__substeps_rrz_dzc_f1b}
5. Configurez le widget pour afficher les champs souhaités en tant qu'options d'instance.
   1. Accédez à la Portail de servicesWidgets.
   2. Ouvrez le widget dont la table d'extension est définie comme source de données.
   3. Utilisez la zone de sélection Champs pour sélectionner les champs à afficher en tant qu'options d'instance.  
   4. Enregistrez le formulaire.
   {#sp-instance-ext-table__substeps_mng_gnk_f1b}

### Que faire ensuite

Testez le schéma de l'option en ajoutant le widget à une page dans le Portail de services concepteur. Cliquez sur l'icône de modification sur l'instance de widget pour afficher les options d'instance. Après [avoir configuré les options d'instance de widget](https://servicenow-prod.fluidtopics.net/XU4kaTs40cK30SLWqurY1g "Créez des instances uniques de widgets en configurant les options de chaque instance."), affichez la configuration en accédant à l'enregistrement d'instance dans la table d'extension sp_instance.

