Is-it possible to exit a double perform:
PERFORM VARYING J FROM 1 BY 1 UNTIL J>10
PERFORM VARYING K FROM 1 BY 1 UNTIL K>3
IF J=2 and K=2
EXIT PERFORM
ELSE
display "LABEL A ===> PROCEDURE NOM_PROC2 "
"J=/"J"/ AND K=/"K"/"
END-IF
END-PERFORM
END-PERFORM
I tried with EXITI PERFORM but it doesn't work for me.
If I understand your question correctly, you want to exit both in-line PERFORMs with the EXIT PERFORM. The following technique should work.
01 SWITCHES.
05 EOL-SW PIC X VALUE 'N'.
88 EOL VALUE 'Y'.
88 NOT-EOL VALUE 'N'.
SET NOT-EOL TO TRUE
PERFORM VARYING J FROM 1 BY 1 UNTIL J>10 OR EOL
PERFORM VARYING K FROM 1 BY 1 UNTIL K>3 OR EOL
IF J=2 and K=2
SET EOL TO TRUE
ELSE
display "LABEL A ===> PROCEDURE NOM_PROC2 "
"J=/"J"/ AND K=/"K"/"
END-IF
END-PERFORM
END-PERFORM
From a previous question you indicated you were transliterating PL/I to COBOL. Just as with spoken and written languages, computer languages have idioms and colloquialisms that don't translate well.
I believe that, logically, this is equivalent.
PERFORM VARYING J FROM 1 BY 1 UNTIL J>2
PERFORM VARYING K FROM 1 BY 1 UNTIL K>2
display "LABEL A ===> PROCEDURE NOM_PROC2 "
"J=/"J"/ AND K=/"K"/"
END-PERFORM
END-PERFORM
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With