Définition d'un groupe

Pour afficher le détail de la section Définition d'un groupe, vous devez sélectionner une ligne d'appel groupe dans les lignes -CE du Segment. Un groupe est un ensemble de Rubriques élémentaires. Dans la section Définition d'un groupe, vous devez indiquer le nom, le libellé du groupe et optionnellement définir d'autres options (répétitions, indicateur de tri). Vous pouvez redéfinir une Rubrique de même niveau COBOL en cochant la case Redéfinition. Si vous cliquez sur Plus d'infos, vous pouvez indiquer si le groupe appartient à un sous-schéma. Vous pouvez aussi définir ou modifier les lignes -G du groupe à partir de cette section.

Un groupe est un ensemble de Rubriques élémentaires. Vous pouvez indiquer jusqu'à 99 Rubriques élémentaires, sur neuf niveaux différents maximum. Un groupe peut contenir d'autres groupes. Toutes les Rubriques élémentaires rentrent dans le calcul du groupe. Un groupe peut également contenir un ou plusieurs Segments. Chaque appel de Segment est alors considéré comme une Rubrique élémentaire. La Rubrique groupe peut appartenir au référentiel. Si c'est le cas, sa longueur est recalculée automatiquement (somme des longueurs des Rubriques élémentaires), on ne tient pas compte de son format dans le référentiel. Si le groupe est utilisé comme clé (tri ou clé d'accès), le format combiné des Rubriques élémentaires doit être compatible avec le format qui a été spécifié pour le groupe. Lorsque vous créez un groupe, il ne contient aucune Rubrique élémentaire, vous devez les ajouter.

Nom
Saisissez le code du groupe, il n'existe pas de contrainte sur le type de code, il doit seulement comporter 6 caractères. Vous pouvez changer le nom du groupe comme son libellé à tout moment après sa création.
Libellé
Saisissez un libellé pour le groupe que vous avez créé, sa longueur est de 36 caractères maximum. Vous pouvez le modifier à tout moment.
Répétitions
Vous pouvez indiquer un nombre de répétitions au niveau d'une Rubrique élémentaire, d'un groupe ou d'un filler. Les restrictions COBOL portant sur la clause OCCURS s'appliquent.
Indicateur de tri
Vous devez entrer dans cette zone un caractère alphanumérique qui identifie une Rubrique ou un Segment utilisé comme indicatif dans un fichier. Cela permet de repérer les Rubriques susceptibles d'appartenir à un indicatif (ou argument) de tri ou d'être utilisées comme clé d'accès à un fichier, une base de données ou à une Table Pactables.
Remarque : Il est vivement recommandé de dédier un Segment à un seul type d'utilisation. Toute Rubrique susceptible d'appartenir à un indicatif de tri doit être repérée par un caractère (chiffre ou lettre). Un même caractère ne peut être utilisé qu'une seule fois dans la description du Segment. Il est recommandé d'utiliser des suites (1, 2, 3 par exemple). L'ordre réel de tri du fichier sera indiqué au niveau du Programme, en listant les caractères repères dans l'ordre souhaité sur l'appel des Structures de données (-CD).
Rappel : S'il s'agit d'un groupe, son format doit être indiqué explicitement au niveau du référentiel ou du Segment. Les indicatifs sont interdits pour une Rubrique qui redéfinit une autre Rubrique.
Tableau 1. Valeurs possibles de l'indicatif de tri pour Pactables
Valeurs Commentaires
U Clé d'accès de la Table. Cette valeur doit être indiquée sur la Rubrique groupe si la clé est sous-définie.
S Rubrique définissant l'appartenance à un sous-système
Tableau 2. Valeurs possibles de l'indicatif de tri pour les bases de données DL/1
Valeurs Commentaires
U Clé unique pour bases de données DL/1.
M Clé multiple pour bases de données DL/1.
1 à 9 Index secondaire. Toute autre valeur désigne un champ de recherche.
Tableau 3. Valeurs possibles de l'indicatif de tri pour AS400 et les bases relationnelles
Valeurs Commentaires
0 à 9 Clé fichier physique AS400. Bases de données relationnelles.
V Colonne de format variable.
Blanc Colonne de format fixe.
W Pour DB2 SQL, SQL/DS et ORACLE, génération d'une VARCHAR, quelle que soit sa longueur.
L Pour DB2 SQL, SQL/DS et ORACLE, génération d'une LONG VARCHAR.
Remarque : les indicatifs sont interdits pour une Rubrique qui redéfinit une autre Rubrique.
Redefines
La redéfinition est possible pour un Segment ou une Vue Logique. Elle regénère la clause COBOL REDEFINES. La Rubrique qui porte cette option redéfinit la Rubrique de même niveau COBOL qui la précède dans la composition du Segment. Si une Rubrique qui redéfinit une autre Rubrique fait partie d'un groupe, elle est considérée comme une Rubrique élémentaire. Elle doit être prise en compte dans le calcul du nombre de Rubriques contenues dans un groupe (excepté pour les Segments de la base DL/1).
Remarque : Lorsque les Rubriques sont redéfinies, leurs longueurs respectives ne sont pas prises en charge. Pour le calcul de la longueur d'adresse, la longueur de Rubrique redéfinie est utilisée. Les Rubriques redéfinies sont ignorées lors de la génération avec le module de Description de Base de Données. Si la case Redéfini est cochée, aucune valeur initiale ne peut être saisie.

Pour redéfinir une Rubrique, cochez l'option Redéfinition. Une ligne Ensemble de redéfinitions est créée dans la liste des lignes d'appels ; elle contient la Rubrique redéfinie et la Rubrique de même niveau qui la précède. Vous devez ensuite indiquer le nombre de Répétitions dans la section Ensemble de redéfinitions.

Plus d'infos

Cliquez sur Plus d'infos pour ouvrir un assistant qui vous permet d'indiquer des contrôles sur un groupe appelé dans le Segment et indiquer si le groupe appartient à un sous-schéma.
Remarque : Pour ouvrir cet assistant, vous pouvez aussi cliquer sur le bouton qui apparaît quand vous cliquez dans les colonnes Valeurs/sous-fonctions et MAJ/Table du tableau de l'onglet.

Lignes -G

Cliquez sur Lignes -G pour définir des lignes -GC d'un groupe de Rubriques appelé dans le Segment.


Vos commentaires