Gestion des connexions nommées

Les connexions nommées stockent les informations de connexions aux bases de données et services web. De la même manière que les formats et transformers personnalisés, les connexions nommées sont stockées dans des répertoires propres à chaque utilisateur. Elles sont ainsi stockées dans un fichier crypté « namedConnections.data » situé dans le répertoire

%userprofile%\AppData\Roaming\Safe Software\FME\

Ce fichier doit pouvoir être accessible par un utilisateur réel via FME Workbench pour créer et gérer les connexions, mais il doit également pouvoir être utilisé par le compte système local, compte qui, dans GTF, exécute le service Pycron pour lancer un traitement FME.

Or, contrairement aux utilisateurs classiques, le compte système local ne dispose pas de répertoire personnel %userprofile%. Il ne peut donc pas exploiter les connexions nommées d”un projet FME publié sur un serveur GTF.

Pour pouvoir exploiter les connexions nommées dans GTF, le fichier crypté des connexions nommées doit donc être localisé, puis une clé de registre doit ensuite être créée : elle indiquera l”emplacement du fichier crypté, de sorte à en assurer son utilisation par tout compte ne disposant pas de répertoire personnel tel que le compte Système local.

  • Rendre publiques les connexions nommées désirées
  • Exporter les connexions nommées désirées dans un répertoire spécifique
  • Créer une clé de registre contenant le chemin du répertoire par défaut, stockant le fichier des connexions nommées
  • Tester

Rendre publiques les connexions nommées

Dans un premier temps, pour pouvoir être exploitables par d”autres utilisateurs, les connexions nommées doivent être rendues publiques. Dans FME, dans le Menu « Outils » > « Options FME » > « Connexions aux bases de données », sélectionner les connexions nommées que vous souhaitez exporter (et les attribuer ensuite à un compte système local) puis cocher la case Public.

../../../../_images/fme_connexionsnommees.pngConnexion nommées Connexions nommées dans FME.

../../../../_images/warning3.png La possibilité de rendre publique une connexion nommée a été implémentée dans la version FME 2016. Or, FME exploite des connexions nommées créées dans d”anciennes versions. Dans ce cas, la colonne « Public » n”apparaît pas dans la fenêtre des connexions. Pour contourner ce problème et afficher la colonne « Public », exporter les connexions nommées dans un nouvel emplacement, supprimer les connexions initiales, puis les réimporter (cf. « procédure 6.1.9.2 »).

Exporter des connexions nommées

Sélectionner la ou les connexions nommées que vous souhaitez exporter puis dans le menu contextuel, choisir Exporter.

../../../../_images/fme_connexionnommeeExport.pngExport des connexions nommées Export des connexions nommées.

Les connexions sélectionnées sont exportées dans un fichier XML : « exportConnectionData_x.xml ». Choisir ensuite son emplacement.

../../../../_images/fme_connexionnommee_messageexport.png

Dans FME, il est alors possible de modifier l”emplacement du fichier des connexions nommées en indiquant le nouveau répertoire dans le menu « Outils » > « Options FME » > « Chemins par défaut ».

../../../../_images/fme_connexion_nommeenouveaureprroiredesconnexionsnomees.pngSpécification du répertoire des connesions nommées Spécification du répertoire des connesions nommées.

Vous pouvez, par exemple, supprimer les connexions nommées d”origine, puis importer celles que vous venez d”exporter et remplacer de la sorte les connexions initiales. Retourner dans le menu « Outils » > « Options FME » > « Connexions aux bases de données » et sélectionner Importer dans le menu contextuel dans la liste des connexions.

../../../../_images/fme_CN_IMPORT.png Import de connexions nommées

Sélectionner les connexions que vous souhaitez importer :

../../../../_images/f_cn_import_nouvellesconnexions.png Sélection des connexions nommées à importer

Les connexions nommées précédemment exportées sont à nouveau importées.

Dorénavant, 5 connexions nommées sont listées dans le menu « Outils » > « Options FME » > « Connexions aux bases de données » :

../../../../_images/fme_CN_CN.png Nouvelles connexions nommées

Création des clés de registre

Pour pouvoir attribuer au compte système local le répertoire par défaut des connexions nommées (nouvellement importées), un fichier de registre « cn32.reg » (ou « cn64.reg » selon les versions de FME) doit être créé et contenir le chemin du répertoire stockant le fichier crypté des connexions.

Windows Registry Editor Version 5.00
\\[HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Safe Software Inc.\\Feature Manipulation Engine\\Settings]
"Named Connection Db Type"=dword:00000000
"Named Connection Directory"="E:\\tmp\\connexion"

Clé de registre cn32.reg à créer.

Import de la clé de registre

Importer la clé de registre via la commande « Regedit » > « Import » ou par un double clic sur le fichier .reg.

  • « cn32.reg » contient la clé de registre pour FME 32 bits
  • « cn64.reg » contient la clé de registre pour FME 64 bits

../../../../_images/idea2.png Il est possible d”importer les deux clés.

Test

Veremes met à disposition sur son site de téléchargement le projet « ListSettings.fmw » qui génère un fichier texte ( »settings.txt ») dans lequel sont listés les paramètres système FME du serveur tels que les builds, l”interpréteur Python utilisé… Pour vérifier l”emplacement du répertoire des connexions nommés, exécuter le projet « ListeSettings.fmw » et s”assurer que dans le fichier texte généré, le répertoire spécifié soit bien rajouté et correct :

Settings:

Python:
Use Custom Python: false
Named Connection Db Type: 0
Named Connection Directory: E:\tmp\connexion
Statistics:
enabled: no

Publier une connexion nommée

Un auteur de projet peut publier une connexion nommée. Avec GTF 2015 et 2016.0, pour publier une connexion nommée il est nécessaire de créer un paramètre publié de type « TEXTE ».

doc_module_gtf/utilisation/publication_traitements/ajout_projet_fme/../../../images/CN_texte.png

Puis il faut associer ce paramètre publié au paramètre du Reader ou du Transformer concerné :

../../../../_images/CN_lie.png

../../../../_images/idea2.png Avec GTF 2016.1, les paramètres publiés de type Connexion Nommée sont automatiquement reconnus et transformés en paramètre de type Texte.