Grâce à ce principe, vous pouvez créer une instance dérivée
à partir d'une instance de référence puis utiliser cette instance
dérivée pour générer l'instance de référence sans dupliquer son
design. Il y a deux types de dérivation : la dérivation par Substitution
de bibliothèque et la dérivation par Héritage
de source. Avec la Substitution de bibliothèque,
vous créez une instance dérivée pour générer l'instance depuis
une bibliothèque différente de celle indiquée dans l'instance
de référence. Avec l'Héritage de source,
vous créez une instance dérivée qui va hériter du code source complet
(code généré à partir du design et code spécifique) de l'instance
de référence.
Substitution de bibliothèque
Ce type de
dérivation est disponible pour les entités suivantes : Programmes,
Ecrans, Structures de Données (pour la génération des Copybooks et
des libellés d'erreur) et Dialogues (pour la génération des libellés
d'erreur).
Vous l'utilisez quand une instance doit
être générée depuis plusieurs bibliothèques (ex : un Programme devant
être généré pour les plateformes CICS et IMS). Vous créez alors une
instance dérivée pointant vers une instance de référence et une bibliothèque
de génération. L'instance dérivée ne contient aucun élément de
design mais vous permet de générer l'instance de référence depuis
une autre bibliothèque, sans dupliquer son design.
Pour créer
l'instance dérivée, vous devez utiliser l'assistant de création
d'instance propre à l'entité (par exemple, vous utilisez
l'assistant de création de Programme pour créer une instance
dérivée de Programme). Renseignez les zones de cet assistant et cochez
la case
Dériver. Puis sélectionnez
Substitution
de bibliothèque dans la zone
Type de dérivation et
indiquez l'instance dont elle est dérivée dans la zone
<Entité>
à dériver.
Conseil : Si vous laissez le Nom à
blanc, cochez la case Dériver et indiquez l'instance
de référence, le nom de l'instance dérivée sera automatiquement
initialisé avec le nom de l'instance de référence. Il vous suffira
de le compléter avec le nom de la bibliothèque ou tout autre code
distinctif. De cette façon, vous pourrez facilement repérer l'instance
de référence et son instance dérivée parmi toutes les instances affichées.
L'instance dérivée apparaît sous la même
entité que l'instance dont elle est dérivée, dans le même référentiel
de la vue Explorateur de designs. Si vous double-cliquez
dessus, vous verrez qu'elle ne contient que l'onglet Vue
d'ensemble (avec un lien vers l'instance de référence
contenant le design, et un lien vers la bibliothèque de génération)
et l'onglet Mots clés.
Vous devez
alors générer l'instance dérivée. Cette génération génère en
fait l'instance de référence, mais avec les paramètres de la
bibliothèque de génération sélectionnée dans l'instance dérivée.
Remarque : Si
le design de l'instance de référence a été modifié, la génération
de l'entité dérivée prend en compte ce changement sauf si ce changement
ne concernait qu'un changement de bibliothèque.
Le
fichier Cobol généré sera créé, imbriqué sous l'instance dérivée.
Vous pouvez ainsi conserver autant de fichiers Cobol de la même instance
qu'il y a de cibles de génération.
Héritage de source
Ce type de dérivation
est réservé aux entités dans lesquelles du code spécifique peut être
inséré : les Programmes et les Ecrans. Il est utile lorsque le code
spécifique est réparti sur plusieurs bibliothèques.
Il vous
permet de créer une instance dérivée qui ne contiendra aucun élément
de design mais pointera vers une instance de référence. L'instance
dérivée héritera du code source complet de l'instance de référence.
Quand
vous générez une instance dérivée créée avec ce type de dérivation,
les étapes suivantes sont exécutées :
- L'instance référencée par l'instance dérivée est automatiquement
générée. Si le design et/ou le code spécifique de cette instance de
référence ont été modifiés, ces modifications sont prises en compte
et une réconciliation (processus qui intègre les changements de design
tout en conservant le code spécifique) est automatiquement lancée.
Cette étape produit le code source complet (le code généré à partir
du design et le code spécifique) de l'instance de référence.
- Ce code source complet est passé dans l'instance dérivée,
où il est alors considéré comme le code généré. Une nouvelle réconciliation
réconcilie alors ce généré avec le code spécifique de l'instance
dérivée.
Remarque : Si vous générez une instance dérivée, son instance
de référence est automatiquement regénérée. En revanche, si vous générez
une instance de référence, son instance dérivée n'est pas automatiquement
regénérée.
A partir du même design de la même instance VA
Pac, vous pouvez donc générer deux fichiers source contenant deux
sources Cobol différents. Vous pouvez répéter cette opération à partir
de l'instance dérivée, qui peut à son tour devenir l'instance
de référence d'une nouvelle instance dérivée...
L'instance
dérivée est très simple puisqu'elle ne contient qu'une seule
zone : une référence à l'instance générable (Programme ou Ecran).
Pour
créer l'instance dérivée, vous devez utiliser l'assistant
de création d'instance propre à l'entité (par exemple, vous
utilisez l'assistant de création de Programme pour créer une
instance dérivée de Programme). Renseignez les zones de cet assistant
et cochez la case
Dériver. Puis sélectionnez
Héritage
de source dans la zone
Type de dérivation et
indiquez l'instance dont elle est dérivée dans la zone
<Entité>
à dériver (cette instance peut être un Programme, un Ecran
ou une instance dérivée de Programme ou d'Ecran).
Conseil : Si
vous laissez le Nom à blanc, cochez la case Dériver et
indiquez l'instance de référence, le nom de l'instance dérivée
sera automatiquement initialisé avec le nom de l'instance de
référence. Il vous suffira de le compléter avec un code distinctif.
De cette façon, vous pourrez facilement repérer l'instance de
référence et son instance dérivée parmi toutes les instances affichées.
L'instance
dérivée apparaît sous la même entité que l'instance dont elle
est dérivée, dans le même référentiel de la vue Explorateur
de designs. Si vous double-cliquez dessus, vous verrez
qu'elle ne contient que l'onglet Vue d'ensemble (avec
un lien vers l'instance de référence) et l'onglet Mots
clés.