Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Ausgabe-Nachrichten von openUTM

Beim Senden von Nachrichten an Socket-Partner muss jede Teilnachricht bzw. jedes Fragment mit einem eigenen MPUT NT/NE-Aufruf verschickt werden.
Bei jedem MPUT-Aufruf wird eine eigene Teilnachricht erzeugt, auch wenn die Länge Null angegeben wird. Eine Nachricht mit der Länge 0 wird jedoch nur gesendet, wenn für die zu sendende Nachricht automatisch ein USP-Header erzeugt und der Nachricht vorangestellt wird (vgl. Tabelle unten). Ausnahme: Wenn das Teilprogramm nur einen einzigen MPUT-Aufruf enthält, wird unabhängig vom Wert des Parameters USP-HDR keine Nachricht gesendet.

Wenn der Socket-Partner beim Nachrichtenempfang einen USP-Header erwartet, können Sie per Generierung festlegen, dass openUTM bei Nachrichten oder Meldungen an den Socket-Partner automatisch einen USP-Header erzeugt und der Nachricht voranstellt.

Dies wird bei der Generierung durch den Operanden USP-HDR= in der PTERM- oder TPOOL-Anweisung festgelegt:

  • Für alle Nachrichten, d.h. K-Meldungen + MPUT/FPUT-Nachrichten (USP-HDR=ALL)

  • Nur für K-Meldungen (USP-HDR=MSG)

  • Keinen Header (USP-HDR = NO)

Wenn für den Socket-Partner keine Code-Konvertierung generiert wurde (Operand MAP=USER in der PTERM- oder TPOOL-Anweisung), können Sie den USP-Header auch im Teilprogramm selbst erzeugen und der Nachricht voranstellen.

Informationen zur Generierung von Socket-Anwendungen finden Sie im openUTM-Handbuch „Anwendungen generieren“.

Austausch von langen Nachrichten

Mit Socket-Partnern können Eingabe-Nachrichten und Dialog-Ausgabe-Nachrichten beliebiger Länge ausgetauscht werden. Falls eine Gesamtnachricht länger ist als 32767 Byte (Ausgabe) bzw. 32000 Bytes (Eingabe), dann muss die Nachricht fragmentiert werden, d.h. sie muss aus mehreren Teilnachrichten bestehen. Dabei darf jede Teilnachricht bei der Ausgabe maximal 32767 Byte (inclusive USP-Header) und bei der Eingabe maximal 32000 Byte lang sein.

Teilnachrichten sind dadurch gekennzeichnet, dass im USP-Header das entsprechende Flagfeld und der entsprechenden Messagetyp gesetzt sind, siehe unten. Bei Ausgaben muss das Programm diese Werte setzen.

Fragmentierte Eingabe-Nachrichten müssen mit einer entsprechenden Anzahl von MGET/FGET/DGET NT Aufrufen gelesen werden. Fragmentierte Dialog-Ausgabe-Nachrichten müssen mit einer entsprechenden Anzahl von MPUT NT Aufrufen gesendet werden.

Asynchron-Ausgabe-Nachrichten (FPUT/DPUT) können nicht fragmentiert werden. Sie dürfen nicht länger als 32700 Bytes lang sein.