An interface object is a Natural subprogram that is used to connect the client's calling program to a subprogram on a server.
Interface objects are actually not required if automatic Natural RPC (Remote Procedure Call) execution is used with the one important exception described below. However, it can be advantageous to generate interface objects as explained in Interface Objects and Automatic RPC Execution in the section Operating a Natural RPC Environment in the Natural RPC (Remote Procedure Call) documentation.
Note for EntireX RPC Servers:
It is recommended to generate an interface object if
you want to call an EntireX RPC server. In this case, you have to use the
appropriate SYSRPC Interface Object Generation function
described in this section to define the same group structure and attributes
(parameter direction) as in the IDL (Interface Definition Language) definition
of the subprogram. If the IDL does not contain group structures, it is
recommended to use the direct command COMPAT IDL
before generating the interface object. For details, refer to
Special Considerations for Calling EntireX RPC
Servers.
Note for Reliable RPC:
It is recommended to generate an interface object if you want to use
reliable RPC. If the parameter definitions do not contain group structures, you
have to set COMPAT IDL
before generating the
interface object. (For details refer to
Special
Considerations for Reliable RPC).
You can generate an interface object from new parameter definitions or from existing definitions in a subprogram or a parameter data area (PDA).
Caution:
The subprogram or PDA used for generating
an interface object can no longer be referenced in the local environment on the
client side. The function Interface Object Generation
completely changes the source of the subprogram so that it becomes unusable for
local program calls.
The following sections describe the functions and commands provided to generate single or multiple interface objects: