/* $Revision$ * $Id$ */ /* FAC_PACA, (A means Audit) to be included from fac_pac.src, isolated for convenience only * The Audit-package source. Contains all functions for audit. * * Usage: aud.auditaction(...); * */ CREATE OR REPLACE PACKAGE aud AS PROCEDURE auditaction (tabelnaam VARCHAR2, tabelkey_oud NUMBER, tabelkey_nieuw NUMBER, veldnaam VARCHAR2, waarde_oud VARCHAR2, waarde_nieuw VARCHAR2, action VARCHAR2, opmerk VARCHAR2 DEFAULT NULL); END aud; / CREATE OR REPLACE PACKAGE BODY aud AS PROCEDURE auditaction (tabelnaam VARCHAR2, tabelkey_oud NUMBER, tabelkey_nieuw NUMBER, veldnaam VARCHAR2, waarde_oud VARCHAR2, waarde_nieuw VARCHAR2, action VARCHAR2, opmerk VARCHAR2 DEFAULT NULL) IS BEGIN IF (action <> 'I' AND COALESCE(waarde_oud, 'bUSnDIaVjRS56D3z') <> COALESCE(waarde_nieuw, 'bUSnDIaVjRS56D3z')) OR (action = 'I' AND waarde_nieuw IS NOT NULL) THEN INSERT INTO fac_audit (fac_audit_tabelnaam, fac_audit_tabelkey, fac_audit_veldnaam, fac_audit_actie, fac_audit_waarde_oud, fac_audit_waarde_nieuw, prs_perslid_key, fac_audit_opmerking) VALUES (tabelnaam, COALESCE(tabelkey_nieuw, tabelkey_oud), veldnaam, CASE WHEN action = 'D' OR SUBSTR(veldnaam, -9) = 'verwijder' THEN 'D' ELSE action END, waarde_oud, waarde_nieuw, sys_context('USERENV', 'CLIENT_IDENTIFIER'), opmerk); END IF; END; END aud; / REGISTERRUN('$Id$')