Previous Topic Next topic Print topic


Unmapped Named External Input Parameter (Exit Point 3)

Syntax:

typedef cblt_rtncode (*PFI_IDP_EXIT)(mf_uns32      exit_point,
                                     IDP_EXIT_INFO *exit_info);

On Entry:

exit point 3 = Unmapped named external input parameter
  version Version of structure format
  flags 0
  ext_value_size Size of data addressed by ext_value
  funcs User exit support functions
  ext_param_name Name of external parameter
  ext_value External data value associated with field_name
  request_cxt
  version Version of structure format
  argc Parameter count of loaded service
  service_type Type of client request
  flags Request context control flags
  argv Parameter list of loaded service
  service_name Name of loaded service
  pgm_name Name of the main program associated with the service
  epoint_name Name of the entry point to invoke
  exit_data User exit-specific data
  flags 0
  request_cxt
  exit_data User exit-specific data
exit_info
IDP_EXIT_CONTINUE 0 Continue with processing
IDP_EXIT_STOP 1 Terminate mapping processing. No service will be invoked. An error response will be required
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 one or more of the returned request context fields

On Exit:

exit point 3 = Unmapped named external 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
  ext_param_name Name of external parameter
  ext_value External data value associated with field_name
  request_cxt
  exit_data User exit-specific data
  flags 0
  accept_buf_len Length of data in accept_buf
  cmd_line _len Length of data in cmd_line
  flags Request context control flags
  accept_buf Data to be used for ANSI ACCEPT statements
  cmd_line String to be used to resolve ACCEPT FROM COMMAND-LINE statements
  exit_data User exit-specific data
IDP_EXIT_CONTINUE 0 Continue with processing
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 one or more of the returned request context fields

Return codes:

IDP_EXIT_CONTINUE 0 Continue with processing
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 one or more of the returned request context fields

Comments:

This exit gives you the opportunity to handle an unmapped named external input parameter that has been specified in the client request. The exit program would typically handle the parameter by setting an appropriate value in one or more of the data areas addressed by argv, setting up data to be used for ANSI ACCEPT statements (accept_buf), or setting up the application’s command line (cmd_line). The exit should use the fn_alloc_mem support function of the exit_info funcs structure to allocate any memory used for the setting up of accept_buf or cmd_line. If the exit chooses to override any of the request context fields, it must return IDP_EXIT_HANDLED.

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.

Previous Topic Next topic Print topic