Syntax:
typedef cblt_rtncode (*PFI_IDP_EXIT)(mf_uns32 exit_point,
IDP_EXIT_INFO *exit_info);
On Entry:
- exit point
- 6 = Internal data value modification - output parameter
- exit_info
-
version |
Version of structure format |
flags |
0 |
data_size |
Size of data addressed by the data_ptr field |
funcs |
User exit support functions |
field name |
Name of data item in COBOL program's Linkage Section |
data_ptr |
Internal data value associated with field_name |
ext_param_name |
External parameter name |
request_cxt |
Request context |
exit_data |
User exit-specific data |
On Exit:
- exit_info
-
- exit_data
- User exit-specific data
Return codes:
- IDP_EXIT_CONTINUE
- 0 = Continue with default parameter mapping
- IDP_EXIT_STOP
- 1 = Terminate mapping processing. An error response will be required
- IDP_EXIT_HANDLED
- The exit has overridden the supplied internal data value
Comments:
This exit gives you the opportunity to override the internal data value created during the execution of the application. data_ptr addresses the memory assigned to the internal data value. If the exit chooses to override this parameter, it must only modify up to data_size bytes starting at data_ptr, and must return IDP_EXIT_HANDLED. The request handler will subsequently perform default mapping for the original (IDP_EXIT_CONTINUE) or overridden (IDP_EXIT_HANDLED) internal data value.
The user exit program owns the exit_data field of the IDP_EXIT_INFO structure. You would typically use it to preserve context information between exit point invocations. You can use it when returning any of the IDP_EXIT_ return values.