Syntaxe
|
LABEL (RECORD IS|RECORD ARE) (STANDARD|OMITTED)
|
Paramètres
| Nom |
Description |
| RECORD IS ou RECORD ARE |
Ce paramètre permet d'indiquer que l'on fait référence à l'enregistrement de l'étiquette du fichier. |
| STANDARD |
Ce paramètre permet de préciser que le fichier possède une étiquette standard conforme aux conventions COBOL. |
| OMITTED |
Ce paramètre permet d'indiquer que le fichier ne comporte pas d'étiquette, ce qui est souvent le cas pour des fichiers séquentiels sans entête. |
Description
Cette instruction permet de définir une étiquette.
Remarques
- La clause LABEL est utilisée dans les descriptions de fichiers pour indiquer la présence ou l'absence d'étiquettes d'enregistrement sur les supports
physiques. Cela a son importance notamment pour les fichiers séquentiels sur bandes magnétiques, où des étiquettes peuvent contenir des métadonnées comme le nom
du fichier ou son type.
- L'utilisation de STANDARD dans la clause LABEL permet à COBOL d'anticiper une étiquette conforme aux normes prédéfinies du système. Cela signifie que le système
d'exploitation ou le gestionnaire de fichiers attend une entête spécifique à lire avant d'accéder au contenu réel du fichier.
- La mention OMITTED indique que le fichier ne possède pas d'étiquette, ce qui est typique pour des fichiers simples, comme ceux créés par des applications
internes ou non formatées. Cela évite à COBOL de chercher une structure de métadonnées à l'ouverture du fichier, ce qui peut simplifier certains traitements.
- La syntaxe (RECORD IS|RECORD ARE) reflète une tolérance grammaticale dans COBOL pour s'adapter à différents styles d'écriture, sans changer le comportement de
la clause. Cela montre le souci de lisibilité et de compatibilité dans le langage.
- Cette clause est surtout pertinente dans un contexte de gestion de fichiers séquentiels sur supports physiques, comme des bandes ou disques à faible abstraction.
Dans les environnements modernes avec des fichiers sur disque, cette clause est souvent omise ou n'a pas d'effet.
- Si une clause LABEL est incorrectement définie, cela peut empêcher l'ouverture du fichier, car le système cherchera une étiquette là où il n'y en a pas, ou
inversement. Cela peut engendrer des erreurs au moment de l'exécution qu'il est parfois difficile à diagnostiquer.
- L'existence de LABEL permet également de renforcer la portabilité des programmes COBOL sur différents systèmes, en tenant compte de conventions physiques
d'entreposage spécifiques. Cela rend les programmes plus adaptables à des plateformes variées.
- Même si aujourd'hui cette clause est parfois ignorée dans les systèmes modernes, elle reste une part essentielle de la compatibilité descendante. Comprendre
son fonctionnement permet d'assurer un meilleur maintien de programmes COBOL anciens qui interagissent avec des supports historiques.
Dernière mise à jour : Jeudi, le 28 juillet 2011