The Number 1 independent website for ACL information!

TexasACL User Group
About Us
Training
Why ACL
Essays & Scripts
General Concepts
Tips and Tricks
Scripts
Mini-Scripts
Bugs
Success Stories
ACL News
Events
Links
FAQ
Site Map
Support Us
Scripts


If you wish to contribute something for inclusion on this page, please ensure that it is not copyrighted and realize that it is being released under the GNU Free Documentation License - GFDL.
In other words, people are free to share or modify your information without asking you first.  They do have to credit you as the creator and this website.  Also, if you want to have a script posted, please ensure that it includes the following in comments at the start of the script: your name, this website, the date the code was written, any special instructions necessary to get the code to work, and what the code is intended to do.  Additionally, fully documented detailed comments within the code will improve the likelihood that the code will be posted.

 

 


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 efficeincy 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
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. 


Type: Duplicate Search
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.

 


Type: Duplicate Search
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.
 


Type: Duplicate Search
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.

 

EXTRACT %v_dup_field% %v_dup_field%v2 list as "%v_list%" list2 as "%v_list%2" V_Counter threshold if V_Counter>=threshold AND %v_dup_field% <> %v_dup_field%v2 to Fuzzy_Q_Dup_temp OPEN


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
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. 

 


Type: General Application
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.

 


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
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.

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: 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: 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
Name of Script: Transpose

Script Writer: David Coderre
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.

 


Type: General Application
Name of Script: Ultimate Table Compare

Script Writer: Porter Broyles
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.

 


Type: General Application

Name of Script:Verify.Fil

Script Writer: Porter Broyles
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 occured, and the field name identified.

 


 Type: General Application

Name of Script: Version Check

Script Writer: Porter Broyles
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 compatable.  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.)


DISCLAIMER:
Neither ACL TexasACL nor the script writers warranty or guarantee the effectiveness or reliability of any information or scripts provided herein.  Users are advised to validate the effectiveness/reliability on their own.