Your E32 user exit routine is entered each time the merge program
requires a new input record. DFSORT passes three
fields to
your routine:
- The increment of the next file to be used for
input. The file increment is 0,4,8,...,N–4, where N is
four times the number of input files. Thus, the increment 0 (zero)
represents the first input file, 4 the second file, 8 the third, and
so on.
- The address of the next input record. Your
routine must provide a separate input buffer for each input file used.
An input buffer containing the first record for a file must not be
altered until you have passed the first record from each file to DFSORT.
- The user exit address constant. If you invoked
DFSORT with a user exit address constant in the parameter list, the
address constant is passed to your E32 user exit the first time it
is entered. This address constant can be changed by your E32 user
exit any time it is entered; the address constant is passed along
on subsequent entries to your E32 user exit and E35 user exit. For
example, you can obtain a dynamic storage area, use it in your E32
user exit, and pass its address to your E35 user exit.
Note: The user exit address constant must not be used for
a Conventional merge application.