Je travaillais sur un programme qui devait utiliser une instruction de fusion pour assembler deux fichiers et les trier. Bien sûr, je ne serais pas ici si je n'avais pas de problème. Quand je cours mon programme je dois faire un peu de travail après pour ajouter à la sortie. Quand il va exécuter ce paragraphe il donne une erreur qui dit "Fusionner le fichier hors des séquences ORDER-FILE-SOR". Voici mon code:Instruction de fusion (COBOL)
100-MAIN.
MERGE ORDERS-FILE-SORT
ON ASCENDING KEY REQUEST-DATE-S
ON ASCENDING KEY CUST-NUMBER-S
ON ASCENDING KEY CUST-ORDER-NUMBER-S
ON ASCENDING KEY PART-NUMBER-S
USING ORDERS-FILE-PRIOR-IN
ORDERS-FILE-NEW-IN
OUTPUT PROCEDURE 200-FILE-START
STOP RUN.
200-FILE-START.
OPEN OUTPUT ORDERS-FILE-OUT
ACCEPT WS-DATE FROM DATE
MOVE RUN-MONTH TO MONTH-1
MOVE RUN-DAY TO DAY-1
MOVE RUN-YEAR TO YEAR-1
PERFORM 300-NEXT-PAGE
PERFORM UNTIL ARE-THERE-MORE-RECORDS = 'NO '
RETURN ORDERS-FILE-SORT
AT END
MOVE 'NO ' TO ARE-THERE-MORE-RECORDS
NOT AT END
PERFORM 400-PROCESS-FILE
END-RETURN
END-PERFORM.
CLOSE ORDERS-FILE-OUT.
La sortie il montre est la ligne de cap et il semble s'arrêter à la ligne « RETOUR CAMPAGNES-FILE-SORT ».
Toute aide serait grandement appréciée car je pense que le reste du programme fonctionnera très bien, mais je ne peux pas le vérifier jusqu'à ce que ce soit corrigé.
À ce jour, je continue à être surpris que COBOL est toujours enseigné dans les écoles :) – BoltClock
Tant que Cobol est la lingua franca des entreprises mondiales, il y aura un clin d'œil des établissements d'enseignement. –