Das Kommando CYCLE kann nur in Schleifen eingesetzt werden. Es bricht die Verarbeitung der Kommandofolge einer Schleife ab und springt zum entsprechenden Schleifen-ende-Kommando. Dort wird der Prozedurlauf fortgesetzt.
Bei REPEAT-Schleifen enthält das Schleifenende-Kommando UNTIL die Schleifenbedingung; diese Bedingung wird geprüft und wenn nötig der nächste Schleifendurchlauf gestartet. Bei FOR- und WHILE-Schleifen enthalten die Schleifenende-Kommandos (END-FOR, END-WHILE) den Sprung zurück an den Schleifenanfang. Dort wird ebenfalls die Schleifenbedingung geprüft und wenn nötig der nächste Schleifendurchlauf gestartet.
Im Aufruf des CYCLE-Kommandos kann die Schleife, auf die sich der Kommandoaufruf beziehen soll, implizit adressiert werden über den voreingestellten Wert *LAST oder explizit über den Namen der Marke, die dem Schleifen-Einleitungskommando vorangestellt ist.
Beispiel
/LOOP: WHILE (BED < 9) /... /IF (EING='*IGN') / CYCLE LOOP /END-IF /... /END-WHILE "Dieses Kommando wird nach CYCLE ausgefuehrt"
Hinweis
Wenn - wie in diesem Beispiel - das CYCLE-Kommando in einen IF-Block (oder auch in einen einfachen Block) eingesetzt wird, muss bei CYCLE mit einer Marke auf den betroffenen Schleifen-Block hingewiesen werden.