Broker logon and logoff functions are provided through Generic RPC Services module. See Using the Generic RPC Services Module.
The following topics are covered here:
... ERXCOM.COM_FUNCTION = 'LO'; /* Broker Logon */ ERXCOM.COM_CLIENT_USERID = 'PLI-USER'; ERXCOM.COM_CLIENT_PASSWORD = 'PLI-PASS'; call xxxSRVI(ERXCOM); /* see (1) below */ IF SUBSTR(ERXCOM.COM_ERROR,8) ^= ERX_S_SUCCESS then DO; /* error handling */ /* ... */ END; /* begin of application logic including calls to interface objects */ ...
... ERXCOM.COM_FUNCTION = 'LO'; /* Broker Logon */ ERXCOM.COM_CLIENT_USERID = 'PLI-USER'; ERXCOM.COM_CLIENT_PASSWORD = 'PLI-PASS'; CICS_LEN = STORAGE(ERXCOM); CICS_RESP1 = DFHRESP(NORMAL); CICS_RESP2 = DFHRESP(NORMAL); /* called CICS program name depends on PP switch ERXFCTPRE */ EXEC CICS LINK PROGRAM ('xxxSRVI') /* see (1) below */ RESP (CICS_RESP1) RESP2 (CICS_RESP2) COMMAREA (ERXCOM) LENGTH (CICS_LEN); IF SUBSTR(ERXCOM.COM_ERROR,8) ^= ERX_S_SUCCESS then DO; /* error handling */ /* ... */ END; /* begin of application logic including calls to interface objects */ ...
(1) The prefix of the program name (xxxSRVI
) can be
customized, see PL/I Preprocessor Settings. The default is PLISRVI
.
... /* end of application logic including calls to interface objects */ ERXCOM.COM_FUNCTION = 'LF'; /* Broker Logoff */ call xxxSRVI(ERXCOM); /* see (1) below */ IF SUBSTR(ERXCOM.COM_ERROR,8) ^= ERX_S_SUCCESS then DO; /* error handling */ /* ... */ END; ...
(1) The prefix of the program name (xxxSRVI
) can be customized, see
PL/I Preprocessor Settings. The default is PLISRVI
.
See Log on to the Broker above.
The COM_CLIENT_USERID
field (and the
COM_CLIENT_TOKEN
field, when
provided) must not change from logon, during call of interface objects, until
final logoff.
If explicit logon is used, as demonstrated here, the
COM_CLIENT_PASSWORD
field
may only be provided for the broker logon function call.
The logon call is the first call to the broker, before any application logic including interface object calls. The logoff call should be issued as soon as RPC communication is no longer needed.
It is also possible to work with implicit logon, see Writing Applications with the PL/I Wrapper.
Whenever possible we recommend using explicit logon as demonstrated here.