SEQUENTIAL |
Séquentiel |
|---|---|
| Cobol | |
Syntaxe
|
FILE-CONTROL. ((SELECT [OPTIONAL] filename ASSIGN TO [label][S] AS JCLvariable) [RESERVE integer AREAS] | ORGANIZATION IS [SEQUENTIAL]/RELATIVE/INDEXED | | ACCESS MODE IS [SEQUENTIAL]/RANDOM/DYNAMIC | |RELATIVE/RECORD KEY alphanumericdatafiled| [ALTERNATIVE RECORD KEY alphanumericrecordfield [WITH DUPLICATES] [PASSWORD IS literaldataname] [FILE STATUS IS alphanumericdataitem, groupdataitem] |
Paramètres
| Nom | Description |
|---|---|
| filename | Ce paramètre permet d'indiquer le nom logique du fichier utilisé dans le programme COBOL. |
| label | Ce paramètre permet de spécifier une étiquette associée au fichier, souvent utilisée dans le système hôte pour identifier le fichier physique. |
| JCLvariable | Ce paramètre permet d'indiquer une variable définie dans le JCL (Job Control Language) servant à lier le fichier logique au fichier physique. |
| integer | Ce paramètre permet d'indiquer le nombre de zones de mémoire à réserver pour le traitement du fichier (via la clause RESERVE). |
| SEQUENTIAL | Ce paramètre permet de spécifier que l'accès au fichier se fait de manière séquentielle, c'est-à-dire en lisant les enregistrements dans l'ordre. |
| alphanumericdatafiled | Ce paramètre permet d'indiquer la clé de position dans le fichier pour les fichiers relatifs. |
| alphanumericrecordfield | Ce paramètre permet d'indiquer une clé alternative dans les fichiers indexés, servant à un autre critère de tri ou d'accès. |
| literaldataname | Ce paramètre permet d'indiquer une valeur fixe ou une variable représentant le mot de passe requis pour accéder au fichier. |
| alphanumericdataitem | Ce paramètre permet d'indiquer une variable recevant le code d'état du fichier après chaque opération (succès, fin de fichier, erreur.). |
| groupdataitem | Ce paramètre permet d'indiquer un ensemble de variables (groupe) pouvant capturer plus d'informations de statut sur les opérations du fichier. |
Description
Cette instruction permet de spécifier le type d'accès séquentiel dans un fichier.
Remarques
- L'utilisation de l'option SEQUENTIAL dans la clause ORGANIZATION IS permet de définir un mode de traitement linéaire des enregistrements. Cela signifie que chaque enregistrement est lu ou écrit dans l'ordre exact où il se trouve dans le fichier, sans possibilité de retour arrière ou de saut. C'est le mode le plus simple et le plus utilisé pour les traitements en lot classiques.
- Le mode SEQUENTIAL est particulièrement bien adapté aux fichiers plats utilisés dans les traitements de masse. En définissant ce type d'organisation, le programme indique que chaque lecture ou écriture commencera au début du fichier et se poursuivra en suivant l'ordre des enregistrements. Cela optimise la simplicité, mais limite la souplesse d'accès.
- Lorsqu'un fichier est défini en SEQUENTIAL, les opérations telles que READ, WRITE ou REWRITE se font sans recours à des clefs. Cela simplifie la gestion du fichier, car il n'est pas nécessaire de définir un champ clef pour accéder aux données, contrairement à un fichier indexé ou relatif.
- L'organisation SEQUENTIAL est souvent combinée avec le mode d'accès ACCESS MODE IS SEQUENTIAL, renforçant l'idée que les enregistrements seront lus ou traités dans leur ordre naturel. Ce couplage clarifie l'intention du programmeur et permet une meilleure optimisation par le compilateur COBOL.
- Un fichier déclaré SEQUENTIAL ne peut pas faire l'objet d'un accès direct à un enregistrement spécifique. Cela signifie qu'en cas de besoin d'accéder à un enregistrement précis, il faudra lire séquentiellement tous les précédents, ce qui peut devenir inefficace avec de très grands fichiers.
- Dans les environnements mainframe, les fichiers séquentiels sont très courants et bien supportés par les systèmes d'exploitation comme z/OS. L'organisation SEQUENTIAL correspond à une structure de fichier logique qui est souvent associée à des datasets VSAM en mode ESDS (Entry Sequenced Data Set).
- Le mode SEQUENTIAL peut aussi être utilisé avec l'instruction SORT ou MERGE, qui traitent les fichiers en lecture et écriture dans l'ordre physique des enregistrements. Il facilite l'implémentation de traitements linéaires où l'ordre d'entrée ou de sortie est critique.
- Enfin, le choix de l'organisation SEQUENTIAL dans la clause FILE-CONTROL permet une meilleure lisibilité du code, notamment dans les programmes où la complexité de gestion de fichiers n'est pas nécessaire. C'est une manière explicite d'indiquer que le fichier sera lu ou écrit sans structure de clé ou d'index, privilégiant ainsi la simplicité.
Dernière mise à jour : Jeudi, le 28 juillet 2011