Your E15 routine must pass a return code to DFSORT. Following are
the return codes for the E15 user exit:
- Return Code
- Description
- 00 (X'00')
- No Action/Record Altered
- 04 (X'04')
- Delete Record
- 08 (X'08')
- Do Not Return
- 12 (X'0C')
- Insert Record
- 16 (X'10')
- Terminate DFSORT
- 0: No Action
- If you want DFSORT to retain the record unchanged, place the
address of the record in general register 1 and return to DFSORT with
a return code of 0 (zero).
- 0: Record Altered
- If you want to change the record before passing it back to DFSORT,
your routine must move the record into a work area, perform whatever
modification you want, place the address of the modified record in
general register 1, and return with a return code of 0 (zero).
- 4: Delete Record
- If you want DFSORT to delete the record from the input data
set, return to DFSORT with a return code of 4. You need not place
the address of the record in general register 1.
- 8: Do Not Return
- DFSORT continues to return control to the user routine until
it receives a return code of 8. After that, the user exit is not used
again during the DFSORT application. You need not place an address
in general register 1 when you return with a return code of 8. Unless you are inserting records after the end of the
data set, you must pass a return code of 8 when the program indicates
the end of the data set. It does this by passing your routine
a zero address in the parameter list.
If your user exit routine
passes a return code of 8 to DFSORT when input records still remain
to be processed, the remaining records are processed by DFSORT, but
are not passed to your user exit.
- 12: Insert Record
- To add a record before the record whose address was just passed
to your routine, place the address of the record to be added in general
register 1 and return to DFSORT with a return code of 12. DFSORT keeps
returning to your routine with the same record address as before so
that your routine can insert more records at that point or alter the
current record. You can make insertions after the last record in the
input data set (after DFSORT places a zero address in the parameter
list). DFSORT keeps returning to your routine until
you pass a return code of 8.
- 16: Terminate DFSORT
- If you want to terminate DFSORT, return with a code of 16. DFSORT
then returns to its calling program or to the system with a return
code of 16.
See E15/E35 return codes and EXITCK for complete details of the meanings of
return codes in various situations.