> Tech > Repositionner le curseur au début d’un sous-fichier

Repositionner le curseur au début d’un sous-fichier

Tech - Par iTPro - Publié le 24 juin 2010
email

Le plus souvent, le curseur revient automatiquement au début du sous-fichier une fois que tous les enregistrements changés du sous-fichier ont été traités/lus (en utilisant READC) et que la fin du sous-fichier est atteinte. Les enregistrements modifiés peuvent ensuite être traités à nouveau si le curseur

associé au mot-clé SFLNXTCHG est mis sur *on/*off pour marquer les enregistrements comme « changés » et les enregistrements du sous-fichier sont mis à jour.

Mais, que se passe-t-il si vous devez stopper de traiter les enregistrements modifiés au milieu de l’opération, avant d’atteindre la fin du sous-fichier (par exemple à cause de mauvaises données entrées par l’utilisateur) ? Si le programme essaie immédiatement de traiter à nouveau le sousfichier sans réécrire le format de contrôle du sous-fichier, le READC suivant ne lira pas le premier enregistrement modifié dans le sous-fichier, et il suivra son chemin à partir de son point d’arrêt précédent dans l’itération précédente.

Comment faire pour que le programme démarre au début du sous-fichier et lise à nouveau les enregistrements modifiés ? L’astuce consiste à repositionner le pointeur du sous-fichier avant le premier enregistrement du sous-fichier. Le seul moyen que j’ai trouvé pour cela consiste à utiliser l’opcode CHAIN.

En chaînant l’enregistrement relatif numéro 0 – qui n’existe pas, d’où la nécessité de contrôler l’erreur – le pointeur revient au début du sousfichier avant le premier enregistrement du sous-fichier. Un exemple de ce code est fourni dans la figure 4.

Pepe Hipólito CEO – Better RPG, LLC 

Téléchargez gratuitement cette ressource

IBMi et Cloud : Table ronde Digitale

IBMi et Cloud : Table ronde Digitale

Comment faire évoluer son patrimoine IBMi en le rendant Cloud compatible ? Comment capitaliser sur des bases saines pour un avenir serein ? Faites le point et partagez l'expertise Hardis Group et IBM aux côtés de Florence Devambez, DSI d'Albingia.

Tech - Par iTPro - Publié le 24 juin 2010