Lancées à l'aide du programme de lancement par lots Cúram, les principales fonctions de cet outil sont les suivantes :
- Cet outil extrait les informations de configuration Dynamic Evidence et les stocke dans des artéfacts de développement standard Cúram (par exemple des fichiers DMX, CTX, XML, blob/clob et de configuration de section). Cette opération est effectuée afin que ces artéfacts puissent être automatiquement recréés dans le cadre d'une reconstruction de base de données à l'aide du gestionnaire de données Cúram existant.
- L'outil écrit sa sortie dans un seul répertoire qu'il suppose être un répertoire de composant Cúram standard (par ex. Personnalisé). Par exemple, dans ce répertoire, il crée des sous-répertoires tels que Table de codes, Données et Onglet.
- L'extraction des enregistrements de base de données avec leurs clés primaires générées constitue un risque potentiel pour les collisions de clés lorsque les enregistrements sont téléchargés. En effet, lorsque la base de données est régénérée, le mécanisme de génération de clé est réinitialisé et il risque de produire les mêmes clés que celles des types d'informations collectées dynamiques extraits. Pour éviter cette situation, l'extracteur remplace les clés primaires de base de données générées par de nouvelles clés à partir d'une fourchette de clés prédéfinies. Celle-ci est appliquée individuellement à chaque table extraite et non partagée entre toutes les tables (les clés sont ainsi utilisées de manière plus efficace). Seules deux tables : CreoleRuleset et CreoleRulesetEditAction partagent la même fourchette de clés, car elles sont référencées à partir de la même zone dans la table CreoleRulesetCategoryLink.
- Les fichiers de configuration d'onglet (pour les onglets Informations collectées générés) sont extraits en tant qu'objets blob, dans le cadre de l'extraction de l'entité AppResource. Les fichiers de configuration de section, cependant, ne peuvent pas être extraits en tant qu'objets blob individuels. Ils sont extraits sous forme de fichiers de section de contribution (et placés dans le dossier Onglet), afin qu'ils puissent être fusionnés avec d'autres fichiers de section spécifiques au composant lors d'une génération de base de données.
- L'outil peut éventuellement extraire des liens d'informations collectées dynamiques vers des produits et dossiers intégrés, configurables via les paramètres d'entrée de l'extracteur. Notez que l'extracteur n'extrait pas les informations de configuration liées au produit ou au dossier intégré, seulement les liens vers ceux-ci.
- L'extracteur implémente trois stratégies d'extraction (celle à utiliser est déterminée par les paramètres d'entrée) :
- Extraire tous les types d'informations collectées dynamiques : tous les types d'informations collectées dynamiques actifs sur le système sont extraits.
- Extraire une liste des types d'informations collectées dynamiques : cette stratégie permet aux utilisateurs de spécifier une liste de types d'informations collectées dynamiques à extraire (à l'aide d'une liste de noms logiques de types d'informations collectées).
- Extraire un jeu de types d'informations collectées dynamiques identifié par un préfixe de code de type d'informations collectées : les codes de types d'informations collectées dynamiques sont générés à l'aide d'un préfixe de trois caractères personnalisable, par exemple DET. Cette stratégie d'extraction permet aux utilisateurs d'extraire uniquement les types d'informations collectées dynamiques qui utilisent un préfixe de code spécifique.
- Les types d'informations collectées dynamiques comprennent des descriptions localisables. Avant Cúram V6.0 SP2, les descriptions de tous les types d'informations collectées dynamiques sur le système étaient stockées dans un seul fichier de propriétés (DynEvd_EvidenceTypeDescriptions.properties) dans l'entité AppResource. Dans Cúram V6.0 SP2, ce mécanisme a changé et stocke les descriptions de type d'informations collectées dynamiques dans des ressources de propriétés individuelles, à raison d'une par type d'informations collectées. Si l'extracteur trouve l'ancien fichier de propriétés des descriptions d'informations collectées, il le divise en fichiers de propriétés spécifiques de type d'informations collectées individuels.
- L'extracteur extrait le jeu de clés (DYNEVDCODE) utilisé pour générer les codes de type d'informations collectées dynamiques (en conservant l'ID de bloc unique suivant de ce jeu de clés). Dynamic Evidence utilise la capacité du serveur de clés Cúram pour générer des clés lisibles par l'utilisateur. Cela permet de générer des codes de table de codes de type d'informations collectées dynamiques. La réinitialisation de la base de données entraîne également celle du mécanisme de génération de clés. Elle entraîne également le risque de conflits avec les clés précédemment générées. Pour éviter cette situation, il est préférable de conserver l'état du jeu de clés d'informations collectées dynamiques utilisé pour générer les codes de table de codes de type d'informations collectées.
- L'extracteur extrait les versions de type d'informations collectées actives et en cours d'édition.
- Un certain nombre de jeux de règles liés aux versions de type d'informations collectées sont extraits : des jeux de règles de données générées et de traitement, et des jeux de règles personnalisés (attributs calculés, validations, informations récapitulatives). Les jeux de règles personnalisés peuvent être édités par les clients. Les jeux de règles personnalisés juste créés sont extraits par l'outil (ainsi que les versions de type d'informations collectées en cours d'édition). Cependant, tous les changements apportés aux jeux de règles personnalisés publiés ne sont pas pris en compte par l'extracteur jusqu'à ce que les changements soient publiés.
- L'extracteur n'extrait pas les bundles de ressources localisables référencés à partir des jeux de règles. Les jeux de règles peuvent inclure des messages de ressources localisables qui sont stockés dans des bundles de ressources dans l'entité AppResource. Si les utilisateurs choisissent d'utiliser ces messages dans des jeux de règles personnalisés, ils doivent procéder manuellement à l'extraction des bundles de ressources les contenant.
- L'extracteur peut être exécuté à partir de la ligne de commande ou de l'environnement de développement Eclipse.
- Avant de télécharger à nouveau les artéfacts extraits dans la base de données, les tables de codes doivent être re-générées (via la génération de serveur ou de la cible ctgen) pour y inclure les codes de la table de codes de type d'informations collectées dynamiques extraits.