Archive for November 20, 2006

Audit of transactions using MySQL aggregate queries

Shows how to perform various audit tests using MySQL aggregate functions to obtain totals, minima, maxima, etc. Also illustrates the “where” clause which can further isolate or identify the population to be tested.

Extraction of data from a file with variable length records terminated by CR/LF

Shows an example of how to extract data from a file with variable length records, each line terminated by a carriage return/linefeed, using the ScriptBasic language.

Extraction of data from a file with fixed length records

Shows an example of how to extract data from a file with fixed length records, using the ScriptBasic language.

Identification/extraction of transactions using a lookup table

Identification of transactions which may be errors as they do not match the values stored in a lookup table. Routine is written in ScriptBasic.

Check transactions for dates occurring on a Federal holiday

Identify transactions which originated on a Federal Holiday, using the ScriptBasic language. Note that the routine uses a lookup table which can be modified to include dates other than Federal Holidays. No cost. Holiday dates can be customized, if they differ from Federal holidays.  Code is available in  “setup” format.

Merge match of two files using a key field value

Merge two files based upon key field common to both files.

Run Queries against MySQL databases using ScriptBasic

Extract audit data stored in MySQL database using a query. Write results out for further analysis using Excel or EZ-R Stats for Windows. No cost for any of the software.

Cumulative Monetary Amount sampling

Sample transactions using the cumulative monetary amount (dollar unit sampling) method.  View example screen shots.

Account Ageing

Age transaction amounts based upon the numeric field specified. Categorizes transactions based upon date. Excel support function.

Cash recovery using PROC CR

Proc CR is a procedure to facilitate cash recovery. Cash recovery from supplier overpayments is often possible regardless of how well the internal controls have been designed. Best practices and stringent controls can reduce duplicate invoice payments to less than half a percent. However, this error rate seems largely unaffected by automation. There are a variety of reasons why this is the case, e.g. multiple (non-integrated or non-communicating) systems, human error, intentional override, system failures, etc.