MSO FOCEXEC Cooperative Processing Service

The CICSCOM FUSELIB routine supplies the cooperative processing facility to FOCEXECs executing in the MSO region. It may be called from wherever a FOCUS user-written subroutine is supported. This routine is used to communicate and synchronize activity with the CICS portion of the dialog. When invoked, the FOCEXEC is placed into a wait until action is taken on the CICS side of the conversation. Data specified by the outlen/outbuf parameters is passed to CICS. When this subroutine is called it causes a CICS transaction specified in the CMSLOGN to be started in the CICS region. When CICSCOM completes, the inlen/inbuf parameters contain data that was passed back from CICS.

CICSCOM supports the following syntax:

CICSCOMM(timeout, outlen, outbuf, inlen, inbuf);

where:

timeout
Is the number of seconds to wait for response before timing out FOCUS. If this timeout duration is reached before the CICS portion of the session responds, the MSO FOCUS session is terminated. This action is represented as a FIN function code to the CMSRCV call.

outlen
Is length (0-256) of the outbound message to CICS.

outbuf
Is the field containing the outbound message to CICS.

inlen
Is the length (0-256) of the inbound message buffer. This value is the maximum amount that can be returned by CICS. It is presented to the CICS portion of the conversation in the outlen parameter of the CMSORCV call.

inbuf
Is the field to contain the inbound message from CICS.

Information Builders