Type de fichier Sources de données

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 10 minutes de lecture
  • Importez un fichier à partir d'une source locale, d'un serveur réseau distant ou d'une autre instance en fournissant un chemin et des informations d'authentification.

    Pour les jeux d’importation de type de fichier, vous pouvez sélectionner parmi une liste de méthodes de récupération de fichier : SFTP, FTP, FTPS, HTTP, HTTPS et SCP.
    Remarque :
    FTPS n’est pas recommandé car il n’est plus pris en charge par certains fournisseurs de pare-feu. Envisagez d’utiliser SFTP comme alternative.

    Méthodes de récupération de fichier

    Les méthodes d’extraction de fichier suivantes sont disponibles pour copier le fichier à partir de son emplacement vers ServiceNow pour le charger dans un jeu d’importation.

    Après avoir défini les fichiers compatibles pour l’importation, définissez la manière dont les fichiers peuvent être importés.

    Remarque :
    Pour que l’importation réussisse, votre serveur FTP et votre client doivent être configurés pour le même mécanisme d’authentification que celui que vous sélectionnez ici.
    Fonction de message REST Description
    Pièce jointe Ajouter et gérer les pièces jointes d’un fichier à l’enregistrement et importer ce fichier dans un jeu d’importation.
    SFTP Récupérez un fichier à l’aide de SFTP. Les champs sont fournis pour le nom du serveur et les informations d’identification de connexion.
    FTP Récupérez un fichier à partir d’un serveur FTP de votre réseau. Les champs sont fournis pour le nom du serveur et les informations d’identification de connexion.
    Remarque :
    Les transferts FTP sont envoyés en texte clair et ne peuvent pas être chiffrés. Utilisez SCP ou SFTP à la place dans la mesure du possible.
    FTPS (SSL authentifié) [non recommandé] Non recommandé car FTPS n’est plus pris en charge par certains fournisseurs de pare-feu. Envisagez d’utiliser SFTP comme alternative.

    Une commande d’authentification sécurisée FTP émise via le protocole SSL (Secure Socket Layer). Cette méthode est également connue sous le nom de FTP explicite sur SSL.

    FTPS (TLS authentifié) [non recommandé] Non recommandé car FTPS n’est plus pris en charge par certains fournisseurs de pare-feu. Envisagez d’utiliser SFTP comme alternative.

    Une commande d’authentification FTP Secure émise via le protocole TLS (Transport Layer Security). Cette méthode est également connue sous le nom de FTP explicite sur TLS.

    FTPS (SSL implicite) [non recommandé] Non recommandé car FTPS n’est plus pris en charge par certains fournisseurs de pare-feu. Envisagez d’utiliser SFTP comme alternative.

    Dans la sécurité implicite, le serveur FTPS définit un port spécifique que le client (990) doit utiliser pour les connexions sécurisées. La sécurité implicite commence automatiquement par une connexion SSL dès qu’un client FTPS se connecte à un serveur FTPS.

    FTPS (TLS implicite) [non recommandé] Non recommandé car FTPS n’est plus pris en charge par certains fournisseurs de pare-feu. Envisagez d’utiliser SFTP comme alternative.

    Dans la sécurité implicite, le serveur FTPS définit un port spécifique que le client (990) doit utiliser pour les connexions sécurisées. La sécurité implicite commence automatiquement par une connexion TLS dès qu’un client FTP se connecte à un serveur FTP.

    HTTP Récupérez un fichier à l’aide de HTTP. Les champs sont fournis pour le nom du serveur et les informations d’identification de connexion.
    Important :
    Pour les protocoles HTTP et HTTPS, le chemin d’accès au fichier est automatiquement encodé par URL. Ne spécifiez pas de chemin de fichier encodé en URL lorsque vous utilisez l’un ou l’autre de ces protocoles.
    HTTPS Récupérez un fichier à l’aide de HTTPS. Les champs sont fournis pour le nom du serveur et les informations d’identification de connexion. Utilisez cette méthode pour transférer des données entre des instances ServiceNow.
    SCP Le protocole Secure Copy (SCP) transfère en toute sécurité des fichiers entre un hôte local et un hôte distant ou entre deux hôtes distants, à l’aide du protocole Secure Shell (SSH).

    Exemples de sources de données de fichiers

    Ces exemples décrivent comment importer différents types de fichiers en tant que sources de données.

    Fichier de source de données Excel

    Vous pouvez importer en utilisant à la fois le format XLSX et le format XLS hérité. XLS est le format par défaut pour les feuilles de calcul créées dans Excel pour les versions 2003 et antérieures. XLSX est le format par défaut pour Excel 2007 ou version ultérieure. Utilisez XLSX au lieu de XLS hérité dans la mesure du possible pour des performances optimales.

    Remarque :
    • Tous les dossiers .xls doivent utiliser le système de date de 1900 par opposition au système de date de 1904. Le système de date de 1904 entraîne l’importation de vos dates avec une année antérieure de quatre ans à ce qui apparaît dans votre feuille de calcul. Reportez-vous à MS Support pour plus d’informations sur les systèmes de date.
    • Lors de l’importation d’un fichier Excel dont les valeurs booléennes sont en majuscules (VRAI/FAUX), les deux valeurs se transforment toujours en faux. Pour éviter ce comportement, définissez la glide.transform.boolean.casesensitive propriété sur faux.
    Figure 1. Données de démonstration Microsoft Excel
    Données de démonstration Microsoft Excel

    Fichier source de données XML

    XPath de chaque ligne
    Les définitions de sources de données XML comportent un champ supplémentaire pour spécifier le XPath de chaque ligne. Ce champ est une expression XPath permettant de sélectionner les éléments dont les enfants sont convertis en lignes dans la table de jeux d’importation. Chaque élément sélectionné entraîne la création d’une ligne dans la table de jeu d’importation. Les enfants de l’élément sélectionné sont convertis en colonnes dans la ligne. Par exemple, pour importer les informations de ressource à partir de l’exemple de fichier XML ci-dessous, l’expression XPath doit être spécifiée comme /export/asset. Cette expression correspond aux trois éléments <asset> du fichier, de sorte que trois lignes sont créées. Bien que vous puissiez également spécifier asset, cette expression est beaucoup moins efficace pour les fichiers volumineux. Utilisez le formulaire de chemin d’emplacement absolu pour les expressions XPath lors de l’utilisation du chargeur XML. En d’autres termes, évitez les expressions contenant sauf si cela est strictement nécessaire.

    Attention à ne pas spécifier une expression XPath insuffisamment restrictive avec un fichier XML volumineux. Par exemple, l’expression /export serait incorrecte pour le fichier d’exemple suivant, car elle correspond à l’élément document (racine). En général, vous ne devez jamais spécifier une expression XPath qui correspond à l’élément racine, sauf si vous souhaitez que tout dans le document soit transformé en une seule ligne. La spécification d’une expression XPath insuffisamment restrictive lors de la tentative de chargement de fichiers XML volumineux peut entraîner des temps de traitement longs et une sortie incorrecte. Pour cette raison, il est préférable de tester et de déboguer les spécifications des sources de données XML avec de petits fichiers XML contenant seulement quelques lignes de données. Une fois la spécification testée, vous pouvez l’exécuter à nouveau avec le fichier complet.

    Éléments <userInfo>
    Notez que les éléments <userInfo> contenus dans <asset> contiennent des éléments enfants. Ce type d’imbrication crée une colonne appelée userInfo qui contient du code XML pour l’élément <userInfo> . Si l’option Développer les nœuds enfants est cochée, des colonnes individuelles sont également créées pour userInfo/lastName et userInfo/firstName. Si l’option Développer les nœuds enfants n’est pas cochée, seule la colonne XML userInfo est créée.
    Chargement de données à partir d’un fichier XML
    Lors du chargement des données à partir d’un fichier XML, ServiceNow échantillonne les 10 premiers enregistrements pour déterminer les champs requis pour contenir les données. Si aucun des 10 premiers enregistrements ne spécifie de valeur pour un champ, ServiceNow ce champ n’est pas ajouté à la table qui contient les données importées. Assurez-vous qu’au moins un des 10 premiers enregistrements spécifie une valeur pour tous les champs en cours d’importation.
    Si le fichier XML utilisé pour une source de données XML ne contient pas de champ dans les 10 premiers nœuds, le champ est ignoré. Pour importer le champ et vous assurer qu’il n’est pas ignoré, vous pouvez ajouter la glide.db.impex.XMLLoader.max.scan_nodes propriété système avec une valeur supérieure ou égale à la position du nœud où le champ est rencontré en premier. Cette propriété s’applique à toutes les sources de données XML. glide.db.impex.XMLLoader.max.scan_nodes La valeur par défaut est 10, mais vous pouvez entrer une valeur comprise entre 1 et 2147483647 pour spécifier le nombre de nœuds à analyser afin de déterminer les valeurs à utiliser pour l’importation. Vous pouvez spécifier -1 pour analyser tous les nœuds dans les fichiers XML.
    Important :
    Si vous spécifiez -1 ou augmentez la valeur de glide.db.impex.XMLLoader.max.scan_nodes au-delà de la valeur par défaut de 10, tout traitement d’importation XML peut entraîner une augmentation significative du temps de chargement global.
    <?xml version= "1.0" encoding= "utf-8" ?><export><asset><assetTag>AT-01939</assetTag><type>Desktop</type><os>Windows 7 Professional</os><lastlogondate>12-07-2010 12:31:24</lastlogondate><userInfo><lastName>Loo</lastName><firstName>David</firstName></userInfo><isenabled>true</isenabled></asset><asset><assetTag>AT-53480</assetTag><type>Desktop</type><os>Windows 7 Professional</os><lastlogondate>09-07-2010 13:25:53</lastlogondate><userInfo><lastName>Merritt</lastName><firstName>Norris</firstName></userInfo><isenabled>true</isenabled></asset><asset><assetTag>AT-55782</assetTag><type>Desktop</type><os>Unknown</os><lastlogondate>01-01-1900 00:00:00</lastlogondate><userInfo><lastName>Currie</lastName><firstName>Mike</firstName></userInfo><isenabled>true</isenabled></asset></export>

    Fichier source de données CSV

    Les fichiers CSV sont utilisés comme format de fichier compatible entre les plates-formes pour le transfert de fichiers entre les plateformes. Un fichier CSV est un fichier texte qui définit une grille, où les virgules définissent les colonnes et les sauts de ligne définissent les lignes. Pour définir un espacement précis pour l’importation de chaînes, vous pouvez éventuellement mettre le texte entre guillemets.

    "user_name","name","email","sys_created_on","active"
    "jared.laethem","Jared Laethem","jared.laethem@yourcompany.com","2008-02-24 22:21:32","true"
    "jerrod.bennett","Jerrod Bennett","jerrod.bennett@yourcompany.com","2007-08-12 12:12:18","true"
    "eric.schroeder","Eric Schroeder","eric.schroeder@yourcompany.com","2007-07-03 11:50:20","true"
    "rob.woodbyrne","Rob Woodbyrne","rob.woodbyrne@yourcompany.com","2007-07-03 11:49:57","true"
    "admin","System Administrator","admin@yourcompany.com","2007-07-03 11:48:47","true"
    "christen.mitchell","Christen Mitchell","christen.mitchell@yourcompany.com","2007-05-16 15:26:42","true"
    "rob.phillips","Rob Phillips","rob.phillips@yourcompany.com","2007-01-22 11:25:34","true"
    "davin.czukowski","Davin Czukowski","davin.czukowski@yourcompany.com","2006-07-11 14:01:26","true"
    "luke.wilson","Luke Wilson","luke.wilson@yourcompany.com","2006-02-07 15:29:48","true"
    "bow.ruggeri","Bow Ruggeri","bow.ruggeri@yourcompany.com","2005-07-07 11:39:58","true"
    "don.goodliffe","Don Goodliffe","don.goodliffe@yourcompany.com","2005-05-02 12:28:40","true"
    "david.loo","David Loo","david.loo@yourcompany.com","2005-02-22 16:00:00","true"
    "guest","Guest","guest@yourcompany.com","2004-05-01 17:00:00","true"
    "fred.luddy","Fred Luddy","fred.luddy@yourcompany.com","2004-05-01 17:00:00","true"

    Lorsque vous utilisez des fichiers CSV, vous pouvez spécifier le jeu de caractères de codage à l’aide du champ Propriétés du formulaire Source de données. Vous devrez peut-être configurer la mise en page du formulaire Source de données pour afficher ce champ. Par exemple, pour utiliser l’encodage utf-8, saisissez charset=utf-8.

    Données dans une colonne unique

    Pour les formats JSON et XML, cette fonctionnalité vous permet de stocker un enregistrement complet dans une seule colonne.

    Le nom de colonne utilisé pour stocker l’enregistrement complet est données.

    Si vous créez une source de données au format JSON pour enregistrer les données dans une seule colonne, la sélection de la case à cocher Données dans une seule colonne met à jour les options suivantes :
    • L’option Ignorer le tableau devient désélectionnée et est supprimée du formulaire.
    • Développer les enfants de nœud est sélectionné et supprimé du formulaire.
    Figure 2. Données JSON dans une seule colonne
    Données JSON dans une seule colonne

    Si vous créez une source de données au format XML pour enregistrer les données dans une seule colonne et que vous cochez la case Données dans une seule colonne , l’option Développer les enfants de nœud devient sélectionnée et est supprimée du formulaire.

    Figure 3. Données XML dans une seule colonne
    Données XML dans une seule colonne

    Format personnalisé (analyser par script)

    Lorsque vous sélectionnez un type de fichier et un format personnalisé (analyser par script), un éditeur Javascript appelé script d’analyse apparaît. Vous pouvez utiliser le script d’analyse pour créer un Javascript personnalisé afin d’analyser les lignes d’entrée dans la liste des cartes.

    Le Javascript comporte trois paramètres prédéfinis :
    • Le line paramètre est une chaîne qui contient les données linéaires du fichier source.
    • Il s’agit lineNumber du numéro de ligne du fichier source pour ces données de ligne.
    • Le result paramètre est utilisé pour renvoyer le résultat analysé à partir de Javascript.
    Le result paramètre est une instance de l’objet Java ScopedScriptParseResult. Lorsque vous tapez result., quatre méthodes disponibles apparaissent en tant que saisie semi-automatique du script dans l’éditeur Javascript :
    Figure 4. Menu de saisie semi-automatique
    Menu de saisie semi-automatique
    • void setSkip(saut booléen) ;
    • booléen getSkip() ;
    • addRow(Carte<chaîne, chaîne> carte) ;
    • Liste<Carte<Chaîne,Chaîne>> getRows()

    Les valeurs setSkip() et getSkip() définissent et récupèrent le marqueur skip. Lorsque le marqueur skip est défini sur true, l’intégralité du résultat d’analyse de Javascript est ignorée.

    addRow() ajoute une carte du résultat de la ligne d’analyse, qui est insérée dans la table intermédiaire.

    getRows() récupère toutes les lignes du résultat d’analyse en cours, qui sont insérées dans la table intermédiaire.

    Une ligne de données sources peut contenir une ligne ou plusieurs lignes. C’est à l’auteur du script de décider comment traiter les données de ligne. Par exemple, pour les données de ligne name=john,computer=windows ; nom=Joe,ordinateur=linux ; name=linda,computer=windows, si vous utilisez un point-virgule (;) comme saut de ligne, alors cette ligne contient trois lignes de données. Chaque ligne est une carte avec deux clés : nom et ordinateur. Le nom et l’ordinateur deviennent les noms de colonnes du schéma de la table intermédiaire. Vous pouvez utiliser l’exemple de JavaScript suivant pour analyser ces données de ligne :

    (function(line, lineNumber, result) {
     var rowArr = line.split(";");
     var i;
     for(i in rowArr) {
     var map = {};
     var arr = rowArr[i].split(",");
     var x;
     for(x in arr) {
     var items = arr[x].split("=");
     map[items[0]]=items[1];
     }
     result.addRow(map);
     }
    })(line, lineNumber, result);

    L’auteur du script doit ajouter le résultat afin que le résultat soit inséré dans la table intermédiaire.