The exact archiving requirements for your custom audit archiving utility are largely application dependent. However, there are a few issues that you must consider when writing the code for such a utility:
You must manage any record access conflicts that might arise from archiving a live online database or from running multiple audit archiving utilities concurrently on the same set of databases.
You might have additional security requirements over and above what OpenEdge requires that you want to enforce. For more information, see Auditarchiving security.
You must manage your own encryption and data integrity if you use your own intermediate storage medium, such as XML. For more information, see the sections on cryptography in ApplicationSecurity .
Some fields in audit data records are stored using Base64 representations of binary bytes strings. You can convert between Base64 character strings and binary byte strings using the BASE64-ENCODE and BASE64-DECODE ABL functions. You can also convert between binary byte strings and strings of hexadecimal character pairs using the HEX-ENCODE and HEX-DECODE ABL functions. For more information, see the sections on managing cryptographic data in ApplicationSecurity
Besides any special requirements like these, the archiving procedure generally relies on simple queries of the audit data tables according to your predetermined or user-selectable data selection criteria. Typically, you then write the queried records to your long-term storage in a manner that exactly replicates their content and relationships in the original short-term storage. However, again, your own long-term audit data storage requirements might be different.