Cet article a pour objectif d'expliquer comment importer des objets du dictionnaire.
Pour comprendre plus précisément le concept de propriété et d'objet, vous pouvez consulter cet article.
Cette fonctionnalité vise à :
- Faciliter l'import des objets du dictionnaire.
- Accélérer la mise à jour d'objets grâce à l'import de données préalablement exportées.
La fonctionnalité d'import est disponible :
- Depuis le widget "Raccourcis" présent sur l'écran d'accueil d'un espace client ou d'un espace de travail
- Depuis le module Dictionnaire lorsque celui-ci est vide
- Depuis le menu contextuel du module Dictionnaire à droite des vues filtrées
- Depuis le menu contextuel d'une source du module Dictionnaire dont vous souhaitez importer des données (situé en haut à droite de la fiche objet)
Quels sont les éléments importables dans le dictionnaire ?
Le module dictionnaire contient 4 types de sources : bases de données relationnelles, FileStore, sources NoSQL & sources Tagbase. De par leur nature, ces objets ne sont pas composés des mêmes éléments :
Vous pouvez également importer des informations sur vos objets grâce aux attributs. Cette fonctionnalité est disponible pour les objets de type source, conteneur, structure et champs.
| Type de sources | Type de conteneur | Type de structures | Sous-structure | Type de champs | Clé primaire | Clé secondaire | Relations |
|---|---|---|---|---|---|---|---|
| DataBase | Modèle | Table | N/A | Colonne | Oui | Oui | Oui |
| FileStore | Répertoire | Fichier | Oui | Champ | N/A | N/A | N/A |
| NoSql | Modèle | Table | N/A | Colonne | N/A | N/A | N/A |
| NoSql | Répertoire | Fichier | N/A | Champ | N/A | N/A | N/A |
| NoSql | Répertoire | Document | Oui | Champ | N/A | N/A | N/A |
| Tagbase | Equipement | Tag | N/A | Champ | N/A | N/A | N/A |
Quels sont les éléments obligatoires lors de l'import ?
Pour les objets de type modèle, structure et champ, si certaines options sont paramétrables par la suite, le fichier à importer devra toujours contenir les colonnes suivantes :
- Le path de l'objet
- Le type de l'objet
- + une colonne pour chaque attribut faisant partie de la fiche d'un objet que vous souhaitez importer
Exemple de structure de fichier CSV à importer pour un modèle d'une source de type FileStore :
"Type";"Path";"Summary";"Status";"DataOwners" "\Directory";"\Workspace";"Home";"Proposed";"dataowner@datagalaxy.com" "\Directory";"\Users";"Files of users";"Proposed;dataowner@datagalaxy.com"
Pour l'import des clés primaires, le fichier à importer devra toujours contenir les colonnes suivantes :
- Le path de l'objet Table
- Le nom de la colonne représentant la clé primaire
- + une colonne pour chaque attribut faisant partie de la fiche d'un objet que vous souhaitez importer
Exemple de structure de fichier CSV à importer pour une source de type Database :
"TablePath";"TableType";"ColumnName";"PKTechnicalName";"PkOrder" "\pays";"\Table";"id";"PK_PAYS";"1"
Pour l'import des clés étrangères, le fichier à importer devra toujours contenir les colonnes suivantes :
- Le path de l'objet Table ayant la clé primaire
- Le nom de la colonne représentant la clé primaire
- Le path de l'objet Table ayant la clé étrangère (notion enfant)
- Le nom de la colonne représentant la clé étrangère
- Le nom technique de la clé primaire
- Le nom technique de la clé étrangère
Exemple de structure de fichier CSV à importer pour une source de type Database :
"FKTechnicalName";"PKTechnicalName";"PkTablePath";"PkTableType";"PkColumnName";"ChildTablePath";"ChildTableType";"ColumnName" "FK_PK_PAYS";"PK_pays";"\pays";"\Table";"id";"\map";"\Table";"id_pays"
Pour l'import des clés fonctionnelles, le fichier à importer devra toujours contenir les colonnes suivantes :
- Le path de l'objet Table parent
- Le type de l'objet Table parent
- Le path de l'objet Table enfant
- Le type de l'objet Table enfant
- Le libellé fonctionnel de la relation
Exemple de structure de fichier CSV à importer pour une source de type Database :
"ParentTablePath";"ParentTableType";"ParentTableTechnicalName";"FunctionalLabel";"ChildTablePath";"ChildTableType" "\AGG_COMMISSIONS_MOIS";"\Table";"Aggregate at the monthly level";"\FAIT_COMMISSIONS";"\Table"
Comment réaliser l'import des éléments
Dans notre exemple, nous mettons à jour une source déjà existante :
1. Accédez au module Dictionnaire
2. Cliquez sur l'icône 3 petits points
3. Dans le menu déroulant, cliquez sur Importer 
4. Sélectionnez ou glisser/déposer votre fichier à importer dans la zone d'import de fichier CSV disponible en haut à gauche.
Quel que soit le point d'entrée choisi, la popup suivante générique d'import et de connectivité s'affiche

