Data exit points are used to control or modify the Copy Active File (CPYACTF) command processing of data movement. For example, the record transfer function is available to write custom record mapping functions, such as specialized field conversions as in Examples of copying active files.
During normal operations, the Precisely-supplied data service program is called at three data exit points. If you specify a data exit program, it is called by the data service program at these points. If you specify a user-defined service program, your service program will be called at each of the three data exit points.
You can specify both a data exit program and a data service program on the same job, however it is not recommended.
The CPYACTF command calls the Data Initialize Exit Point before any records are transferred to the target file. If you specify a data exit program or your own data service program, this exit point enables you to perform any setup tasks before the records are transferred.
The Data Transfer Exit Point will be called for each record to be transferred from the source file to the target file. When the data exit program or data service program receives a buffer that contains the source record, it will be required to map the source record buffer to the target record buffer. This enables you to perform any custom data manipulation or mapping (for example, converting a two byte date field to a four byte data field).
When the CPYACTF process has transferred all of the records from the source file to the target file, the Data Finalize Exit Point is called. If you specified a data exit program or your own data service program, this exit point enables you to perform any necessary cleanup or end-of-file processing.