Créer une table

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 10 minutes de lecture
  • Les administrateurs et les développeurs d’applications peuvent créer des tables personnalisées pour stocker les données d’application. Après avoir créé une table, vous pouvez également modifier les types de champs et les étiquettes de champs.

    Avant de commencer

    Rôle requis : admin

    Vérifiez vos droits de tables personnalisées avant de créer des tables personnalisées. Consultez Gérer des tables et des applications personnalisées dans Gestion des abonnements.

    Pourquoi et quand exécuter cette tâche

    Now Platform Les abonnements à l’application incluent des droits pour les tables personnalisées. Vous pouvez créer des tables personnalisées pour n’importe quel usage, jusqu’à la limite de droit de l’abonnement. Pour en savoir plus sur la façon dont votre administrateur d’utilisation mappe les tables personnalisées que vous créez aux abonnements, reportez-vous à la section Mapper des tables personnalisées à un abonnement de produit dans Gestion des abonnements.

    Remarque :
    Il est préférable de créer des tables lors de la création d’applications avec des outils. Pour en savoir plus, consultez Building applications. Pour minimiser l’existence de tables inutiles et superflues dans une instance, n’abusez pas de la création de tables. Créez uniquement les tables dont vous avez besoin pour réduire les tâches d’administration et les temps de mise à niveau. N’étendez pas la table [sys_choice]. L’extension de la table [sys_choice] n’est pas prise en charge.

    Procédure

    1. Accédez à la Tout > Définition du système > Tables.
    2. Sélectionnez Nouveau.
    3. Renseignez les champs du formulaire.
      Contrôle Description
      Étiquette Saisissez une étiquette unique pour la table (telles que Ordinateurs portables ou Clients légers). L'étiquette apparaît dans les vues de liste et de formulaire pour la table. La mise à jour du champ Étiquette met également à jour l’enregistrement d’étiquette dans le fichier de langue pour la langue actuelle. Voir Étiquettes de champs dans Tables du dictionnaire de données.
      Nom
      Modifiez le nom de la table, qui est automatiquement rempli en fonction de l’étiquette de la table et d’un préfixe comme suit :
      • Pour une table d'une application incluse dans le périmètre, le nom est précédé d'un identificateur d'espace de noms pour indiquer qu'elle fait partie d'une application.
      • Pour une table de l’application globale, le nom est précédé de la chaîne u_.
      • Pour une table distante dans une application incluse dans le périmètre, le nom est précédé d’un identificateur d’espace de noms et la chaîne st_ pour indiquer qu’elle est distante et qu’elle fait partie d’une application.
      • Pour une table distante dans l’application globale, le nom est précédé du préfixe de chaîne u_st_.

      Vous ne pouvez pas modifier le préfixe ; toutefois, vous pouvez modifier le reste du nom de table. Le nom ne peut contenir que des caractères ASCII alphanumériques en minuscules et des traits de soulignement (_).

      Étend la table

      Sélectionnez la table à étendre. L'extension d'une table de base intègre tous les champs de la table d'origine et crée des champs système pour la nouvelle table. S’ils se trouvent dans le même champ d’application ou s’ils peuvent être configurés à partir d’autres champs d’application, vous pouvez étendre les tables marquées comme extensibles.

      Cette option n’est pas disponible si vous cochez la case Table pouvant contenir des scripts pour indiquer que cette table peut contenir des scripts.

      Demande [Lecture seule] Affiche l’application associée à cette table. Si vous travaillez sur une application ou créez une table à partir d’un enregistrement d’application, le champ est défini par défaut sur cette application. Sinon, la valeur par défaut du champ est Global. Tous les enregistrements créés à partir de l’enregistrement de table, tels que les modules et les règles de sécurité, sont affectés par défaut à cette application.
      Table distante Option permettant de désigner cette table comme table distante. Une table distante est une table à laquelle vous pouvez associer une définition de script pour la récupération de données à partir d’une source de données externe. Contrairement à une table interne standard, les données ne proviennent pas des enregistrements de l’instance actuelle.

      Si vous cochez cette case, vous ne pouvez pas accéder à l’option Étendre la table , car les tables pouvant contenir des scripts ne peuvent pas être étendues à partir d’autres tables.

      Créer un module

      Cochez la case, puis renseignez le champ Ajouter un module au menu pour créer un module de liste dans le menu d’application.

      Cette option n’est disponible que lors de la création d’une table.

      Ajouter un module au menu Sélectionnez un menu existant ou sélectionnez Créer et entrez un nouveau nom de menu. Cette option n’est disponible que si vous cochez la case Créer un module .
    4. Dans la section Colonnes , utilisez la liste incorporée Colonnes de table pour ajouter des colonnes à la table.
      Colonne Description
      Étiquette de colonne

      Définissez une étiquette unique pour la colonne. L’étiquette apparaît sur les en-têtes de liste et les champs de formulaire de la colonne. Lorsque vous mettez à jour le champ Étiquette de colonne , le système met également à jour l’étiquette du fichier de langue pour la langue actuelle.

      Type [Obligatoire] Définissez le type de champ pour la colonne. Voir Administration des champs et Types de champs. Pour conserver les données existantes, ne changez les champs qu’entre les mêmes types de base (par exemple, Choix et Chaîne). Un avertissement s’affiche si la modification d’un champ personnalisé entraîne une perte de données. Vous ne pouvez pas modifier un champ du système de base qui entraîne une perte de données.
      Référence

      Transformez le champ en un type de champ de référence en saisissant le nom de la table référencée.

      Remarque :
      La création de références dynamiques est activée pour ce champ. Ainsi, si vous saisissez un nom de table qui ne correspond pas à une table existante, une nouvelle table est créée lorsque vous enregistrez les changements apportés à l’enregistrement de table actuel. Si la table actuelle comporte un module dans le navigateur d’applications, un module pour la table nouvellement créée est automatiquement créé dans le même menu d’application.
      Longueur max.

      [Champs de chaîne uniquement] Limitez la longueur du champ. Une longueur inférieure à 254 apparaît sous la forme d’un champ de texte sur une seule ligne. Tout ce qui compte 255 caractères ou plus apparaît comme une zone de texte à plusieurs lignes.

      Remarque :
      • Vous ne pouvez modifier cette valeur que si le type du champ est Chaîne. Les changements pour tout autre type de champ sont ignorés.
      • Sur une instance Oracle, vous ne pouvez pas augmenter la longueur maximale d’un champ de chaîne au-delà de 4 000, car il nécessite le type de données CLOB dans Oracle. Pour dépasser cette taille, consignez un incident auprès ServiceNow de l’assistance technique pour demander le changement.
      • Pour éviter toute perte de données, diminuez la longueur d’un champ de chaîne uniquement lorsque vous développez une nouvelle application et non lorsqu’un champ contient des données. Un avertissement s’affiche si la modification d’un champ personnalisé entraîne une perte de données. Pour un champ du système de base, vous ne pouvez pas apporter un changement qui entraîne une perte de données.
      Valeur par défaut Spécifiez la valeur par défaut du champ pour tout nouvel enregistrement. Assurez-vous que cette valeur utilise le type de champ correct. Par exemple, un champ de nombre entier peut utiliser une valeur par défaut de 2 , mais pas une valeur par défaut de deux. Ces valeurs peuvent être remplacées par des remplacements de dictionnaire.
      Affichage

      Indiquez si ce champ est les valeurs d’affichage (apparaît sur les enregistrements qui font référence à cette table).

      Remarque :
      Cette option ne contrôle pas si ce champ est affiché sur des listes ou des formulaires.
    5. Dans la section Contrôles , définissez des options de table supplémentaires.
      Contrôle Description
      Extensible Cochez cette case pour permettre aux autres tables d’étendre cette table. Décochez la case pour empêcher la création de tables enfants supplémentaires ; Les tables enfants existantes restent inchangées.
      Live Feed Cochez cette case pour activer les flux d’enregistrements pour la table. Cette option ajoute l’icône Afficher Flux en direct (icône Afficher Flux en direct) dans l’en-tête du formulaire.
      Numérotation automatique Sélectionnez la case à cocher, puis définissez le format numérique pour ajouter un champ numéroté automatiquement à la table. La case à cocher n’est disponible que lorsqu’un format numérique n’existe pas pour la table. Sinon, vous pouvez modifier le format numérique existant.
      Créer des contrôles d'accès Cochez la case, puis renseignez le champ Rôle d’utilisateur pour créer des règles de sécurité de base pour la table.
      Rôle d'utilisateur Entrez un nouveau nom ou sélectionnez un rôle d’utilisateur existant requis pour accéder à cette table. Cette option n’est disponible que lorsque la case Créer des contrôles d’accès est cochée.
    6. Dans la section Accès à l’application , définissez la protection du champ d’application pour la table.
      Pour plus d’informations, consultez Paramètres d’accès à l’application.
      Contrôle Description
      Accessible depuis
      Spécifiez les périmètres de l’application qui peuvent accéder à la table :
      Tous les périmètres de l'application
      Accessible à partir de n’importe quel périmètre de l’application.
      Ce périmètre de l'application uniquement
      Accessible uniquement à partir du périmètre de l’application actuel.
      Autorisation de lecture Cochez la case pour permettre aux objets de script provenant d’autres périmètres de l’application de lire les enregistrements stockés dans cette table. Cette option offre une protection de l’exécution. Par exemple, un script dans une autre application peut interroger des données sur cette table. Sélectionnez d’abord l’accès en lecture pour accorder toute autre opération d’enregistrement d’API.
      Peuvent écrire

      Cochez cette case pour activer les objets de script provenant d’autres périmètres de l’application afin de créer des enregistrements dans cette table. Cette option offre une protection de l’exécution. Par exemple, un script dans une autre application peut insérer un nouvel enregistrement dans cette table. Cette option n’est disponible que lorsque la case Peut lire est cochée.

      Décochez la case pour empêcher les objets de script provenant d’autres périmètres de l’application de créer des enregistrements dans cette table.

      Peuvent mettre à jour

      Cochez la case pour permettre aux objets de script provenant d’autres périmètres de l’application de modifier les enregistrements stockés dans cette table. Cette option offre une protection de l’exécution. Par exemple, un script dans une autre application peut modifier une valeur de champ dans cette table. Cette option n’est disponible que lorsque la case Peut lire est cochée.

      Décochez la case pour empêcher les objets de script provenant d’autres périmètres d’application de modifier les données stockées dans cette table.

      Peuvent supprimer

      Cochez cette case pour activer les objets de script provenant d’autres périmètres de l’application afin de supprimer des enregistrements de cette table. Cette option offre une protection de l’exécution. Par exemple, un script dans une autre application peut supprimer un enregistrement de cette table. Cette option n’est disponible que lorsque la case Peut lire est cochée.

      Décochez la case pour empêcher les objets de script d’autres périmètres d’application de supprimer des enregistrements de cette table.

      Autorisation d'accès à cette table via des services web

      Cochez cette case pour permettre aux utilisateurs d’effectuer des requêtes de service Web entrantes sur cette table. Cette option offre une protection au moment de la conception et de l’exécution. L’utilisateur effectuant la requête doit avoir les autorisations appropriées pour accéder à cette table, même lorsque cette case est cochée.

      Décochez la case pour empêcher les utilisateurs d’effectuer des requêtes de service web sur cette table.

      Permettre la configuration

      Cochez cette case pour permettre aux applications d’autres périmètres d’application de créer des enregistrements de configuration pour cette table qui modifient ses fonctionnalités. Par exemple, un concepteur d’application peut sélectionner cette table dans la liste Tables sur les règles métier, les scripts clients ou les actions d’interface utilisateur. Cette option offre une protection au moment de la conception.

      Décochez la case pour empêcher les concepteurs d’applications de sélectionner cette table lors de la création d’enregistrements de configuration.

    7. Cliquez sur Envoyer.

    Que faire ensuite

    Pour modifier les étiquettes de champ dans votre table ou l’étiquette de la table elle-même, effectuez la tâche suivante :
    1. Accédez à la table Étiquette de champ [sys_documentation] et filtrez la table pour afficher la table contenant les champs que vous souhaitez modifier. Pour trouver l’étiquette qui représente la table elle-même, filtrez les enregistrements où l’élément est vide.
    2. Ouvrez l’enregistrement de champ que vous souhaitez modifier et effectuez vos mises à jour. Pour obtenir une description de chaque champ, consultez Table Étiquette de champ.