Rational Programming Patterns

Lignes -DH dans un Bloc Base de Données

Sous l'onglet Lignes -DH, vous pouvez décrire les relations entre les Segments dans une base de données hiérarchique (exemple : DL/1).

Chaque ligne désigne un Segment et son père (sauf la première ligne qui introduit le Segment racine). La description contient les records qui composent le fichier physique.

La description est commune aux Blocs Base de Données hiérarchiques - IMS DL/1 :
  • DP : DBD physique,
  • DR : Schéma DBD physique réduit (comme DP, mais seules les Rubriques référencées comme clés d'accès dans la description du Segment sont générées dans les déclarations "FIELD......" ),
  • DL: DBD logique,
  • PC : PCB.
  • IP : Index primaire,
  • IS: Index secondaire.

Définition d'une ligne -DH

La section Définition de la ligne -DH s'affiche lorsque vous insérez une ligne de description ou lorsque vous sélectionnez une ligne de description; elle contient les informations suivantes :

Définition
La zone Code Bloc est saisissable uniquement pour les Blocs de type PS. Pour sélectionner un Bloc PSB, vous devez cliquer sur Modifier, ce qui ouvre une boîte de dialogue. Vous pouvez voir la liste des instances disponibles sous vos référentiels en local pour les bases PSB. Le code PSB sélectionné s'affiche comme un lien qui permet de basculer vers l'éditeur du Bloc par un simple clic.
Pour une base PSB appelée dans une ligne -DH, vous ne devez renseigner que les zones Indicatif ou Option et Commentaire/Nom du lien/Longueur de clé.

Les options suivantes liées au Segment sont disponibles uniquement pour les Blocs autres que les types PC et PS.

Segments
Sélectionnez ici le code d'un Segment. Pour changer de Segment, cliquez sur Modifier. Dans la boîte de dialogue qui s'ouvre, vous pouvez choisir un code Segment dans la liste des Segments disponibles dans vos référentiels en local. Si la liste est volumineuse, vous pouvez la réduire en saisissant une chaîne de caractères qui sert de filtre (le filtre se fait sur le code ou sur le libellé de l'instance).
Segment père
Cliquez sur Modifier pour sélectionner le code du Segment dont le Segment précédent est hiérarchiquement dépendant. Dans le cas d'un Bloc de type IP ou IS, cette zone n'est pas utilisée.
Code Relation
Cette information est optionnelle. Elle n'est utilisée que si le Bloc est de type PSB. Elle permet de nommer les différents DBD et PCB appelés.
Indicatif ou Option
Saisissez dans cette zone la clé (ou Indicatif) qui sert a référencer symboliquement la Rubrique clé pour le Segment concerné dans le D.B.D. considéré. La clé doit avoir été indiquée sur la ligne d'appel d'une Rubrique sous l'onglet Lignes -CE d'un Segment, dans la zone Indicatif.
Dans cette zone, vous pouvez indiquer :
  • Une clé unique en saisissant U,
  • Une clé multiple, en saisissant M,
  • Un index secondaire DL/1 en saisissant un chiffre de 1 à 9,
  • Dans un PCB ou un DBD physique ou logique, saisissez un $ pour générer des SSA non qualifiées,
  • Un champ de recherche en saisissant tout autre caractère.
Remarque : Les indicatifs sont interdits pour une Rubrique qui redéfinit une autre Rubrique.
Nombre d'occurences du lien
Vous saisissez ici le nombre moyen d'occurrences Segment fils liées à une occurrence du Segment père.
Commentaire/Nom du lien/Longueur de clé
Cette zone permet de commenter le lien défini au niveau de la ligne. Elle permet par ailleurs d'indiquer la longueur de la clé concaténée.
Le module calcule automatiquement, lors de la génération d'un PSB, la longueur de la plus longue clé concaténée. Ce calcul est effectué pour chaque :
  • DBD appelé dans le PSB,
  • PCB appelé dans le PSB,
  • Base INDEX appelée en tant que base de données autonome dans le PSB.
Cette longueur peut être écrasée en indiquant, sur la première ligne : CC=n (n = 9 à 9999).
Sur chaque ligne d'appel de Segment, vous pouvez préciser PR=nnnn, utilisé pour générer le paramètre PROCOPT=nnnn au niveau de la macro-instruction SENSEG, lors de la génération du PSB comportant ce DBD, ce PCB ou cette base INDEX.
Remarque : Ce calcul est effectué seulement s'il s'agit d'un Segment primaire. Dans le cas d'un index secondaire, CC= paramètre est obligatoirement.

Lignes -GG

La section Lignes -GG s'affiche lorsque vous insérez ou cliquez sur une ligne de description. Cette section vous permet de compléter ou de modifier les informations contenues sur les lignes de description du Bloc avant leur génération.

Dans les lignes -GG, vous pouvez modifier les lignes de génération associées aux lignes. Des lignes sont générées automatiquement pour vous permettre de modifier les lignes de génération en respectant le format requis. Ces lignes sont identifiées par VIRT ou GUID dans la dernière colonne du tableau des lignes -GG. Communément, ces lignes sont appelées lignes virtuelles. Les lignes identifiées par VIRT sont générées. Pour modifier ces lignes, vous devez les écraser et créer de nouvelles lignes entre les repères de début et fin d'insertion dans le tableau. Lorsque vous cliquez sur Ecraser, les identifiants GUID et VIRT sont changés en FromGUID et FromVIRT. Ces lignes deviennent saisissables, vous pouvez également les éditer avec la touche F2. Vous pouvez ajouter des lignes où vous le souhaitez, mais elles doivent avoir un type Gpour être prises en compte à la génération.

Dans le tableau, vous pouvez voir les colonnes suivantes :
Type
Lorsque vous cliquez sur une ligne dans la colonne Type, une liste déroulante apparaît et vous offre les choix suivants :
  • * : lignes de commentaires à générer
  • V : lignes générées avant les éléments de génération automatiques
  • G : lignes générées à la place des éléments de génération automatiques
  • P : lignes générées entre la partie des éléments de génération automatiques et leurs descriptions
  • Z : lignes générées après les éléments de génération automatiques
    Remarque : Les types P et Z sont disponibles pour les lignes -GG associées à la définition des Blocs CODASYL et Lignes -DC.
Description
Cette colonne doit être utilisée pour saisir les éléments de génération ou les commentaires qui doivent être générés. Son contenu varie selon le type de Bloc et le type de ligne sélectionné.

Conditions d'utilisation | Commentaires en retour

Ce centre de documentation utilise la technologie Eclipse. (http://www.eclipse.org)