Hat die Analyse der ersten Prozedurzeile ergeben, dass die aufgerufene Prozedur eine S-Prozedur ist, beginnt der Prozedur-Interpreter mit der Verarbeitung der Prozedur.
S-Prozeduren werden in folgenden Schritten verarbeitet:
Wenn vorhanden, wird das Kommando SET-PROCEDURE-OPTIONS ausgeführt. (Das Kommando SET-PROCEDURE-OPTIONS darf nur als erstes Kommando einer S-Prozedur aufgerufen werden).
Wenn vorhanden, werden die Kommandos des DECLARE-PARAMETER-Blocks ausgeführt.
(Mehrfache Aufrufe des Kommandos DECLARE-PARAMETER müssen mit dem Kommando BEGIN-PARAMETER-DECLARATION eingeleitet und mit END-PARAMETER-DECLARATION abgeschlossen werden. Ein OPEN-VARIABLE-CONTAINER-Kommando im DECLARE-PARAMETER-Block muss auch zwischen diesen beiden Kommandos stehen).Der Prozedurrumpf wird eingelesen und verarbeitet:
Es werden alle Prozedurzeilen eingelesen. Die Zeilenende-Kommentare werden ausgeblendet und alle Folgezeilen ausgewertet: d.h. das Fortsetzungszeichen wird durch die nachfolgende Zeile ersetzt und der Schrägstrich (/) am Beginn der Fortsetzungszeile gelöscht.
Kommandofolgen mit Kommandos, die durch Semikolon (;) voneinander getrennt sind, werden in einzelne Kommandos zerlegt.
Ausnahme: Kommandofolgen in einem AID-Kommandoblock. Diese werden erst dann verarbeitet, wenn die Dialogtesthilfe AID den Kommandoblock ausführt (nähere Informationen zum Dienstprogramm AID enthält das Handbuch „AID“ [6]).Es wird geprüft, ob die Blockstrukturen syntaktisch korrekt sind. Außerdem wird geprüft, ob die Zielmarken der Sprung-Kommandos GOTO, EXIT-BLOCK und CYCLE existieren.