We are in the process of adding field level auditing of an application to a web based audit and compliance reporting tool.
End Users update information in an application via a Windows GUI and command line utilities. The application stores data within a database (MSSQL, Oracle, and/or Sybase).
We need the ability to audit/record the changes to determine: -What data (field, value, and table) was changed (old value and new value --> even if it is a new insert)
-Who made the change (which is the result of another query as there is only one named user in the database that handles all transactions)
-When the change was made
-The resulting Audit Detail needs to be stored in a new table/tables in the database for retreival by the reporting tool.
-The solution cannot impact performance of the already heavy transactional database
-Code will need to be work in all 3 database types (MS-SQL, Oracle and Sybase)
-
Example: joe_user changed the CMD_LINE field from a value of ‘ls’ to to a value of ‘rm’ in the JOB_DEF Table for JOB_NAME ‘JOB1’ at 18:16:22 on 02/16/2006.
Notes:
Each record we are interested in is comprised of up to 27 different tables, all linked by a key. There are two types of records. Permenant (which use static table names) and dynamic (which have new tables created daily built with a date stamp).
There is a documented schema which describes all tables and their relationships.
A Non-Disclosure will be required prior to execution of an agreement.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
Databases: Oracle (9i and 10g), MSSQL (2000 and 2005) and Sybase 12.x