Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

@DIALOG - Aufruf des Bildschirmdialogs

&pagelevel(3)&pagelevel

Mit der Anweisung @DIALOG kann der EDT bei Eingabe von SYSDTA (meist in BS2000-Systemprozeduren oder aus der Unterprogrammschnittstelle) in den Bildschirmdialog versetzt werden. Im Bildschirmdialog ist der bisherige Lesevorgang unterbrochen und der EDT liest seine Eingaben im F-Modus (oder im L-Modus nach Eingabe von @EDIT) von der Datensichtstation. Der Bildschirmdialog kann mit @HALT, @END, @RETURN oder [K1] wieder verlassen werden. Der EDT setzt dann den unterbrochenen Lesevorgang fort.

Operation

Operanden

F-Modus, L-Modus

@DIALOG


Die Anweisung wird im F-Modus ignoriert. Wird @DIALOG im L-Modus von einem andern Medium als SYSDTA eingegeben (z.B. wenn Anweisungen aus einer EDT-Prozedur gelesen werden oder wenn mit der Zeilennummer als Eingabeaufforderung von der Datensichtstation gelesen wird) oder wird sie im Stapelbetrieb aufgerufen, wird die Anweisung mit der Fehlermeldung EDT5400 bzw. EDT4920 abgewiesen.

Wurde der Bildschirmdialog aus einer BS2000-Systemprozedur aufgerufen, sind die Anweisungen @SYSTEM ohne Operanden und @EDIT ONLY gesperrt und werden mit der Meldung EDT4976 abgewiesen. Ein Wechsel in das Betriebssystem ist dann nur mit [K2] möglich, sofern die BS2000-Systemprozedur nicht mit der Option INTERRUPT-
ALLOWED=NO dagegen geschützt wurde (siehe Abschnitt „Zugriffsschutz“).

Mit @END, @HALT, @RETURN oder [K1] wird der Bildschirmdialog beendet. Wenn der Aufruf von @DIALOG über die Unterprogramm-Schnittstelle oder aus einer BS2000-Prozedur erfolgte, wird mit der auf @DIALOG folgenden Anweisung fortgesetzt. Folgt an der Unterprogrammschnittstelle nach @DIALOG keine weitere Anweisung, bekommt das aufrufende Programm die Kontrolle. Wenn der Aufruf von SYSDTA (nach @EDIT ONLY) erfolgte, wird die nächste Eingabe von SYSDTA angefordert. In allen Fällen bleibt der EDT geladen und alle Einstellungen des EDT bleiben so, wie sie zum Zeitpunkt der Beendigung des Bildschirmdialogs waren.

Beispiel

BS2000-Prozedur PROC.DIALOG

/BEGIN-PROCEDURE LOGGING=A,PARAMETERS=YES(/
   PROCEDURE-PARAMETERS=(&FILE1=,&FILE2=),/
   ESCAPE-CHARACTER='&')
/ASSIGN-SYSDTA TO-FILE=*SYSCMD
/MODIFY-JOB-SWITCHES ON=(4,5) ------------------------------------------- (1)
/START-EDTU
@PROC 1 ----------------------------------------------------------------- (2)
@COPY FILE=&FILE1 ------------------------------------------------------- (3)
@PAR SCALE=ON ----------------------------------------------------------- (4)
@DIALOG ----------------------------------------------------------------- (5)
@SETF(1) ---------------------------------------------------------------- (6)
@WRITE FILE=&FILE2 ------------------------------------------------------ (7)
@HALT ------------------------------------------------------------------- (8)
/MODIFY-JOB-SWITCHES OFF=(4,5)
/ASSIGN-SYSDTA TO-FILE=*PRIMARY
/END-PROCEDURE
(1)

Der Auftragsschalter 5 wird vor dem Laden des EDT gesetzt. Damit wird der L-Modus und das Lesen der Eingaben von SYSDTA eingestellt.

(2)Es wird in die Arbeitsdatei 1 umgeschaltet.
(3)

Eine Datei soll eingelesen werden. Der Dateiname wird beim Ablauf der Prozedur angefordert.

(4)Die Spaltenzähleranzeige wird eingeschaltet.
(5)

Der EDT soll in den F-Modus-Bildschirmdialog umschalten und das Arbeitsfenster am Bildschirm ausgegeben. Im Dialog können dann alle Anweisungen des F- und L-Modus eingegeben werden. Mit @END, @HALT oder @RETURN bzw. mit K1 wird der
F-Modus-Bildschirmdialog beendet und mit der auf @DIALOG folgenden Anweisung fortgesetzt.

(6)

Die Arbeitsdatei 1 wird als aktuelle Arbeitsdatei erneut eingestellt. Dies ist notwendig, da im F-Modus-Bildschirmdialog der Benutzer eine andere Arbeitsdatei eingestellt haben könnte.

(7)

Die Arbeitsdatei 1 wird in eine SAM-Datei geschrieben. Der Dateiname wird beim Ablauf der Prozedur angefordert.

(8)Der EDT wird beendet.

Die Prozedur PROC.DIALOG wird gestartet. Dabei wird der Dateiname der einzulesenden Datei angefordert. Anschließend schaltet der EDT in den F-Modus-Bildschirmdialog um.

Entsprechend den unter (4) definierten Voreinstellwerten wird die Spaltenzähleranzeige ausgegeben. Mit @HALT wird der F-Modus-Bildschirmdialog wieder beendet und die mit @DIALOG unterbrochene Prozedur fortgesetzt.

Im weiteren Verlauf der Prozedur wird der Dateiname angefordert, in den die Arbeitsdatei geschrieben werden soll. Abhängig von den Aktionen im F-Modus-Bildschirmdialog werden ggf. noch weitere Meldungen ausgegeben.