TIBCO EBX®
Documentation > Manuel de référence > Intégration > Services d'import et d'export
Mode navigationDocumentation > Manuel de référence > Intégration > Services d'import et d'export

Import et export CSV

Introduction

L'import et l'export CSV peuvent être réalisés sur des tables via l'interface utilisateur en utilisant le menu 'Actions' de l'espace de travail.

L'import et l'export sont réalisés dans le contexte d'un jeu de données.

L'import et l'export peuvent aussi être réalisés programmatiquement.

Les valeurs par défaut des options peuvent être définies dans 'Administration', sous Interface utilisateur > Configuration de l'interface graphique > Valeurs par défaut des options > Import / Export.

Exports

Lors d'un export au format CSV, si des filtres sont appliqués à la table, seuls les enregistrements correspondant au filtre seront inclus.

Les options d'export CSV sont :

Nom du fichier de téléchargement

Spécifie le nom du fichier CSV à exporter. Ce champ est pré-rempli avec le nom de la table source des enregistrements.

Jeu de caractères

Spécifie le jeu de caractère à utiliser pour le fichier exporté. La valeur par défaut est UTF-8.

Activer l'héritage

Afin de prendre en compte l'héritage lors d'un export CSV, l'option doit être spécifiée au préalable dans le modèle.

Pour plus d'informations sur l'héritage, voir Héritage et résolution de valeur.

Spécifie si l'héritage est pris en compte durant l'export CSV.

Si l'héritage est activé, les valeurs de champs résolues sont exportées avec les données techniques qui définissent le mode d'héritage potentiel de l'enregistrement ou du champ.

Si l'héritage est désactivé, les valeurs de champs résolues sont exportées et les enregistrements occultés sont ignorés.

Par défaut, cette option est désactivée.

Note : L'héritage est toujours ignoré lorsque le jeu de données de la table n'a pas de parent ou si la table n'a pas de champ hérité.

Mode convivial

Indique si les valeurs doivent être présentées de façon conviviale pour l'utilisateur ou sous leur forme brute (format XML standard). En mode convivial, les dates et les nombres sont formatés selon la région de l'utilisateur, les clés étrangères et valeurs énumérées présentent les libellés associés, etc.

Note : Si cette option est sélectionnée, le fichier exporté ne pourra pas être ré-importé.

Inclure les données techniques

Indique si des données techniques internes seront incluses dans l'export.

Note : Si cette option est sélectionnée, le fichier exporté ne pourra pas être ré-importé.

En-têtes de colonne

Spécifie s'il faut ou non inclure les en-têtes de colonne dans le fichier CSV.

  • Pas d'en-tête

  • Libellé : Une ligne est ajoutée au début du fichier CSV et contient dans chaque colonne son libellé correspondant. Chaque libellé est localisé conformément à la préférence de langue de la session active. Si aucun libellé n'est défini pour un nœud, le nom technique du nœud est utilisé.

  • XPath: Une ligne est ajoutée au début du fichier CSV et contient dans chaque colonne le chemin d'accès correspondant.

Séparateur de champ

Spécifie le séparateur de champ à utiliser lors des exports. Le séparateur par défaut est la virgule, il peut être redéfini dans Administration > Interface utilisateur.

Séparateur de liste

Spécifie le séparateur à utiliser pour les listes de valeurs. Le séparateur par défaut est le retour à la ligne, il peut être redéfini dans Administration > Interface utilisateur.

Les exports CSV programmatiques sont réalisés en utilisant les classes ExportSpec et ExportImportCSVSpec dans l'API Java.

Imports

Nom du fichier de téléchargement

Spécifie le nom du fichier CSV à importer.

Mode d'import

Lors de l'import d'un fichier CSV, il est nécessaire de spécifier un des modes suivants, qui contrôlera l'intégrité des opérations entre la source et la table cible.

  • Insertion seulement : Seule la création d'enregistrement est autorisée. Si un enregistrement avec la même clé primaire existe dans la table, une erreur se produit et l'opération est annulée.

  • Mise à jour seulement : Seule la mise à jour d'enregistrement est autorisée. Si un enregistrement avec la même clé primaire n'existe pas dans la table, une erreur se produit et l'opération est annulée.

  • Mise à jour ou insertion : Si un enregistrement avec la même clé primaire existe dans la table, il est mis à jour ; sinon, il est créé.

  • Remplacement (synchronisation) : Si un enregistrement avec la même clé primaire existe dans la table cible, celui-ci est mis à jour ; sinon, un nouvel enregistrement est créé. D'autre part, si un enregistrement n'est plus présent dans la source, il est supprimé.

Jeu de caractères

Spécifie le jeu de caractère à utiliser pour le fichier importé. La valeur par défaut est UTF-8.

En-têtes de colonne

Spécifie s'il faut ou non inclure les en-têtes de colonne dans le fichier CSV.

  • Pas d'en-tête

  • Libellé : Une ligne est ajoutée au début du fichier CSV et contient dans chaque colonne son libellé correspondant. Chaque libellé est localisé conformément à la préférence de langue de la session active. Si aucun libellé n'est défini pour un nœud, le nom technique du nœud est utilisé.

  • XPath: Une ligne est ajoutée au début du fichier CSV et contient dans chaque colonne le chemin d'accès correspondant.

