Allows you to override the external value provided by the client request
for the given COBOL program's Linkage Section
item.
Syntax:
typedef cblt_rtncode (*PFI_IDP_EXIT)(mf_uns32 exit_point,
IDP_EXIT_INFO *exit_info);
On Entry:
exit point |
1 = External data value modification - input parameter |
exit_info
|
version |
Version of structure format |
|
flags |
0 |
|
ext_value_size |
Size of data addressed by ext_value |
|
funcs |
User exit support functions |
|
field_name |
Name of data item in COBOL program's Linkage
Section |
|
ext_param_name |
Name of external parameter |
|
ext_value |
External data value associated with field_name |
|
request_cxt |
Request context |
|
exit_data |
User exit-specific data |
|
On Exit:
exit_info
|
ext_value_size |
Size of data addressed by ext_value. Needs to be
updated only if the user exit allocates memory for a new ext_value string |
|
ext_value |
External data value to be associated with
field_name. Needs to be updated only if the user exit allocates memory for a
new ext_value string |
|
exit_data |
User exit-specific data |
|
Return codes:
IDP_EXIT_CONTINUE |
0 |
Continue with default parameter mapping |
IDP_EXIT_STOP |
1 |
Terminate mapping processing. No service will be
invoked. An error response will be required |
IDP_EXIT_HANDLED |
2 |
The exit has overridden the supplied external value. Use
this value to perform default mapping for the given COBOL program Linkage
Section field name. |
Comments:
This exit gives you the opportunity to override the external value
provided by the client request for the given COBOL program Linkage Section
field name. If the exit chooses to override the external value, it must return
IDP_EXIT_HANDLED and either update ext_value in place (if the replacement value
is less or equal to ext_value_size), or allocate a replacement string using the
support function fn_alloc_mem and set ext_value and
ext_value_size accordingly. The request handler then performs default mapping
for the original (IDP_EXIT_CONTINUE) or overridden (IDP_EXIT_HANDLED) external
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.
See Also: