WAITFOR

Beschreibung

Wartet auf eine bestimmte Bedingung auf dem vom Host gesendeten Terminal-Emulationsbildschirm.

Wenn die Bedingung wahr ist, wird der entsprechende Befehl ausgeführt.

Wenn die Bedingung falsch ist oder wenn die in der Systemvariable RESPONSE definierte Zeitspanne abgelaufen ist ohne dass ein Bildschirm vom Host empfangen wurde, wird die nächste Anweisung ausgeführt.

Syntax

WAITFOR screen-variable operator zeichenkette befehl

screen-variable steht für die Variable *SCREEN (Syntax siehe unten).

operator ist einer der folgenden Werte:

EQ gleich
NE ungleich
GE größer gleich
LE kleiner gleich
GT größer als
LT kleiner als

Für befehl können Sie jeden Befehl von Entire Connection, außer den Folgenden, benutzen:

IF
IFNOT
WAITFOR

Syntax für *SCREEN

Die Variable *SCREEN kann nur einmal pro WAITFOR benutzt werden.

*SCREEN [zeile spalte [länge]]

zeile ist ein Wert zwischen 1 und der maximalen Zeilenanzahl + 1.

spalte ist ein Wert zwischen 1 und der maximalen Zeilenlänge.

länge ist ein Wert zwischen 1 und der Bildschirmgröße.

Zum Beispiel:

*SCREEN steht für: gesamter Bildschirm.

*SCREEN 2 1 steht für: ab Zeile 2, Spalte 1 bis zum Ende des Bildschirms.

*SCREEN 2 1 80 steht für: ab Zeile 2, Spalte 1 die nächsten 80 Positionen.

Beispiele

  • Das Vorkommen der Zeichenkette CP READ prüfen und, wenn die Bedingung wahr ist, zur Sprungmarke LOGON verzweigen:

    WAITFOR *SCREEN EQ 'CP READ' GOTO LOGON
  • Das Vorkommen der Zeichenkette NEXT ab Zeile 2, Spalte 1 prüfen und, wenn die Bedingung wahr ist, CR an den Host übermitteln:

    WAITFOR *SCREEN 2 1 EQ 'NEXT' TYPE CR
  • Den in der lokalen Variable #PARM1 definierten Wert prüfen und, wenn die Bedingung wahr ist, zur Sprungmarke WEITER verzweigen:

    WAITFOR *SCREEN EQ #PARM1 GOTO WEITER

Prozedurdateibeispiel

Waitcmds.ncp

Zurückgegebene Variablen

Wenn die Bedingung wahr ist, wird die Bildschirmposition der Zeichenkette in den folgenden lokalen Variablen zurückgegeben:

#ROW - die gültigen Werte liegen zwischen 1 und der maximalen Zeilenanzahl + 1

#COL - die gültigen Werte liegen zwischen 1 und der maximalen Zeilenlänge

Verwandte Befehle

IF, PAUSE, SLEEP, WAIT, WAITM

Benutzung

Prozedurdatei: Ja
Befehlszeile: Nein
Taste: Nein
API: Nein