*PROC Prozedurparameter definieren
*PROC-Anweisung - Allgemeine Bemerkungen
Falls eine *PROC-Anweisung in der Prozedur vorhanden ist (Syntax siehe unten), so werden dem Benutzer folgende zusätzlichen Dienste angeboten:
1) Beim Aufruf der Prozedur analysiert CFS zuerst die PROC-Anweisung der angesprochenen Prozedur und gibt eine Maske mit allen in der PROC-Anweisung aufgeführten Parametern zusammen mit ihren Standardwerten (Schlüsselwort-Parameter) aus. Diese Maske hat das gleiche Format wie diejenige Maske, die beim Starten einer BS2000 DO-Prozedur im Enter-Modus ausgegeben wird (siehe Seite 11-).
Die Ausgabe der Parameter-Maske kann unterdrückt werden, indem die Prozedur durch das Kommando: DO N,prozedur,... gestartet wird (N: No Prompt of Parameters).
2) Durch die Angabe x in der PROC-Anweisung (*PROC x,....) kann - ähnlich wie in BS2000 DO-Prozeduren - der Umfang der Protokollierung während des Prozedurablaufs festgelegt werden.
Falls eine *PROC-Anweisung in der Prozedur nicht vorhanden ist, so sind für den Benutzer und den Ersteller der Prozedur folgende Besonderheiten zu beachten:
1) Es findet keine Protokollierung von Prozeduranweisungen und Datensätzen statt (wie bei *PROC N).
2) Es kann keine Parameter-Maske zum Eintragen der Prozedurparameter ausgegeben werden. Alle mit einem bestimmten Wert zu versorgenden Variablen müssen entweder im DO-Kommando als Stellungs- oder Schlüsselwortparameter angegeben werden oder während des Ablaufs der Prozedur vom Benutzer durch die Anweisung *PROMPT angefordert werden.
3) Der Ersteller der Prozedur muß bezüglich der Prozedurparameter, die beim Aufruf der Prozedur den Prozedurvariablen zugewiesen werden, folgende Besonderheit beachten:
Der erste beim Aufruf der Prozedur angegebene Stellungsparameter kann in der Prozedur nur durch den Variablen-Namen &1 angesprochen werden. Entsprechendes gilt für den zweiten Stellungsparameter &2 usw.
Syntax der *PROC-Anweisung
*PROC x, (par, [" text "] ... )
Die Syntax der *PROC-Anweisung ist identisch mit der PROC-Anweisung in BS2000 DO-Prozeduren. In der *PROC-Anweisung fehlt lediglich der SUBDTA Parameter. Es sind beliebig viele Fortsetzungszeilen möglich. Als Fortsetzungszeichen ist '-' anzugeben. Im Unterschied zu BS2000 DO-Prozeduren beginnt eine Fortsetzungszeile mit '*'. In den einzelnen Zeilen einer PROC-Anweisung eingeschlossene Kommentare (".....") werden ebenfalls akzeptiert. Diese Kommentare haben eine besondere Funktion für die beim Aufruf der Prozedur ausgegebene Parameter-Maske (siehe unten).
Die PROC-Anweisung gemäß Format 1 muß als erste Anweisung in der Prozedur angegeben werden.
Erläuterung der einzelnen Parameter der PROC-Anweisung:
x | C | D | N
Steuerung des Umfangs der Protokollierung im Verlauf der Prozedur.
A Es werden sowohl alle Prozeduranweisungen, wie auch alle an CFS zu übergebenden Datensätze am Bildschirm protokolliert.
C Es werden nur die Prozeduranweisungen (*-Anweisungen) am Bildschirm protokolliert.
D Es werden nur die an CFS zu übergebenden Datensätze am Bildschirm protokolliert.
N Es werden weder Prozeduranweisungen noch Datensätze am Bildschirm protokolliert (Standard).
par &var | &var=wert
Zu vereinbarender Prozedurparameter (Stellungs- oder Schlüsselwortparameter).
&var Es wird ein Stellungsparameter für die Prozedur vereinbart. Ein Stellungsparameter hat keinen Wert vordefiniert. Innerhalb der Prozedur kann mit der Variablen &var auf den beim Aufruf der Prozedur vom Benutzer zugewiesenen Wert der Variablen Bezug genommen werden.
&var=wert Es wird ein Schlüsselwortparameter für die Prozedur vereinbart. Ein Schlüsselwortparameter kann einen festen Standardwert erhalten. Beim Aufruf der Prozedur kann der Standardwert des Parameters durch die Angabe var=wert verändert werden.
wert Standardwert des Schlüsselwortparameters. wert kann mit oder ohne Hochkommas angegeben werden. Enthält wert Sonderzeichen, wie z.B. Blanks, so muß wert in Hochkommas eingeschlossen werden.
"text" Der hier angegebene Text wird beim DO-Aufruf in der Parameter-Maske in der Form 'var text...' angezeigt. var ist dabei der Name der Variablen und text eine erläuternde Beschreibung zur Variablen und zu den erlaubten Eingabemöglichkeiten. Die Gesamtlänge von var und text ist auf 30 Bytes begrenzt.
Standardmäßig wird in der Bildschirmmaske für jeden Prozedurparameter eine Zeile reserviert. Dies bedeutet, daß Parameterwerte nur in der Länge von 40 Byte angegeben werden können. Durch #n (n < 4) können für einen Parameter eins bis drei zusätzliche Eingabefelder zu je 40 Byte reserviert werden. #n muß nach dem ersten " bzw. nach ": angegeben werden.
Beispiel: Ist in der PROC-Anweisung eine Zeile der folgenden Art enthalten: /&DATEI=TEST,     ":#3Name der zu verarbeitenden Datei"-
so wird dieser DO-Parameter in der Maske in folgender Form angezeigt:
Name der zu verarbeitenden Datei =TEST
:
:
:
":text" Der hier angegebene Text wird beim DO-Aufruf in der Parameter-Maske in der Form 'text...' angezeigt. Der Name der Variablen wird hierbei nicht ausgegeben. text ist eine erläuternde Beschreibung zur Variablen und zu den erlaubten Eingabemöglichkeiten. Die Gesamtlänge von text ist auf 30 Bytes begrenzt.
Falls zu einem vereinbarten Parameter kein Text angegeben wurde, so erscheint der Parameter in der Parameter-Maske in der Form 'var '.
Syntax der *PROC-Anweisung
*PROC x Dieses Format der *PROC-Anweisung dient dazu, den Umfang der Protokollierung der Anweisungen am Bildschirm zu verändern. *PROC x kann mehrmals innerhalb der Prozedur angegeben werden und muß nicht als erste Anweisung angegeben werden.
x | C | D | N
A Es werden sowohl alle Prozeduranweisungen, wie auch alle an CFS zu übergebenden Datensätze am Bildschirm protokolliert.
C Es werden nur die Prozeduranweisungen (*-Anweisungen) am Bildschirm protokolliert.
D Es werden nur die an CFS zu übergebenden Datensätze am Bildschirm protokolliert.
N Es werden weder Prozeduranweisungen noch Datensätze am Bildschirm protokolliert (Standard).