Séparateur de champ

Spécifie le séparateur de champ à utiliser lors des imports. Le séparateur par défaut est la virgule, il peut être redéfini dans Administration > Interface utilisateur.

Séparateur de liste

Spécifie le séparateur à utiliser pour les listes de valeurs. Le séparateur par défaut est le retour à la ligne, il peut être redéfini dans Administration > Interface utilisateur.

Activer l'héritage

Afin de prendre en compte l'héritage lors d'un export CSV, l'option doit être spécifiée au préalable dans le modèle.

Pour plus d'informations sur l'héritage, voir Héritage et résolution de valeur et ExportImportCSVSpec.setInheritanceEnabled.

Spécifie si l'héritage est pris en compte pendant un import CSV. Si les données techniques dans le fichier CSV définissent un mode d'héritage, les champs ou les enregistrements correspondants sont obligatoirement hérités. Si des données techniques définissent un mode occulté, les enregistrements correspondants sont obligatoirement occultés. Autrement, les champs sont écrasés au profit de valeurs issues du fichier CSV.

Par défaut, cette option est désactivée.

Note : L'héritage est toujours ignoré lorsque le jeu de données de la table n'a pas de parent ou si la table n'a pas de champ hérité.

Les imports CSV programmatiques sont réalisés en utilisant les classes ImportSpec et ExportImportCSVSpec dans l'API Java.

Gestion des valeurs de champ

Listes agrégées

Les services d'import et d'export CSV supportent les champs à valeurs multiples, à savoir les listes agrégées. Seules les listes simples telles que les listes de string, date, ou int et les clés étrangères sont supportées. Si une clé étrangère est liée à un enregistrement via une clé primaire composée, chaque champ de la clé étrangère est une chaîne formatée, par exemple, "true|99". Les listes agrégées des groupes ne sont pas exportées.

Lors d'un export, les éléments de la liste sont séparés par le séparateur de ligne. Dans les cas où le champ exporté contient déjà un séparateur de ligne, par exemple dans un osd:html ou un osd:text, le code _crnl_ est inséré à la place du séparateur de ligne du champ de valeur. Le même formatage est attendu lors de l'import, l'ensemble des valeurs de champ sont alors entourées de guillemets.

Champs cachés

Les champs cachés sont exportés en tant que chaînes ebx-csv:hidden. Une chaîne cachée importée ne modifiera pas le contenu d'un champ.

Valeur de chaîne 'Null'

En utilisant les services d'import et d'export CSV, une chaîne dont la valeur est null est exportée en tant que chaîne vide. Par conséquent, une boucle de procédure d'export-import finira par remplacer les valeurs de chaîne null par des chaînes vides.

En utilisant les services programmatiques, la valeur spécifique ebx-csv:nil peut être assignée à des chaînes dont la valeur est null. Dans ce cas, les valeurs de chaîne null ne seront pas remplacées par des chaînes vides lors de boucles de procédure export-import. Voir ExportImportCSVSpec.setNullStringEncoded dans l'API Java pour plus d'informations.

Formats de date, heure et dateTime

Les formats de date et d'heure suivants sont supportés :

Type

Format

Exemple

xs:date

aaaa-MM-jj

2007-12-31

xs:time

HH:mm:ss ou HH:mm:ss.SSS

11:55:00

xs:dateTime

aaaa-MM-jjTHH:mm:ss ou aaaa-MM-jjTHH:mm:ss.SSS

2007-12-31T11:55:00

Limitations connues

Listes agrégées de groupes

Les services d'import et d'export CSV ne supportent pas les groupes à valeurs multiples, à savoir, des listes agrégées d'éléments de type complexe. L'export de ces nœuds ne causera aucune erreur, cependant, aucune valeur ne sera exportée.

Groupes terminaux

Dans un fichier CSV, il est impossible de différencier un groupe terminal créé, contenant uniquement des champs vides, d'un groupe terminal non créé.

Par conséquent, quelques différences peuvent apparaître lors de la comparaison après avoir réalisé une boucle de procédure d'export-import. Afin de s'assurer de la symétrie de l'import et de l'export, il est préférable d'utiliser la fonction import et export XML. Voir Import et export XML.

En-têtes de libellé de colonne

Si deux colonnes partagent le même libellé, l'export de la table peut être réalisé avec succès, mais les données exportées ne pourront pas être ré-importées par la suite.

Champs d'association

Les services d'import et d'export CSV ne supportent pas les valeurs d'association, c'est à dire les enregistrements associés.

L'export de ces champs ne causera aucune erreur, cependant, aucune valeur ne sera exportée.

L'import de ces champs causera une erreur et la procédure d'import échouera.

Nœuds de sélection

Les services d'import et d'export CSV ne supportent pas les valeurs de sélection, c'est à dire les enregistrements sélectionnés.

L'export de ces champs ne causera aucune erreur, cependant, aucune valeur ne sera exportée.

L'import de ces champs causera une erreur et la procédure d'import échouera.

Documentation > Manuel de référence > Intégration > Services d'import et d'export