Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Eingabeformatierung mit mehreren Teilformaten (BS2000-Systeme)

Der Terminal-Benutzer kann Daten in die Teilformate eingeben, er muss aber nicht in jedes Teilformat etwas eintragen.

Da openUTM alle variablen Felder überträgt, enthält KCRMF/kcrfn nach dem INIT den Namen des ersten Teilformates, welches variable Felder enthält. Nach dem MGET steht in KCRMF/kcrfn der Name des nächsten Teilformats mit variablen Feldern. Nachdem das letzte Teilformat mit variablen Feldern gelesen wurde, ist KCMF = KCRMF (kcfn = kcrfn). Falls versucht wird, ein weiteres Teilformat zu lesen, obwohl die Nachricht bereits vollständig gelesen wurde, reagiert openUTM mit dem Returncode 10Z.

Beispiel

Im vorangehenden Teilprogrammlauf erfolgte eine MPUT-Ausgabe mit den 3 Teilformaten TEILF1, TEILF2, TEILF3; variable Felder enthalten nur TEILF1, TEILF2

KDCS-Aufruf:

Rückgabe von openUTM:

INIT


KCRMF = TEILF1

MGET

KCMF = TEILF1
KCLA = ...

KCRMF = TEILF2
KCRCCC = 000
KCRLM = ...
Daten im Nachrichtenbereich

MGET

KCMF = TEILF3
KCLA = ...

KCRMF = TEILF2
KCRCCC = 03Z (weil KCMF einen anderen Wert enthält, als beim vorhergehenden MGET in KCRMF zurückgegeben wurde)
KCRLM = 0

MGET

KCMF = TEILF2
KCLA = ...

KCRMF = TEILF2
KCRCCC = 000
KCRLM = ...
Daten im Nachrichtenbereich

MGET

KCMF = ...
KCLA = ...

KCRMF = TEILF2
KCRCCC = 10Z
KCRLM = 0

Vorgangsstart durch Eingabe eines aus Teilformaten bestehenden Formats

Falls durch die Eingabe eines aus mehreren Teilformaten bestehenden Formats ein Vorgang gestartet werden soll, so kann für die Angabe des Transaktionscodes das erste variable Feld des ersten Teilformats vorgesehen werden (weitere Möglichkeiten siehe "Einsatz von Teilformaten (BS2000-Systeme)").
openUTM trennt dann automatisch das Feld mit dem Transaktionscode von der Nachricht ab: Bei *Formaten werden beim ersten Teilformat die ersten 8 Zeichen entfernt (Transaktionscode), bei +Formaten die ersten 10 Zeichen (Attributfeld und Transaktionscode).
Bei den weiteren Teilformaten wird nichts entfernt.

Aus einem aus Teilformaten bestehenden Format, das zum Ende eines Dialog-Vorgangs ausgegeben wurde, lässt sich auch ein Asynchron-Vorgang starten. Das Asynchron-Programm muss analog zum Dialog-Fall geschrieben werden: Der INIT-Aufruf liefert in KCRMF/kcrfn den Namen des ersten Teilformates mit variablen Feldern. Mit einem FGET-Aufruf kann das Programm die Eingabedaten aus diesem Teilformat holen. Bei einer leeren Eingabenachricht (Transaktionscode ohne Daten) liefert der FGET-Aufruf 10Z an das Teilprogramm zurück.