One of the advantages that ACL offers over most software products such as Access, SAS, SQL, and Excel is that it includes a log. The ACL log is designed to record the user performs within the script or via ACL's GUI. The ACL log thus is a powerful tool in three respects.
1) It can help troubleshoot problems.
When a command is executed in ACL, the online version of the log will portray the script with either a Green Checkmark or a Red X.

The Green Checkmark indicates that the command was executed successfully, the Red X indicates that the command failed. By double clicking on the Red X, a brief description of the problem will be highlighted in the view box of the ACL screen. This will highlight the command and the parameters wherein the code failed. This can be utilized to figure out what went wrong with the command/script.
2) It can be used to validate the execution of scripts.
When running an ACL script, the script can be written to capture key information in the log. This is particularly effective with the classify and stratify commands. Using these commands, in the log, you can validate results or queries. For example, if you define a field, using a classify to demonstrate that the defined field worked effectively. By performing a CLASSIFY command to the screen, you can check to see that the DEFINE FIELD worked properly. In other words, suppose you define a field wherein you expect 25% of the population to fit criteria 1, 50% to fit criteria 2, and 25% to fit criteria 3, by performing a CLASSIFY you can check to see if the results matched the expectations. If you perform your classify and discover that 100% of the records hit criteria one, then you are pretty confident that something was wrong with your criteria definitions and needs to be revised. In this scenario, you would have zero confidence in your results. Similarly, you can use the STRATIFY command, printed to screen, to check various values and ensure that the script is working. While these values will not be shown, they will be captured in the script as follows:
@ STRATIFY ON Date SUBTOTAL Date FREE -20000,0,20000,40000,60000,80000,100000,150000,200000,250000, TO SCREEN
22:31:46 - 12/16/2008
<<< Graphable Data >>>
Page ... 1 12/16/2008 22:31:46
Produced with ACL by: texasacl user group
<<< STRATIFY over -20,000-> 250,000 >>>
>>> Minimum encountered was -20,080,626
>>> Maximum encountered was -20,080,623
Date Count <-- % % --> Date
< -20,000 425 100.00% 100.00% -$8534,265,219
-20,000 -> -1 0 0.00% 0.00% $0
0 + 0 0.00% 0.00% $0
425 100.00% 100.00% -$8534,265,219
3) It can be used as the foundation of a discernable workpaper.
Finally, one of the best uses of the ACL log is to preserve the details performed on the data in a script or in ACL. When I write scripts, I will generally use the following commands:
DELETE LOG filename.log OK
DELETE filename.lix OK
SET LOG filename
SCRIPT Commands
SET LOG
This will create a log called "filename." The log will preserve all of the actions performed from start to finish. Using this technique one can show the activities of a script. In the ideal script, the script will include an IMPORT command wherein the data is loaded as well as every command that leads to the ultimate output file. This provides a detailed record capturing every command or action performed on the data leading to the conclusion. By capturing every command/function/filter/action performed on the data from loading the data to the final result, one has the best proof that the results are reliable.
One of the advantages of doing this is that is ensures that one can recreate the results and answer questions about the methodology. One of the first projects I worked on, I reached a certan conclusion. Six months later, somebody asked my manager about my conclusions. I went back into ACL, an couldn't determine the exact logic that utilized. I couldn't tell my manager if I had taken into consideration certain criteria that were now deemed crucial. If I had captured the results in a log file,I would have been able to answer my managers questions.