AuditNet Script Sharing Exchange Library
Therefore please check and understand any script downloaded BEFORE running it. We cannot be held responsible for any issues you encounter.
If you have created any code that you think might be transferable and useful to others please contact us.
Please read the guidelines for the operation of this exchange library.
SCRIPTS ETC
AuditWare IDEAScript Exchange Area
CAATsScripts Tips, Scripts and guidance to IDEA software users. Guidance on control: The ECAR model.
IDEA Scripts 12 free shared scripts from Audimation Services
IDEA Timesavers from Audimation Services
Audit Routine Library Templates of common used audit routines written in ScriptBasic
ACL Scripts from the Texas ACL Users Group
FORUMS AND SOLUTIONS
AuditSoftware.net - site maintained by Rich Lanza contains many books and articles on using ACL and IDEA.
Test Sets and Automated Audit Scripts - books by Rich Lanza
101 ACL Applications: A Toolkit for Today's Auditor by Rich Lanza
Digital Analysis Using Benford's Law by Mark Nigrini (Click here for a review)
Fraud Investigation Using IDEA by C. Stephen Turnbull
Payables Test Set for ACL by Richard B. Lanza
Payables Test Set for IDEA by Richard B. Lanza
Using Microsoft Access for Data Analysis and Interrogation by Mark Nigrini (Click here for a review)
SOFTWARE VENDORS
Audimation Services provides solutions using CaseWare-IDEA software.
ACL Services provides case studies using ACL software.
ActiveData from Information Active
The following scripts come from the Texas ACL User Group
Type: Duplicate Search
Name: Address
Cleanse
Script Writer: Ian Craigen
Brief Description: This
script is designed to take common terms found in addresses such as
Street and st, and normalize them in a manner that is conducive
to improving the efficiency of a Duplicate Search. While this is not a
Duplicate Search itself, it can be used to help identify commonalities
in addresses.
Type: Duplicate
Search
Type: Duplicate Search
Type: Duplicate Search
Type: Duplicate Search EXTRACT
%v_dup_field% %v_dup_field%v2 list as "%v_list%" list2 as "%v_list%2"
V_Counter threshold if V_Counter>=threshold Name of
Script: Q-Gram
improved This was
a more advanced version of the above script. You should double check
to see if it has the same problem mentioned above.
Type: Duplicate Search
Type: General
Application
Type: General
Application
Type: General
Application
Name of Script: Creating
Combinations
Script Writer : David
Coderre
Brief Description: This
code was written to create various possible combinations of data. In
other words, suppose you have 30 items for sale at a store. You are
going to purchase 4 items, but you don't know which four. There are
30*30*30*30 possible combinations of items you can purchase. This code
will create all 810,000 possible combinations.
Type: General
Application Name
of Script: Mapping
Analysis NOTE:
While the code asks for Invoice, PO, Voucher you can select any 3 fields
so long as they are character fields.
Type: General Application
Name of Script: Table
Lookup
Script Writer: David
Coderre
Brief Description: This
script is designed to take a list of key words from one table to find
those key words in another table.
Type: General
Application
Script Writer: David
Coderre
Type: General
Application
Script Writer: Porter
Broyles
Type:
General Application
Name of Script:Verify.Fil
Script Writer: Porter
Broyles
Type:
General Application
Name of Script: Version
Check
Script Writer: Porter
Broyles
Name of Script: Fuzzy
Duplicates
Script Writer: David
Coderre
Brief Description: The
Fuzzy dups script sorts the file (ascending and descending) and compares
consecutive records to find strings (forwards and backwards) that are
close to each other.
Name of Script: Fuzzy
Dupes Two Tables
Script Writer: Porter
Broyles
Brief Description: This code is a simple adaptation of David
Coderre's Fuzzy Duplicates script. It was written only to capture
potential duplicates if they appeared on different tables.
Name of Script: Duplicate
Addresses and SSN
Script Writer: Porter
Broyles
Brief Description: This is a script that looks for duplicate SSN
and Addresses on two tables.
Name of Script: Q-Grams
Script Writer: Porter
Broyles
Brief Description: This
code is an advanced adaptation of David Coderre's Fuzzy Duplicates
script. It is, however, a significant enhancement upon the original as
it looks for similar
strings within a certain range of the original. NOTE: Please be
aware of the following. The code was written as a supplement to a
traditional duplicates search. In order to eliminate true duplicates, a
trap was added to the code. If you want to run the code in a manner
that it captures true duplicates, get rid of the marked through
section. It appears twice in the code.AND
%v_dup_field% <> %v_dup_field%v2 to
Fuzzy_Q_Dup_temp OPEN
Name of Script: Levenshtein
Distance
Script Writer: David
Coderre
Brief Description: David
Coderre wrote on the ACL User Forum: "Levenshtein
Distances script uses a
fantastic algorithm (developed by Levenschtein) for determining how
close two strings are to being the same (distance of 0 is identical;
distance of 1 is one keystroke - either one missing or one different
character); however,
it is very slow - about 2 seconds per record." This script was Dave's
1000th post on the ACL User Forum.
Name of Script: Append
ALL
Script Writer: Porter Broyles
Brief Description: This script is designed to append any number
of files into one file. It will normalize that data including field
type and field length. This script was Porter's 1000th post on the ACL
User Forum.
Name of Script: Append
All New
Script Writer: Porter Broyles
Brief Description: This script is designed to append any number
of files into one file. It will normalize that data including field
type and field length. This script is much shorter and more user
friendly than the older version. It is also quicker than the original
version, but can still be time consuming when dealing with numerous
files.
Script Writer: Porter
Broyles
Brief Description: This
is an interactive script that will prompt you for the table you wish to
analyze and then ask you for three fields: Invoice, PO, and Voucher.
The code will then "map" each of those fields and identify which map
variants are necessary to account for 99% of the total transactions.
The code will then export the exceptions to 3 different files.
Name of Script: Preserve
Variables
Script Writer: Porter
Broyles
Brief Description: This
script is a proof of concept script. It was written as an alternative
to using global variables. The script is designed to preserve variables
from one session to another. By using this script, one can utilize the
best practice of "DELETE ALL OK" at the start of scripts.
Type: General Application
Name of Script: Transpose
Brief Description: David
Coderre provided this script for creating a cross tab for character
fields. In other words, this script will unbucket fields without using
recoffset. Similar to the concept of a cross tab.
Name of Script: Ultimate
Table Compare
Brief Description: This
script was written to compare a legacy system with a new system. Two
tables, the legacy and new, were supposed to be identical. This script
compares every cell in one table with every cell in another table and
highlights differences.
Brief description: Suppose
you have written a large script that loads a number of files directly
into ACL. As part of your validating the results, you want to create an
ACL file to verify the validity of the data in each of the tables. This
code was written to create a .fil table that contains the table that was
being reviewed, the number of errors identified, the record on which the
error occurred, and the field name identified.
Brief description: This
script is designed to be usable to check the version of ACL being used
as compared to the version of ACL project the script was written on. If
the version is use is older than the version the script was written on a
warning will be provided to the user that some commands may not be
compatible. This script will also verify that the version is greater
than 9.1 if the project will be loading a pdf file (an option only
available on version 9.1 or greater.


