Texte d'origine


FILE STATUS

Qu’est-ce qu’un File Status ?

Un File Status est un code à deux octets qui indique comment une opération de fichier s’est terminée ; soit avec succès, soit avec une certaine forme d’erreur. Si une erreur se produit, l’état du fichier indique la raison de l’erreur. L’état du fichier est une donnée que vous définissez dans votre programme. La définition d’une donnée d’état de fichier est facultative. Si un élément de données d’état de fichier n’est pas déclaré et qu’une erreur de fichier se produit, le système d’exécution COBOL affiche un message d’erreur et interrompt votre programme.

Si vous avez un élément d’état de fichier défini pour un fichier, alors après chaque opération d’entrée/sortie sur le fichier (c’est-à-dire OPEN, CLOSE, READ, WRITE, REWRITE, START et DELETE), le système d’exécution le met à jour pour indiquer comment l’opération terminée. Après chaque opération, il est de votre responsabilité de vous assurer que votre programme vérifie l’état du fichier pour voir si l’opération s’est terminée de manière satisfaisante.

Par exemple, lorsque votre programme écrit sur le disque, il se peut qu’il n’y ait pas assez d’espace disque pour terminer l’opération WRITE. Si vous n’avez pas défini d’élément d’état de fichier et que vous manquez d’espace disque, le système d’exécution affiche un numéro d’erreur et interrompt le programme. Si vous avez défini un élément d’état de fichier (pour le fichier que vous écrivez), il est mis à jour et le programme continue de s’exécuter. Le programme peut alors vérifier l’état du fichier, déterminer à partir de celui-ci que le disque est plein et prendre les mesures appropriées.

Définir un File Status

Chaque fichier d’un programme peut être associé à un élément d’état de fichier en spécifiant la clause FILE STATUS dans son entrée de contrôle de fichier. Un élément distinct peut être utilisé pour le statut de fichier de chaque fichier, ou un seul élément peut être utilisé pour le statut de fichier de plusieurs fichiers. L’élément de données à utiliser pour le statut de fichier d’un fichier est indiqué dans la clause SELECT du paragraphe File-Control pour ce fichier. L’élément de données utilisé pour un statut de fichier est défini dans la section Working-Storage ou Linkage.

Pour toutes les conventions d’état de fichier, à l’exception des codes d’état de fichier étendus, l’élément de données est défini comme deux caractères alphanumériques (c’est-à-dire PIC XX). Les codes d’état de fichier étendus utilisent le deuxième octet comme élément binaire (COMP-X).

Le premier octet de l’élément de données d’état du fichier est appelé clé d’état 1 et indique l’une des conditions suivantes :

ValeurÉtat
0Opération réussie
1Fin de fichier
2Clé non valide
3Erreur permanente
4Erreur de logique (séquence incorrecte des opérations d’E/S)
9Message d’erreur système d’exécution COBOL

Si le premier octet de l’élément de données d’état du fichier est différent de 9, le deuxième octet (appelé clé d’état 2) doit être traité comme alphanumérique.
Les combinaisons de valeurs possibles et leurs significations sont présentées dans la “Liste des FILE STATUS Primaire“. 

Si le premier octet de l’élément de données d’état du fichier est « 9 », le deuxième octet est un champ binaire contenant un code d’erreur RTS défini par Micro Focus. Ces messages sont répertoriés et expliqués dans vos messages d’erreur .
Les combinaisons de valeurs possibles et leurs significations sont présentées dans la “Liste des FILE STATUS Etendu, nnn-xx“. 

Vous trouverez également quelques Tips et bonnes pratiques tels que le repérage des Causes possibles d’erreur, comment les gérées ou même des outils de débogage.