Bonjour.
Je débute en Cobol, je suis en formation et j’ai difficultés avec un exercice.
Merci d’avance de votre aide.
Exo:
Un fichier de maj des articles en entrée ( fichiers séquentiel)
Le fichier des articles en maj ( fichier vsam ksds)
*Écrire un pseudo code
*Crée un programme Cobol
Faire un jeu de tests: pour chaque MAJ NEW et DELETE
Bonjour,
Alors même si nous sommes des vieux, on ne doit pas être beaucoup sur la Zone à être à l’aise avec le Cobol - dernière fois que j’ai touché à quelque chose approchant le Cobol, c’était en 1995.
De plus il est rare que l’on fasse les exercices pour les étudiants / apprentis / formés.
Pour le pseudo code, ça dépend de la granularité souhaitée par le formateur, mais je vois bien au moins au début: Tant que Fin de fichier non atteinte a <- lire ligne sauver a dans fichier.vsam Fin Tant Que
Mais bon, il faut voir ce qui est demandé aussi, là, qu’est-ce que l’on veut faire avec les données? Dans le pseudo code, je fais un bête Lis → Ecris
Euh, question HS : c’est quoi les débouchés aujourd’hui ?
La dernière fois que j’en ai « recruté », c’était pour le passage de l’an 2000 pour les systèmes bancaires…
Et effectivement, même remarque que @Donjohn !
fichier séquentiel contenant des records avec clé, data et
la nature de l’opération à effectuer (MAJ, NEW, DEL)
fichier stock (VSAM)
déclarer fichiers et variables
Traitement :
Lire fichier séquentiel
FAIRE TANT QUE FIN FICHIER séquentiel PAS ATTEINTE
Exécuter un paragraphe de SI's :
SI 'NEW'
check si existe pas
Write new record dans VSAM
SI 'MAJ'
check si existe
Rewrite record dans VSAM
SI 'DEL'
check si existe
Delete (record du) fichier VSAM
READ fichier séquentiel
FIN FAIRE
Exécuter le paragraphe de SI’s pour le dernier record lu dans fichier séquentiel.
Salut ! Je ne suis pas sur de comprendre, donc je vais paraphraser et tu me diras si c’est j’ai bien compris, tu as deux fichiers un en entrée (séquentiel) et un en sortie (VSAM) qui serait en MAJ ?
Du coup, tu dois faire un programme qui va mettre à jour le fichier VSAM.
Déjà j’aurais une question, est ce que le fichier de sortie est bien en MAJ (très rare, je n’en ai jamais vu en deux ans d’xp) ou est ce qu’il faut simplement mettre à jour un éventuel troisième fichier en sortie ?
Est ce qu’il faut prévoir d’éventuels doublon ( Surtout dans le fichier en sortie) ?
Pour ce qui est du JCL, il te faut juste un JCL basique avec les deux fichiers correctement paramétrés.
J’imagine qu’en formation on vous demande de faire des JCL de A à Z, en entreprise, personne n’a de temps à perdre avec ça, du coup, il y a toujours un template, que tu adapte à ce que tu as dans ton cobol.
NB : en Cobol, pour les boucles, c’est « Jusqu’à »(UNTIL) et pas « tant que », c’est différent de la plupart des autres langages de programmation sur ce point, et il faut vraiment que tu le prenne en compte au risque de faire une bourde.
Donc par exemple, dans ton algorithmie, il faut que tu fasse une boucle du style PERFORM UNTIL FIN DE FICHIER. et pas TANT QUE FIN DE FICHIER comme en java par exemple.