5. Sélectionner Structure au sein du module Dictionnaire
La zone centrale permet d'ajuster les paramètres techniques du fichier (encodage, séparateur) et la tableau, vous propose un aperçu du contenu du fichier.

Lors d'une sélection dans le module Dictionnaire, le paramétrage de la source est obligatoire afin de choisir une des options suivantes :
- Créer d'une nouvelle source : permet de créer une source et d'importer les éléments dedans
- Mise à jour d'une source existante : permet d'importer les éléments dans une source existante
Dans notre exemple, sélectionner une source à mettre à jour et cliquer sur le bouton Suivant 
6. L'étape suivante permet d'effectuer le mapping des propriétés et de réaliser des contrôles fonctionnels avant import. Lorsque c'est possible, une correspondance automatique entre les champs sources et cibles est effectuée et la vérification de votre fichier est lancée.
- Si les champs obligatoires ne sont pas mappés, la vérification n'est pas lancée et l'import n'est pas possible.
- En cas de succès, l'import est possible (le bouton Importer est immédiatement actif).
- En cas d'échec, les contrôles en erreur sont présents dans l'onglet Contrôles.
En cliquant sur le statut en cas d'échec, l'onglet liste les contrôles pour lesquels une erreur a été détectée :
- Lorsque une erreur bloquante peut être résolue, la solution est renseignée dans la colonne "Action".
- Ces contrôles sont obligatoires, et doivent être relancés lorsqu'une modification (mapping, paramétrage) de l'import est effectuée.
7. L'onglet Mapping permet de définir la correspondance entre les champs du fichier et les attributs DataGalaxy à alimenter :
- Faire glisser les champs de la colonne de gauche sur les champs correspondants à droite pour définir une nouvelle correspondance.
- Seuls les champs type et path, identifiés en rouge, sont obligatoires.
- Pour les fichiers avec de nombreux champs: il est possible de faire des recherches de champs et de masquer les champs déjà utilisés
NB : Dans le cas de mise à jour de vos objets via cet import, si vous importez des valeurs vides des attributs dans votre fichier, qui sont déjà renseignées dans vos fiches objets, ces valeurs vides seront ignorées par défaut et vos valeurs existantes sont sauvegardées. Mais, en cochant cette option (figure ci-dessous), elles videront les valeurs existantes.
8. L'onglet Aperçu permet d'avoir un aperçu des valeurs pour chaque attribut à importer, pour lequel une correspondance a été définie.
9. Lorsque ces étapes sont complétées et que le contrôle est en succès, le bouton Importer devient actif. Cliquer dessus pour lancer l'import. Un message de confirmation apparaît avec le nombre d’éléments impactés par l'import ou un message d'erreur avec un tableau listant les erreurs rencontrées.

10. Cliquez sur Fermer pour fermer l'import ou sur un Nouvel import pour importer d'autres éléments du Dictionnaire :
- Les champs
- Les clés primaires et étrangères
- Les clés fonctionnelles (les relations)

Comportement de l'import
Les conteneurs, les structures et les champs sont mis à jour selon la logique suivante :
- Les nouvelles colonnes et tables correspondantes sont créées.
- Les colonnes déjà existantes dans DataGalaxy restent présentes.
- Les colonnes et tables déjà existantes dans DataGalaxy et modifiées dans le fichier, sont mises à jour.
Les clés primaires, clés étrangères et clés fonctionnelles sont mis à jour selon la logique suivante :
- Lors de la modification de clés d'une table, les anciennes sont supprimées ainsi que leurs représentations correspondantes dans les diagrammes.
- Les nouvelles clés primaires sont créées.
- Les tables utilisées dans les diagrammes restent bien présentes sur votre espace principale dans le diagramme.
Releases
| Date | Plugin version | DataGalaxy release | Desktop connector version (minimum) | Description |
| 26/07/2024 | 5.0.1 | v3.62.0 | 5.0.3 | Migrated from java 11 to java 17 |