Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das RUI_READ Verb empfängt Antworten, SNA-Befehle und Daten in einen Microsoft® Windows-Anwendungspuffer® (Logical Unit Application, LUA).
Die folgende Struktur beschreibt das LUA_COMMON Element des Verb-Steuerelementblocks (VCB), das von RUI_READ verwendet wird.
Syntax
struct LUA_COMMON {
unsigned short lua_verb;
unsigned short lua_verb_length;
unsigned short lua_prim_rc;
unsigned long lua_sec_rc;
unsigned short lua_opcode;
unsigned long lua_correlator;
unsigned char lua_luname[8];
unsigned short lua_extension_list_offset;
unsigned short lua_cobol_offset;
unsigned long lua_sid;
unsigned short lua_max_length;
unsigned short lua_data_length;
char FAR * lua_data_ptr;
unsigned long lua_post_handle;
struct LUA_TH lua_th;
struct LUA_RH lua_rh;
struct LUA_FLAG1 lua_flag1;
unsigned char lua_message_type;
struct LUA_FLAG2 lua_flag2;
unsigned char lua_resv56[7];
unsigned char lua_encr_decr_option;
};
Elemente
lua_verb
Angegebener Parameter. Enthält den Verbcode LUA_VERB_RUI für RUI-Verben (Request Unit Interface).
lua_verb_length
Angegebener Parameter. Gibt die Länge in Byte des LUA VCB an. Er muss die Länge des Verbdatensatzes enthalten, der ausgegeben wird.
lua_prim_rc
Primärer Rückgabecode, der von LUA nach Abschluss des Verbs festgelegt wurde. Die gültigen Rückgabecodes variieren je nach ausgestellten LUA-Verb.
lua_sec_rc
Sekundärer Rückgabecode, der von LUA beim Abschluss des Verbs festgelegt wurde. Die gültigen Rückgabecodes variieren je nach ausgestellten LUA-Verb.
lua_opcode
Angegebener Parameter. Enthält den LUA-Befehlscode (Verboperationscode) für das zu ausgestellte Verb LUA_OPCODE_RUI_READ.
lua_correlator
Angegebener Parameter. Enthält einen vom Benutzer bereitgestellten Wert, der das Verb mit anderen vom Benutzer bereitgestellten Informationen verknüpft. LUA verwendet oder ändert diese Informationen nicht. Dieser Parameter ist optional.
lua_luname
Angegebener Parameter. Gibt den ASCII-Namen der lokalen LU an, die von der Windows LUA-Sitzung verwendet wird.
RUI_READ erfordert diesen Parameter nur, wenn lua_sid null ist.
Dieser Parameter ist acht Bytes lang, rechts mit Leerzeichen (0x20) aufgefüllt, wenn der Name kürzer als acht Zeichen ist.
lua_extension_list_offset
Wird von RUI im Hostintegrationsserver nicht verwendet und sollte auf Null festgelegt werden.
lua_cobol_offset
Wird von LUA in Microsoft® Host Integration Server nicht verwendet und sollte null sein.
lua_sid
Der angegebene und zurückgegebene Parameter. Gibt den Sitzungsbezeichner an und wird von SLI_OPEN und RUI_INIT zurückgegeben. Andere Verben verwenden diesen Parameter, um die für den Befehl verwendete Sitzung zu identifizieren. Wenn andere Verben den parameter lua_luname verwenden, um Sitzungen zu identifizieren, legen Sie den lua_sid Parameter auf Null fest.
lua_max_length
Gibt die Länge des empfangenen Puffers für RUI_READ und SLI_RECEIVE an. Wird nicht von anderen RUI- und SLI-Verben verwendet und sollte auf Null festgelegt werden.
lua_data_length
Zurückgegebener Parameter. Gibt die Länge der in lua_peek_data zurückgegebenen Daten für das verb RUI_BID an.
lua_data_ptr
Zeigen Sie auf den vom Anwendung bereitgestellten Puffer, der die Daten aus einem RUI_READ Verb empfängt. Sowohl SNA-Befehle als auch Daten werden in diesem Puffer platziert, und sie können sich in einem EBCDIC-Format befinden.
Wenn RUI_READ ausgegeben wird, verweist dieser Parameter auf den Speicherort, um die Daten vom Host zu empfangen.
lua_post_handle
Angegebener Parameter. Wird unter Microsoft Windows Server verwendet, wenn eine asynchrone Benachrichtigung durch Ereignisse durchgeführt werden soll. Diese Variable enthält das Handle des Ereignisses, das signalisiert werden soll, oder ein Fensterhandle.
lua_th
Zurückgegebener Parameter. Enthält den SNA-Übertragungsheader (TH) der gesendeten oder empfangenen Nachricht. Verschiedene Unterparameter werden für Schreibfunktionen festgelegt und für Lese- und Gebotsfunktionen zurückgegeben. Die Unterparameter sind wie folgt:
lua_th.flags_fid
Formatidentifikationstyp 2, vier Bit.
lua_th.flags_mpf
Segmentierungszuordnungsfeld, zwei Bit. Definiert den Typ des Datensegments. Folgende Werte sind gültig:
0x00 Mittleres Segment0x04 Letzten Segment0x08 Ersten Segment0x0C Nur-Segment
lua_th.flags_odai
Absenderadressenfeld-Zieladressfeld (OAF–DAF)-Zuweisungsindikator, ein Bit.
lua_th.flags_efi
Beschleunigter Flussindikator, ein Bit.
lua_th.daf
Zieladressfeld (DAF), ein nicht signiertes Zeichen.
lua_th.oaf
Ursprungsadressfeld (OAF), ein nicht signiertes Zeichen.
lua_th.snf
Sequenznummerfeld, ein nicht signiertes Zeichen[2].
lua_rh
Zurückgegebener Parameter. Enthält den SNA-Anforderungs-/Antwortheader (RH) der gesendeten oder empfangenen Nachricht. Sie wird für die Schreibfunktion festgelegt und von den Lese- und Gebotsfunktionen zurückgegeben. Die Unterparameter sind wie folgt:
lua_rh.rri
Anforderungsantwortindikator, ein Bit.
lua_rh.ruc
RU-Kategorie, zwei Bits. Folgende Werte sind gültig:
LUA_RH_FMD (0x00) FM-DatensegmentLUA_RH_NC (0x20)LUA_RH_DFC (0x40)Datenflusssteuerung LUA_RH_SC (0x60) Sitzungssteuerelement
lua_rh.fi
Formatanzeige, ein Bit.
lua_rh.sdi
Sense data included indicator, one bit.
lua_rh.bci
Begin chain indicator, one bit.
lua_rh.eci
Endchainindikator, ein Bit.
lua_rh.dr1i
Eindeutige Antwort 1 Indikator, ein Bit.
lua_rh.dr2i
Eindeutige Antwort 2 Indikator, ein Bit.
lua_rh.ri
Ausnahmeantwortindikator (für eine Anforderung) oder Antworttypindikator (für eine Antwort), ein Bit.
lua_rh.qri
Warteschleifen-Antwortindikator, ein Bit.
lua_rh.pi
Pacing-Indikator, ein Bit.
lua_rh.bbi
Beginnen Sie die Klammernanzeige, ein Bit.
lua_rh.ebi
Endklammernindikator, ein Bit.
lua_rh.cdi
Änderungsrichtungsanzeige, ein Bit.
lua_rh.csi
Codeauswahlindikator, ein Bit.
lua_rh.edi
Enzipherierte Datenanzeige, ein Bit.
lua_rh.pdi
Abstands-Datenindikator, ein Bit.
lua_flag1
Angegebener Parameter. Enthält eine Datenstruktur, die Flags für nachrichten enthält, die von der Anwendung bereitgestellt werden. Die Unterparameter sind wie folgt:
lua_flag1.bid_enable
Bid enable indicator, one bit.
lua_flag1.close_abend
Schließen Sie die Direktanzeige, ein Bit.
lua_flag1.nowait
Keine Wartezeit für datenkennzeichnung, ein Bit.
lua_flag1.sscp_exp
SSCP beschleunigter Fluss, ein Bit.
lua_flag1.sscp_norm
SSCP normaler Fluss, ein Bit.
lua_flag1.lu_exp
LU beschleunigter Fluss, ein Bit.
lua_flag1.lu_norm
LU normaler Fluss, ein Bit.
Legen Sie lua_flag1.nowait auf 1 fest, um anzugeben, dass RUI_READ sofort zurückgeben möchten, ob Daten gelesen werden können, oder legen Sie sie auf 0 fest, wenn das Verb vor der Rückgabe auf Daten warten soll.
Legen Sie lua_flag1.bid_enable auf 1 fest, um die neueste RUI_BID erneut zu aktivieren (entspricht dem Ausstellen von RUI_BID mit genau den gleichen Parametern wie zuvor), oder legen Sie sie auf Null fest, wenn Sie RUI_BID nicht erneut aktivieren möchten.
Durch erneutes Aktivieren des vorherigen RUI_BID wird der ursprünglich zugewiesene VCB wiederverwendet, sodass dieser VCB nicht freigegeben oder geändert worden sein darf.
Legen Sie ein oder mehrere der folgenden Flags auf 1 fest, um anzugeben, aus welchem Nachrichtenfluss Daten gelesen werden sollen:
lua_flag1.sscp_exp
lua_flag1.lu_exp
lua_flag1.sscp_norm
lua_flag1.lu_norm
Wenn mehr als ein Flag festgelegt ist, werden die verfügbaren Daten mit der höchsten Priorität zurückgegeben. Die Reihenfolge der Prioritäten (am höchsten zuerst) lautet: SSCP beschleunigt, LU beschleunigt, SSCP normal, LU normal. Das entsprechende Kennzeichen in der Gruppe lua_flag2 ist so festgelegt, dass angegeben wird, aus welchem Fluss die Daten gelesen wurden.
lua_message_type
Gibt den Typ der eingehenden oder ausgehenden SNA-Befehle und -Daten an. Zurückgegebener Parameter. Gibt den Typ der SNA-Nachricht an, die für RUI_READ angegeben ist. Mögliche Werte:
LUA_MESSAGE_TYPE_LU_DATA
LUA_MESSAGE_TYPE_SSCP_DATA
LUA_MESSAGE_TYPE_RQR
LUA_MESSAGE_TYPE_BID
LUA_MESSAGE_TYPE_BIND
LUA_MESSAGE_TYPE_BIS
LUA_MESSAGE_TYPE_CANCEL
LUA_MESSAGE_TYPE_CHASE
LUA_MESSAGE_TYPE_CLEAR
LUA_MESSAGE_TYPE_CRV
LUA_MESSAGE_TYPE_LUSTAT_LU
LUA_MESSAGE_TYPE_LUSTAT_SSCP
LUA_MESSAGE_TYPE_QC
LUA_MESSAGE_TYPE_QEC
LUA_MESSAGE_TYPE_RELQ
LUA_MESSAGE_TYPE_RTR
LUA_MESSAGE_TYPE_SBI
LUA_MESSAGE_TYPE_SHUTD
LUA_MESSAGE_TYPE_SIGNAL
LUA_MESSAGE_TYPE_SDT
LUA_MESSAGE_TYPE_STSN
LUA_MESSAGE_TYPE_UNBIND
LU_DATA, LUSTAT_LU, LUSTAT_SSCP und SSCP_DATA sind keine SNA-Befehle.
lua_flag2
Zurückgegebener Parameter. Enthält Flags für nachrichten, die von LUA zurückgegeben werden. Die Unterparameter sind wie folgt:
lua_flag2.bid_enable
Gibt an, dass RUI_BID erfolgreich erneut aktiviert wurde, wenn sie auf 1 festgelegt ist.
lua_flag2.async
Gibt an, dass das LUA-Schnittstellenverb asynchron abgeschlossen wurde, wenn er auf 1 festgelegt ist.
lua_flag2.sscp_exp
Gibt den beschleunigten SSCP-Fluss an, wenn er auf 1 festgelegt ist.
lua_flag2.sscp_norm
Gibt den normalen SSCP-Fluss an, wenn er auf 1 festgelegt ist.
lua_flag2.lu_exp
Gibt den beschleunigten LU-Fluss an, wenn er auf 1 festgelegt ist.
lua_flag2.lu_norm
Gibt den normalen LU-Fluss an, wenn er auf 1 festgelegt ist.
lua_resv56
Reserviert und sollte auf Null festgelegt werden.
lua_encr_decr_option
Reserviert und sollte auf Null festgelegt werden.
Rückgabecodes
LUA_OK
Primärer Rückgabecode; das Verb erfolgreich ausgeführt wurde.
LUA_DATA_INCOMPLETE
Sekundärer Rückgabecode; RUI_READ konnte nicht alle empfangenen Daten zurückgeben, da der Datenpuffer der Anwendung (angegeben durch lua_max_length) nicht groß genug war. Nachfolgende RUI_READ Anforderungen können ausgegeben werden, um die verbleibenden RUI-Daten abzurufen.
Dies ist nicht das Standardverhalten für RUI_READ und wird nur aktiviert, wenn lua_resv56[3]beim Aufrufen RUI_INIT während der Sitzungseinrichtung auf einen Wert ungleich Null festgelegt ist. Weitere Informationen finden Sie in den Anmerkungen.
LUA_CANCELED
Primärer Rückgabecode; Das Verb wurde nicht erfolgreich abgeschlossen, da es von einem anderen Verb oder von einem internen Fehler abgebrochen wurde.
LUA_PURGED
Sekundärer Rückgabecode; RUI_READ wurde von RUI_PURGE abgebrochen.
LUA_TERMINATED
Sekundärer Rückgabecode; RUI_TERM wurde ausgestellt, während RUI_READ aussteht.
LUA_PARAMETER_CHECK
Primärer Rückgabecode; das Verb wurde aufgrund eines Parameterfehlers nicht ausgeführt.
LUA_BAD_DATA_PTR
Sekundärer Rückgabecode; der parameter lua_data_ptr einen ungültigen Wert enthielt.
LUA_BAD_SESSION_ID
Sekundärer Rückgabecode; Ein ungültiger Wert für lua_sid wurde im VCB angegeben.
LUA_BID_ALREADY_ENABLED
Sekundärer Rückgabecode; lua_flag1.bid_enable wurde so eingestellt, dass RUI_BID erneut aktiviert wurde, aber die vorherige RUI_BID war noch in Bearbeitung.
LUA_DUPLICATE_READ_FLOW
Sekundärer Rückgabecode; die Ablaufkennzeichnungen in der gruppe lua_flag1 angegebenen einen oder mehrere Sitzungsflüsse, für die RUI_READ bereits ausstehend war. Auf jeden Sitzungsfluss kann jeweils nur ein RUI_READ warten.
LUA_INVALID_FLOW
Sekundärer Rückgabecode; Keines der lua_flag1 Ablaufkennzeichnungen wurde festgelegt. Mindestens eine dieser Flags muss auf 1 festgelegt werden, um anzugeben, aus welchem Fluss oder welchen Flüssen gelesen werden soll.
LUA_INVALID_POST_HANDLE
Sekundärer Rückgabecode; für ein Windows-Betriebssystem, das Ereignisse als asynchrone Bereitstellungsmethode verwendet, enthält die Windows LUA VCB kein gültiges Ereignishandle.
LUA_NO_PREVIOUS_BID_ENABLED
Sekundärer Rückgabecode; lua_flag1.bid_enable wurde so eingestellt, dass RUI_BID erneut aktiviert wurde, aber es gab keine vorherigen RUI_BID , die aktiviert werden konnten. (Weitere Informationen finden Sie in den Hinweisen.)
LUA_RESERVED_FIELD_NOT_ZERO
Sekundärer Rückgabecode; ein reserviertes Feld im Verbdatensatz oder ein Parameter, der von diesem Verb nicht verwendet wird, wurde auf einen Wert ungleich Null festgelegt.
LUA_VERB_LENGTH_INVALID
Sekundärer Rückgabecode; ein LUA-Verb wurde mit dem Wert lua_verb_length unerwartet von LUA ausgegeben.
LUA_STATE_CHECK
Primärer Rückgabecode; das Verb wurde nicht ausgeführt, weil es in einem ungültigen Zustand ausgegeben wurde.
LUA_NO_RUI_SESSION
Sekundärer Rückgabecode; RUI_INIT wurde für den lu-Namen, der für RUI_READ angegeben wurde, noch nicht erfolgreich abgeschlossen.
LUA_NEGATIVE_RSP
Primärer Rückgabecode; gibt einen der folgenden beiden Fälle an, die durch den sekundären Rückgabecode unterschieden werden können:
LUA hat einen Fehler in den vom Host empfangenen Daten erkannt. Anstatt die empfangene Nachricht an die Anwendung an RUI_READ zu übergeben, verwirft LUA die Nachricht (und den Rest der Kette, wenn sie sich in einer Kette befindet) und sendet eine negative Antwort an den Host. LUA informiert den Antrag auf eine nachfolgende RUI_READ oder RUI_BID , dass eine negative Antwort gesendet wurde.
Die LUA-Anwendung hat zuvor eine negative Antwort auf eine Nachricht in der Mitte einer Kette gesendet. LUA hat nachfolgende Nachrichten in dieser Kette gelöscht und meldet nun die Anwendung, dass alle Nachrichten aus der Kette empfangen und gelöscht wurden.
LUA_SEC_RC
Sekundärer Rückgabecode; Dieser Parameter ist ein nichtzero sekundärer Rückgabecode, der den Sinnescode enthält, der an den Host für die negative Antwort gesendet wird. Dies gibt an, dass LUA einen Fehler in den Hostdaten erkannt und eine negative Antwort an den Host gesendet hat. Informationen zum Interpretieren der Werte des Sense-Codes, die zurückgegeben werden können, finden Sie unter SNA-Überlegungen mithilfe von LUA.
Ein sekundärer Rückgabecode von Null weist darauf hin, dass LUA nach einer vorherigen RUI_WRITE einer negativen Antwort auf eine Nachricht in der Mitte einer Kette jetzt alle Nachrichten aus dieser Kette empfangen und verworfen hat.
LUA_UNSUCCESSFUL
Primärer Rückgabecode; Der angegebene Verbdatensatz war gültig, aber das Verb wurde nicht erfolgreich abgeschlossen.LUA_DATA_TRUNCATED
Sekundärer Rückgabecode; der parameter lua_data_length war kleiner als die tatsächliche Länge der in der Nachricht empfangenen Daten. Nur lua_data_length Bytes von Daten wurden an das Verb zurückgegeben; die verbleibenden Daten wurden verworfen. Zusätzliche Parameter werden auch zurückgegeben, wenn dieser sekundäre Rückgabecode abgerufen wird.
LUA_NO_DATA
Sekundärer Rückgabecode; lua_flag1.nowait wurde so festgelegt, dass die sofortige Rückgabe angezeigt wird, ohne auf Daten zu warten, und für den angegebenen Sitzungsfluss oder -flows waren derzeit keine Daten verfügbar.
LUA_INVALID_PROCESS
Sekundärer Rückgabecode; Der Betriebssystem/2-Prozess, der dieses Verb ausgestellt hat, war nicht derselbe Prozess, der RUI_INIT für diese Sitzung ausgestellt hat. Nur der Prozess, der eine Sitzung gestartet hat, kann Verben in dieser Sitzung ausgeben.
LUA_COMM_SUBSYSTEM_ABENDED
Primärer Rückgabecode; gibt eine der folgenden Bedingungen an:Der von dieser Unterhaltung verwendete Knoten hat einen ABEND gefunden.
Die Verbindung zwischen dem Transaktionsprogramm (TP) und dem Physischen Einheitsknoten (PU) 2.1 wurde unterbrochen (LAN-Fehler).
Die SnaBase auf dem Computer der TPs hat einen ABEND gefunden.
LUA_SESSION_FAILURE
Primärer Rückgabecode; eine erforderliche Hostintegrationsserverkomponente wurde beendet.LUA_LU_COMPONENT_DISCONNECTED
Sekundärer Rückgabecode; gibt an, dass die LUA-Sitzung aufgrund eines Problems mit dem Linkdienst oder mit der Host-LU fehlgeschlagen ist.
LUA_RUI_LOGIC_ERROR
Sekundärer Rückgabecode; Ein interner Fehler wurde in LUA erkannt. Dieser Fehler sollte während des normalen Vorgangs nicht auftreten.
LUA_INVALID_VERB
Primärer Rückgabecode; entweder der Verbcode oder der Vorgangscode oder beides ist ungültig. Das Verb wurde nicht ausgeführt.LUA_STACK_TOO_SMALL
Primärer Rückgabecode; Die Stapelgröße der Anwendung ist zu klein, um das Verb auszuführen. Erhöhen Sie die Stapelgröße Ihrer Anwendung.LUA_COMM_SUBSYSTEM_NOT_LOADED
Primärer Rückgabecode; Eine erforderliche Komponente konnte nicht geladen oder beendet werden, während das Verb verarbeitet wird. So konnte die Kommunikation nicht stattfinden. Wenden Sie sich an den Systemadministrator, um Korrekturmaßnahmen zu ergreifen.LUA_UNEXPECTED_DOS_ERROR
Primärer Rückgabecode; nach dem Ausgeben eines Betriebssystemaufrufs wurde ein unerwarteter Rückgabecode des Betriebssystems empfangen und im sekundären Rückgabecode angegeben.
Bemerkungen
RUI_INIT müssen erfolgreich abgeschlossen sein, bevor RUI_READ ausgestellt wird.
Während ein vorhandenes RUI_READ aussteht, können Sie eine andere RUI_READ nur ausgeben, wenn ein anderer Sitzungsfluss oder Flows von ausstehenden RUI_READ Verben angegeben wird. Für denselben Sitzungsfluss können nicht mehr als eine RUI_READ ausstehen.
Sie können einen bestimmten Nachrichtenfluss (LU normal, LU expedited, SSCP normal oder SSCP expedited) angeben, aus dem Daten gelesen werden sollen, oder Sie können mehrere Nachrichtenflüsse angeben. Sie können mehrere RUI_READ Verben ausstehen, vorausgesetzt, dass keine beiden Verben denselben Fluss angeben.
Daten werden von der Anwendung in einem von vier Sitzungsflüssen empfangen. Die vier Sitzungsflüsse, von der höchsten zur niedrigsten Priorität sind:
SSCP beschleunigt
LU beschleunigt
SSCP normal
LU normal
Der Datenflusstyp, den RUI_READ verarbeiten soll, wird im lua_flag1 Parameter angegeben. Die Anwendung kann auch angeben, ob sie mehr als einen Datentyp des Datenflusses betrachten möchte. Wenn mehrere Flussbits festgelegt sind, wird zuerst die höchste Priorität empfangen. Wenn RUI_READ die Verarbeitung abgeschlossen hat, gibt lua_flag2 den spezifischen Flusstyp an, für den die Daten von der Windows LUA-Anwendung empfangen wurden.
Wenn RUI_BID erfolgreich abgeschlossen wird, bevor ein RUI_READ ausgegeben wird, kann die Windows LUA-Schnittstelle angewiesen werden, die letzten RUI_BID Verben VCB wiederzuverwenden. Geben Sie dazu den RUI_READ mit lua_flag1.bid_enable-Satz aus.
Der Parameter lua_flag1.bid_enable kann nur verwendet werden, wenn Folgendes zutrifft:
RUI_BID wurde bereits erfolgreich ausgestellt und abgeschlossen.
Der für RUI_BID zugewiesene Speicher wurde nicht freigegeben oder geändert.
Es steht kein anderer RUI_BID aus.
Bei Verwendung von lua_flag1.bid_enable darf der RUI_BID Speicher nicht freigegeben werden, da die letzten RUI_BID Verben VERWENDET werden. Außerdem wird bei Verwendung von lua_flag1.bid_enable der erfolgreiche Abschluss von RUI_BID veröffentlicht.
Wenn RUI_READ mit lua_flag1.nowait ausgegeben wird, wenn keine Daten zum Empfangen verfügbar sind, ist LUA_NO_DATA der von der Windows LUA-Schnittstelle festgelegte sekundäre Rückgabecode.
Wenn die empfangenen Daten länger als lua_max_length sind, wird sie abgeschnitten. Es werden nur lua_max_length Bytes von Daten zurückgegeben. Der primäre Rückgabecode LUA_UNSUCCESSFUL und der sekundäre Rückgabecode LUA_DATA_TRUNCATED werden ebenfalls zurückgegeben. Die RUI-Bibliothek gibt so viele Daten wie möglich an den Datenpuffer der Anwendung zurück, aber die verbleibenden Daten in der RUI werden verworfen und können nicht in nachfolgenden RUI_READ Anforderungen extrahiert werden. Dadurch wird die RUI-Anwendung gezwungen, einen RUI_READ Datenpuffer groß genug zuzuweisen, um die vollständige RU-Größe zu verarbeiten.
Dieses Standardverhalten kann geändert werden, indem der Wert von lua_resv56[3] auf einen Wert ungleich Null im Verb-Steuerelementblock festgelegt wird, wenn RUI_INIT während der Sitzungseinrichtung aufgerufen wird. Wenn die empfangenen Daten länger als lua_max_length sind, gibt eine RUI_READ Anforderung den primären Rückgabecode LUA_OK und einen sekundären Rückgabecode von LUA_DATA_INCOMPLETE zurück. Eine RUI-Anwendung kann dann neue RUI_READ Anrufe ausgeben und den Rest der Daten empfangen.
Diese Erweiterung wurde im Rahmen des LUA-API-Standards (Microsoft Windows Open Services Architecture, WOSA) nicht übernommen und unterscheidet sich von der Implementierung von RUI durch IBM.
Nachdem eine Nachricht mit RUI_READ gelesen wurde , wird sie aus der Warteschlange für eingehende Nachrichten entfernt und kann nicht erneut darauf zugegriffen werden. (RUI_BID kann als nicht destruktives Lesen verwendet werden. Die Anwendung kann sie verwenden, um den verfügbaren Datentyp zu überprüfen, die Daten verbleiben jedoch in der eingehenden Warteschlange und müssen nicht sofort verwendet werden.)
Pacing kann für die primäre zu sekundäre Halbsitzung (in der Hostkonfiguration angegeben) verwendet werden, um zu schützen, dass die LUA-Anwendung mit Nachrichten überflutet wird. Wenn die LUA-Anwendung nur langsam Nachrichten liest, verzögert hostintegrationsserver das Senden von Pacing-Antworten an den Host, um dies zu verlangsamen.
Siehe auch
RUI_BID
RUI_INIT
RUI_TERM
RUI_WRITE
SLI_OPEN
SLI_PURGE
SLI_RECEIVE
SLI_SEND