This document covers the following topics:
To call an existing COBOL server
Use the IDL Extractor for COBOL to extract the Software AG IDL and, depending on the complexity of the extraction, also an SVM file.
Build an EntireX RPC client using any EntireX wrapper. See EntireX Wrappers. For a quick test you can:
use the IDL Tester; see EntireX IDL Tester in the EntireX Workbench documentation
generate an XML mapping file (XMM) and use the XML Tester for verification; see EntireX XML Tester
See Client and Server Examples for z/VSE CICS for COBOL RPC Server examples.
To write a new COBOL server
Use the COBOL Wrapper to generate a COBOL server skeleton and, depending on the complexity of the extraction, also an SVM file. Write your COBOL server and proceed as described under Using the COBOL Wrapper for the Server Side.
Build an EntireX RPC client using any EntireX wrapper. See EntireX Wrappers. For a quick test you can:
use the IDL Tester; see EntireX IDL Tester in the EntireX Workbench documentation
generate an XML mapping file (XMM) and use the XML Tester for verification; see EntireX XML Tester
See Client and Server Examples for z/VSE CICS for COBOL RPC Server examples.
This approach applies to all CICS scenarios (all programming languages and all interface types); see Supported Interface Types.
The CICS feature EXEC CICS ABEND
ABCODE(myabend
) may be used to indicate application
error codes. According to IBM CICS standards, ABEND
codes starting with the
letter A are reserved for CICS itself and should not be used in your RPC
server.
The CICS RPC Server follows these IBM CICS standards and sends back the RPC protocol message
10010018
Abnormal termination during program execution
. This is
returned when an ABEND
code starting with the letter
"A" is received from CICS, which is a CICS ABEND
.
10010045
CICS ABEND myabend was
issued
. This is returned when an ABEND
code starting with a letter
other than "A" is received from CICS, which is an
application error situation forced by your RPC server.
The CICS RPC Server issues a SYNCPOINT
command under the following circumstances:
After a successful non-conversational request or an end-of-conversation, the server issues a SYNCPOINT COMMIT
command.
If you are running under CICS with impersonation,
this SYNCPOINT
command is not executed by the server,
but by CICS when the user task is terminated. See Impersonation.
After abnormal termination of a non-conversational request or a conversation due to an error, the server performs
a SYNCPOINT ROLLBACK
command to back out any pending database modifications.