TBLT_RETC TBLT_ENTRY BltDataPack(TBLT_FNCHAR *filenamePtr, TBLT_FNCHAR *newFilenamePtr TBLT_DATACALLBACKPTR xCallBackPtr, TBLT_AUXPACK *apPtr); filenamePtr I:name of file to pack newFilenamePtr I:name of new file xCallBackPtr I:function pointer to routine to callback, 0 if none apPtr I:auxiliary packThis routine removes all records marked as deleted (those records with the first byte a
*
) and
also any memo records associated with the deleted records.
After a successful pack, the original file(s) may be deleted or archived and the new file can be renamed to that of the original.
The file to pack must be closed. The new file must not already exist.
The TBLT_DH.xCallBackPtr pointer is not used by the routine, but can be used to store the callback function pointer supplied to this routine. The source to this routine is in the optional optdata.c file.
apPtr
is the pointer to an optional auxiliary pack. Set apPtr = 0 if there
is no pack. This pack lets you override the internal operating system IFS calls for this
handle, and set IFS options, such as 64-bit file offsets. See the supplemental
documentation for details.
Return: Non-zero indicates an error, otherwise the database is now in the new
files, having had all deleted records, and memo records associated with those delete records,
removed. The original files remain unchanged.