You are on page 1of 119

ACL 101 -

FOUNDATIONS
Zahid Hilmi
Technology, Advisory & Enablement
Introduction

“ Data Concepts

Best Practices

Question & Answer

2
Learning Objectives
At the end of the course, you will be able to:
• Understand the basic use of ACL Analytics
• Importing data source into ACL analytics
• Prepare imported data
• Analyze data to achieve data analysis objectives
• Report exceptions

3
1 Introduction
Introduction of ACL
Analytics
What is ACL™ Analytics? Why uses ACL™ Analytics?
▸ Comprehensive Data ▸ Ease of Use
Analysis Tool
▸ Read-Only
Who uses ACL™ Analytics?
▸ Mainframe Data
▸ Auditors – Internal & External
▸ Functions
▸ Fraud Examiners
▸ Log File
▸ Operational Departments
▸ Compare Data from Different Systems
▸ Most industries
▸ Companies of all sizes ▸ Analyze Complete Data Sets

▸ Government Agencies ▸ Fast Processing


– Federal & State ▸ Automate Analytical Procedures.

5
The impact of ACL Analytics
used
Value Proposition Intended Purpose

Validate effectiveness of • Proactively identify control failures & weaknesses to minimize their
Internal Controls financial impact
• Analyze business data to detect fraud, errors and anomalies.
• Improve enterprise-wide risk management
Drive Down Cost of • Increase business process transparency – create a solid foundation for
Regulatory Compliance reliable financial reporting.
• Enhance audit coverage, reduce audit cycles, & minimize impact on
resources.
• Provide credible attestation evidence
Enhance Business • Improve operational effectiveness & efficiency
Performance & Bottom- • Minimize fraud, risk, loss, & revenue leakage
Line Results • Improve revenue management & cost recovery

6
The Enabling Technologies of
ACL Analytics
Enabling Technology Detail

Enterprise-Wide • Independently access & test unlimited data volumes


Data Testing • Utilize one interface for analysis of all enterprise data
• Maintain accuracy & integrity of source data (read-only)
• Reduce reliance on IT and get immediate, direct data access
Powerful Analytics • Sophisticated analytics for advanced analysis & reporting
• Identify patterns, trends, anomalies, & gaps
• Automatic log provides comprehensive audit trail for reporting & use
in working papers

Continuous Monitoring • Efficient, repeatable, automated analytics & timely results


• Automated continuous controls monitoring of high-risk processes to
meet business & regulatory objectives
• Flexible, scalable, sustainable technology solutions

7
Non-Unicode VS Unicode
Non-Unicode Unicode
Unilingual (English only Data) Multiple Languages

Can read and write single-byte Can read and write both double-
character sets byte or single-byte character sets

Drawbacks of the Unicode edition:


• Larger data file sizes 
• Possible slower performance 
8
ACL Analytics Environment

9
Commands – Sub Files
• AR_2013 contains data for
the full year but analysis is
to be performed on Q1 data Project

• Use the Extract command to AR Audit 2013.acl


create a sub-file containing
129KB
Q1 data
AR 2013.dat AR_2013
• Subsequent analysis will be
faster on the smaller sub-file
32KB

• ACL™ Analytics commands AR Q1 2013.fil AR_Q1_2013


that create new tables always
create new sub-files with
.FIL extensions

10
Basic Workflow

You can access a wide variety of


file types, databases, and cloud
data sources with Analytics.

11
2 Data Concepts
 Data is meaningless until
context has been applied to it.

“  Field types apply context to


correctly interpret data.

13
What does this string of data represent?

09082021
Field Name Field Type Interpretation Detail
Account Number Character 09082021 Leading 2 zero retained.
Invoice Amount Numeric 9,082,021 Leading 1 zero dropped
Without decimals.
Invoice Amount Numeric 90,082.21 Leading 1 zero dropped
With decimals.
Invoice Date Datetime Sep-08-2021 North American interpretation
(MMDDYYYY)
Invoice Date Datetime Aug-09-2021 European interpretation
(DDMMYYYY)
14
Differentiating between the data types

15
Qualifying Data

Qualifier Order of Operations (BODMAS)


1. Char = ‘’XXX ’’ (Double 1. Brackets
Quote) 2. Orders (powers and roots)
2. Num = 999.99 3. Division
3. Date = `YYYYMMDD` (Re- 4. Multiplication
verse Quote) 5. Addition
4. Logical = T/F 6. Subtraction

16
Data Storage
Field Byte

Record
Number

Record

How many fields are there?


How many records are there?
How many trailing blank spaces are there in the invoice number on record five?
How many leading blank spaces are there in the invoice amount on record two?

17
Data Storage
 Files, Records, Fields & Bytes Field Byte

Record
Number

Record

 Record Layout
Field Name Data Type Start Position Length Decimals Date Format
Vendor_No Character 1 5
Invoice_No Character 6 15
Invoice_Date Datetime 21 10 MM/DD/YYYY
Invoice_Amt Numeric 31 12 2
Product_No Character 43 9
18
The Launcher

1. Organization Selector
2. Toolbar
3. Recent Analytics Files
4. Open
5. Create
6. Samples Files

19
User Interface

1. Title Bar
2. Main Menu
3. Toolbar
4. Navigator
5. Command Line
6. Filter & Quick Search
7. Index
8. Display Area
9. Status Bar

20
3 Best Practices
File Organization
 Organize your hard drive by creating
a new Windows folder for each new
ACL™ Analytics project.
 The location of your ACL™
Analytics project is the Default
Working Folder for that project.
 New files created by ACL™
Analytics as a bi product of your
analysis will be stored automatically
in the Default Working Folder.

22
Best Practices

• For consistency, develop best practices for ACL™ Analytics


usage within your organization
• ACL™ Certified Trainers and others have developed many
best practices, including:
• File organization
• Naming conventions

23
Best Practices

24
Best Practices

25
Naming Conventions
 Develop consistent naming conventions to be used by all ACL
users within your organization.
Item Type Example Description
Prepared table p_Sales2021Actual Created from original data in preparation for
analysis.
Temporary Table t_Sales2021SortAmount Not required for final results.
Result Table r_Top10Customers Contains the result of test.
Filter f_InvoicesOver10k Named filter for future use.
Computed Field c_SalesTax The result of a calculation.
Variable v_tablename A user defined variable.
Source table s_Payroll A source table that you import into
your Analytics project
26
Phases of Data Analysis

Plan – Consider the remaining four phases

Import – Obtain the data and create table layouts


PIP Prepare – Test for integrity and prepare for analysis
AR
Analyze – Perform audit / analysis tests

Report – Send exceptions to printer or export to another file


format
27
Using Launchpad

28
4 Importing Files
Import File - Excel

File Name – Demo Training Data - Credit_cards_metaphor.xls

1. Import Excel
• Select worksheet to import
• Enter the starting line to be import
• Use first row as Field Names, and select entire Excel Worksheet
• Check Field Properties

30
Import File - Delimited

File Name – Demo Training Data - delimit.dat

1. Import Delimit File


• Check Field “Type”
• Full Name, Full Address, Postcode, Year, Amount
• Tools > options > Date and Time > Date Display Format (it doesn’t change
the data; it changes how the data is displays in screen)

31
Import File – Report Image
File Name – Demo Training Data - Report.txt

1. Import Single-line Report

Field to Import:
1. Product Number
2. Product Description
3. Quantity
4. Unit Cost
5. Total Cost

32
Import File – Report Image
File Name – Demo Training Data - Puchord.txt

2. Import Multi-line Report

Field to Import:
1. Po_Num 6. Purc_Rep
2. Vend_No 7. Deposit
3. Supplier 8. Other_Payments
4. Division 9. Contract_Amt
5. PO_Date 10. Variance

33
Import File – Report Image
File Name – CredLim.txt

3. Import Multi-Line report

Field to Import:
1. Name
2. Street_Add
3. City
4. State
5. Zip
6. Cust_No
7. Comment
8. Limit
34
Import File – PDF
File Name - Invoice_Number_Report.pdf

1. Import PDF (Invoice_Number_Report.pdf)


• Before import, need to confirm the date format
• Wrong Date Format. Double check.
Step to Fix:
1. Go to Table Layout either from menu or icon
2. Double click InvoiceDate and change the format from
YYYY/DD/MM to YYYY/MM/DD
3. Click "Accept Entry“
• Change Invoice Amount Format -9,999,999.99
• Need to re-add the column to refresh the format

36
Import File – Fixed-Width
File
1. Import (ACL101 Foundations 1-5\Case Study – Taft Industries\InventoryBoston.dat)
• Import Choose Skip to finish (to manually identify the Fixed-Width file)
• Based on the record layout, identify the data start/length
• Count

Field to Import:
1. Product Class (1st 2 Digits 6. Unit_Cost
from Product Number) 7. Sales_Price
2. Product Number 8. Review_Date
3. Product Description 9. Quantity on Hand
4. Location 10. Inventory Value At Cost
5. Product Status

37
Import File – Fixed-Width
File
2. Import InventoryChicago.dat, InventoryDenver.dat and
InventorySanFransisco.dat
• Import Choose Skip to finish (to manually identify the Fixed-Width
file)
• Based on the record layout, identify the data start/length
• Count

Field to Import:
1. Product Number 6. Unit_Cost
2. Product Class 7. Sales_Price
3. Product Description 8. Review_Date
4. Location 9. Quantity on Hand
5. Product Status 10. Inventory Value At Cost 38
What is ODBC?

Open Database Connectivity (ODBC)

• standard database access method developed by the SQL Access group.


• to allow access to any data from any application, regardless of which database
management system (DBMS) is handling the data.
• For this to work, both the application and the DBMS must be ODBC-compliant
• Analytics is ODBC-compliant.
• To use it on a DBMS that is also ODBC-compliant, an ODBC driver is required.

39
Overview of the Data Access
Window
1 : Connection
2 : Search tables
3 : Available table
4 : Staging Area
5 : Filter panel
6 : Import preview
7 : Field configuration
8 : SQL mode

40
Import File – ODBC
File Name - TaftDatabase.mdb

1. Import using ODBC (ACL101 Foundations 1-5\Case Study - Taft Industries\


TaftDatabase.mdb)

• Select Machine Data Source = MS Access Database


• Select database "\ACL101 Foundations 1-5\Case Study – Taft
Industries\TaftDatabase.mdb"
• Select CustMast, Next
• Save table as CustMast

41
Exercise
Case Study Taft Industries:

• Create Project in the same path folder, name the project as


Taft_Industries
• Click Application > CaseStudyDataLoad > Non-Unicode
• Import ALL files

42
5 Extra Command
Verify File – Badfile
1. Badfile's Table (Verify)
• check backend records vs acl table

2. More advanced users can use the hexadecimal sequence to quickly identify
where something went wrong. In hexadecimal, ASCII characters are grouped
by similarity and function. For example:
• Hex codes in the range 0 to 1F are non-printable characters.
• Hex codes 30 to 39 are digits 0 to 9.
• Hex codes 40 to 5A are upper case letters.

44
Sequence

1. To check any possible non-sequential available


2. Will generate all non-sequential available
3. Can be used to check non-sequence invoice ID based on invoice date

4. Go to – Accounts_receivable_audit (Folder) – Trans (Table) – Invoice Number


(Field)

45
Gaps

1. To check any possible duplicates available


2. Will generate all gaps available
3. Can be used to check gaps between invoice ID

4. Go to – Account_Payable(Folder) - APINVOICE (Table) – API_PO_Number


(Field)

46
Duplicates

1. To check any possible duplicates available


2. Will generate all duplicates available
3. Can be used to find duplicates on column such as duplicate ID

4. Go to - Payroll_analysis (Folder) – Payroll (Table) – Employee Number (Field)

47
6 Filtering
Quick Filtering
We can do simple “Quick Filter”
1. Select any cells/field
2. Click on Right Click
3. Select desired filter needed

49
Quick Filtering
We can do simple “Quick Filter”
1. Click fx
2. Insert desired filter

50
Exercise - Filtering
Demo Training Data – Account Receivable Audit - AR
1. Checking invoice date which done after due date
2. Check how many days between due date and invoice date
3. How much amount is impacted
4. How to extract to a new Table
5. Find how many IN in the table
6. Find IN which is TransAmount more than 1000
7. Find IN which is more than 1000 and in Quarter 4, 2014 in InvoiceDate
8. Check Invoices (IN) and amount is more than 100 or CreditNote (CN) and
amount less than -100 and in Quarter 4, 2014
9. Export result to excel

51
7 Extract
Record
▸ Will extract all column even
though the column has been
removed
▸ If let say the original column = 10,
we remove 5 column = 5, will
extract all 10 column

53
View
▸ Will only extract all the available
column in the view mode
▸ Will not extract the unavailable
column in the view mode
▸ If let say the original column = 10,
we remove 5 column = 5, will
extract all 5 column

54
Fields
▸ Will only extract all the selected
column
▸ Will not extract the un-selected
column
▸ If let say the original column fields
= 10, we select 5 column = 5, will
extract all 5 column
▸ To select multiple column, click
Ctrl + column needed

55
THANKS
!
Any questions?

56
8 Computed Fields
Computed Fields

58
Exercise
1. Demo Training Data – Account Payable - AP_Trans
• Check Invoice Amount calculation is correct or not

2. Demo Training Data – Account Receivable Audit - Trans


• Check Invoice Amount calculation is correct or not
• Create a computed field to do calculation checking
• Create a computed field recalculate
• Create a computed field to calculate the variance
• Extract the result

59
Exercise - Conditional Field
Project: ACL101 Demo Training Data
Table: Account Receivable - AR

1. Create new column for Transaction type Full Description (Conditional


Expression)

2. Create a computed field (c_TxnTypeDesc)


• Type = “IN” - (INVOICE)
• Type = “PM” - (PAYMENT)
• Type = “CN” - (CREDIT NOTE)
• Type = “TR” - (TRANSFER)

3. Do Classify Command
60
Exercise - Conditional Field
Project: ACL101 Demo Training Data
Table: Inventory review - Inventory

1. Create new column for Location Full Description (Conditional


Expression)
2. Create a computed field (c_LocationDesc)
• 01 – HQ • 04 – Rawang
• 02 – Muar • 05 – Ipoh
• 03 – Kuantan • 06 – Seremban
3. Do Classify Command
• Identify location with the highest inventory on hand ?
• Identify location with the highest inventory market value ?

61
Exercise
Project: ACL101 Demo Training Data
Table: Payroll analysis - Empmast

Objective:
Management want to recognize long service awards to their employees. The Year of
Service Award are reviewed as of 31 Dec 2014.
Question: Identify which group that will received the most amount of bonus for
the period?

Year of Service Award as at 31-Dec-2014


----------------------------------------
Less than 10 years -> No Award (2 months bonus of Pay Per Period)
Between 10 – 15 years -> Bronze (4 months bonus of Pay Per Period)
Between 16 – 20 years -> Silver (6 months bonus of Pay Per Period)
Between 21 – 30 years -> Gold (8 months bonus of Pay Per Period)
More than 30 years -> Star (12 months bonus of Pay Per Period) 62
Exercise
Additional:

1. What if we want to group the staff based on their year of service ?

2. How to get the max and min value for use in stratify ?

63
Exercise
Project: ACL101 Demo Training Data
Table: Empmast

1. Create a new field for insurance premium based on age and pay per period

Age Group Insurance Premium


• 20-30 10% of pay per period
• 31-40 12.5% of pay per period
• 41-50 15.25% of pay per period
• >50 17.5% of pay per period

2. Which Age Group that have highest payable insurance premium as of 31 Dec 2014?

64
Exercise (Empmast)
Project: ACL101 Demo Training Data
Table: Empmast

1. Management request for an output with


• Emp_No
• Full Name - lname,fname (Hairi,Mohd)
• Age
• Date Hired
• Year of service
• Award Type
• Department
• Loyalty Bonus

65
Exercise
Project: ACL101 Demo Training Data
Table: Empmast

Additional Request:

1. Sort by Work Department then Award Type

2. Multiple grouping:
Work Department and Award Type
Subtotal on LoyaltyBonus

66
ACL Functions

Conversion Function ACL Function


Char -> Num VALUE ()
Num -> Char STRING ()
Date -> Char DATE ()
Char -> Date CTOD ()

67
Exercise
Project: ACL101 Demo Training Data
Table: AR

Business Rule : Invoice cannot be done on weekend

1. Check invoices done on weekend – use quick filter Saturday & Sunday

Use Function:
• DOW (date) – string to date
• DATE() – date to string
• CDOW (date, length) – MON, TUE, WED, THU etc
• CMOY (date, length) – JAN, FEB, MAC, APR etc
• SPLIT(string , separator , segment <,text_qualifier> )
68
9 Grouping Data
ACL Commands

Command Field Type Description No. of Field

CLASSIFY Char/Num Groups multiple occurrences of the same 1


character/numeric value found within one field.
STRATIFY Num Groups numeric data into strata ranges. 1

SUMMARIZE Char/ Groups multiple occurrences of the same 1+


Num/ character/numeric/date value found within multiple
Datetime fields.
CROSSTAB Char Groups multiple occurrences of two or more-character 1+
values into a pivot table.
AGE Datetime Groups datetime data into aging ranges. 1

70
1
0 Combining Data
Combining Data
Analytics allows you to analyze data in only one table at a time. Because of this,
you may have to combine data from two or more tables into one table before
performing your analysis.
To combine tables Use

vertically APPEND

EXTRACT/APPEND

EXPORT/APPEND

horizontally DEFINE RELATION

JOIN

72
Combining Data
10.1
APPEND
Append
The APPEND
command creates a
new Analytics table by
appending two or more
tables together.
Appending (vertically
stacking) means to add
one group of records to
the bottom of another
group of records.

74
Practice
Project: Taft_Industries
Table: InventoryBoston, InventoryChicago

1. Append InventoryBoston and InventoryChicago into one table


named p_InventoryEastRegions. 
2. Run Verify on the new table. If each table verified without error prior to
appending, the output table should also verify without error. If errors occur, the
data did not align properly.
3. Confirm that the inventory total value (305,235.49 and 93,434.28) and record
counts (61 and 34) from the two tables reconcile to the appended file.

75
Exercise
Project: Taft_Industries
Table: InventoryDenver, InventorySanFrancisco, p_InventoryEastRegions

1. Append InventoryDenver, InventorySanFrancisco,


and p_InventoryEastRegions to a new table, p_InventoryAllRegions.
2. Run the Verify command on the appended table to ensure there are no errors.
3. Ensure that the record counts and inventory values from the three separate tables
reconcile to p_InventoryAllRegions.

76
THANKS
!
Any questions?

77
Combining Data
10.2
RELATION
Relations
The DEFINE RELATION command combines two tables horizontally by creating a virtual
link on a common key field. This allows you to add fields from one table to the view of the
other.

Parent and child


When relating two tables, one table is known as the parent and the other as the child:

Table Description Result


Parent Table that is open when creating the Child table fields are available in the
relationship parent table
Child Table that you link to the parent table Fields are made available to the parent

79
Direct Relationship
If the two tables you want to link share a common key field, you can use the key
field to create a direct relationship between the two tables.

80
Indirect Relationship
If the two tables you want to link do not share a common key field with each
other, they might each share a common key field with another table. If this is the
case, the third table can be used to link the two tables indirectly.

81
Practice
Project: Taft_Industries
Table: Sales2012, ProductClass

1. Filter out only Sales in 2012 and extract as p_Sales2012Actual 


2. Relate the p_Sales2012Actual and ProductClass tables so that ProductClass'
Class_Desc field can be added to the view.
3. After adding Class_Desc to the view:
• How many information are blank?
• Which product classes do they belong to? ​

82
Practice
Project: Taft_Industries
Table: p_Sales2012Actual, CustMast

1. Add the credit limit from the CustMast table to the p_Sales2012Actual table.


2. Are there any transactions over the credit limit?
3. If so, which customers are they associated with?

83
How DEFINE RELATION
matches records
• DEFINE RELATION uses a many-
to-one process.
• When the parent key field contains
duplicate values (many), each
duplicate is only matched to the first
occurrence (one) of the
corresponding child key field value.
• If there are no duplicates in the
parent table,
DEFINE RELATION automatically
uses a one-to-one process.

84
Combining Data
10.3
JOIN
Matched Primary and
Secondary - First Secondary
Match

86
Matched Primary and
Secondary - All Secondary
Match Payroll
Emp Num Gross
Matched
EmpMast
Emp Num Pay per
Pay Period
001 $1850 001 $1850

Not Included 002 $2200 003 $2800


003 $1000 003 $1550
003 $1800 004 $1975
Not Included

Payroll EmpMast
Emp Num Gross Pay Emp Num Pay per Period
001 $1850 001 $1850
003 $1000 003 $2800
003 $1800 003 $2800
003 $1000 003 $1550
003 $1800 003 $1550

87
Unmatched Primary

88
All Primary & Matched
Secondary

89
All Secondary & Matched
Primary

90
All Primary & Secondary

91
Comparing Join & Relations
Objective JOIN RELATIONS
Table created Physical (new table and .FIL file) Virtual (links existing tables)

List primary and secondary records Matched Use a filter (key fields equal) to
where the key fields match in both
tables ✓ identify and display the matched
records ✓
List primary records where the key Unmatched Use a filter (key field not equal) to
field does not have a match in the
secondary table ✓ display the unmatched records

List primary and secondary records Matched + Include All Equivalent (Default Relations)
where the key fields match in both Primary
tables and include all primary records
where the key field does not match ✓ ✓

92
Comparing Join & Relations

Objective JOIN RELATIONS


List primary and secondary records Matched + Include All No equivalent
where the key fields match in both Secondary
tables and include all secondary
records where the key field does not
match ✓ ✗
List primary and secondary records Matched + Include All No equivalent
where the key fields match in both Primary + Include All
tables and include all primary and Secondary
secondary records where the key fields
do not match ✓ ✗

93
Exercise (One-to-One
Matched Join)
Project: Taft_Industries
Tables: ArAging123111, ArAging123112

1. Join the ArAging123111 and ArAging123112 tables to identify customers


who have an AR balance in both 2011 and 2012.
2. Name the output table r_ArBalanceBothYears.

94
Exercise (One-to-One
Unmatched Join)
Project: Taft_Industries
Tables: ArAging123111, ArAging123112

1. Join the ArAging123111 and ArAging123112 tables to identify customers


who have an AR balance in 2011 but no balance in 2012.
2. Name the output table r_ArBalance2011Only.

95
Exercise (One-to-One
Matched Include All)
Project: Taft_Industries
Tables: ArAging123111, ArAging123112

1. Join the  ArAging123111 and ArAging123112 tables using the Matched +


Include All Primary + Include All Secondary options.
2. Name the output table r_ArBothYearsMatchedAll.

96
1 Introduction to
1 Scripting
What is Scripts?
A script is a series of instructions used to automate work or a series of ACL
commands stored as a unit in an ACL project. A script may be something as
simple as running a single command or as complex as importing, preparing,
and analyzing data.

Scripting will increase the consistency, efficiency and flexibility of your


analysis. It'll free up time so that you can extend your lunch break, focus on
bringing value, and make yourself sought after within your organization.

Scripting Resources:
• ScriptHub
• Analytics Scripting Guide

99
Benefits of Scripts
• Automate processes
Perform repetitive routines
• Continuous monitoring
• Increase efficiency
Time savings increase as routines become more complex
• Improve accuracy
Less risk of errors compared to a manual approach
• Schedule processes
Run on a schedule outside of working hours
• More complex analysis
Perform analysis that cannot be done manually

100
Analytics Script Syntax
 Components of an Analytics script:

1. Comments
2. Whitespace
3. Commands

101
Command Syntax
 Command syntax is comprised of three elements:

1. Command name
First entry in command line (dark blue)
2. Parameter name
Identifies the elements of the command (aqua)
3. Parameter value
The value assigned to each parameter (black)

CLASSIFY ON CustoNum TO SCREEN

CLASSIFY ON CustoNum SUBTOTAL TotalAmt SalesTax TO SCREEN

102
Script Syntax Rules & Best
Practices
 Most commands must be contained within one line - unless otherwise specified,
don't try to separate them onto different lines. Having a tough time reading a long
line of script? Turn on Word Wrap

 Script in the same order that elements are written to the log - this makes it easy
for others to understand your script logic and makes it easier to identify syntax
issues if the script isn't working properly.

 While Analytics script syntax is not case-sensitive, we recommend using upper


case for command and parameter names and lower or proper case for parameter
values.

103
Comments
• Comments are an essential component of a script
• Comments provide:
• Context and meaning
• A means by which others can review syntax for validity
• Version control
• There are two types of comment:
• Single line (cannot be wrapped)
• Multi-line (must be wrapped)

104
Comments
• Header comment:
• Multi-line
• At the top of a script
• Identifies key information about the script

105
Comments
• Comment block:
• Multi-line
• Throughout the script
• Identifies key elements (blocks) of commands within the script
• Single line comments within a comment block

106
ScriptHub
• Click on Script
• Click on the red box

107
ScriptHub
• Go to this link ScriptHub Catalog (highbond.com)
• Click desired function available
• Copy link and paste into ScripHub content link and Done

108
Exercise
Project: Taft_Industries
Table: p_ActualSales2012
Script: Top8Customers

Objective: 
Identify the eight customers with the largest sales volume (top 8 customers by sales
volume)

109
Exercise
Project: Taft_Industries
Table: Sales2012
Script: IncorrectSalesAmt

Objective 1:  Create a new script, IncorrectSalesAmt, which recalculates the total


amount paid per transaction based on ordered quantities and identify any issues
where the recalculated amount varies from the sold amount.

Objective 2:   For incorrect sales amounts, calculate the difference between what
was charged and what should have been charged.

110
Exercise
Project: Taft_Industries
Table: Sales2012
Script: WeekdayTrans

Background: Your organization doesn't conduct business on weekends so there


shouldn't be any invoices issued on a Saturday or a Sunday.

Objective: Create a new script, WeekdayTrans, which identifies issues where


invoices were issued on either a Saturday or a Sunday since these are likely worth
investigating further.

111
1 Additional
2 Command
Fuzzy Duplicates

• To detects nearly identical values (fuzzy duplicates) in a character field.


• For example, the following four values may all be the same company:
o Intercity Couriers
o Inter-city Couriers
o Intercity Couriers Inc.
o Intrecity Couriers

113
114
Benford
• Benford’s Law is an observation about the frequency distribution of leading
digits in many real-life sets of numerical data.
• To counts the number of times each leading digit (1–9) or leading digit
combination occurs in a field, and compares the actual count to the expected
count. The expected count is calculated using the Benford formula.
• Benford analysis is use for testing numeric data composed of "naturally occurring
numbers", such as
 Accounting amounts,
 Transaction amounts,
 Expenses, or
 Address numbers.

115
Benford
• Guidelines for identifying numeric data that is suitable for Benford analysis:
 Size of the data set The data set must be large enough to support a valid distribution.
Benford analysis may not give reliable results for fewer than 500 records.
 Leading digit requirement All numbers from 1 to 9 must have the possibility of
occurring as the leading digit.
 Leading digit combination requirement All numbers from 0 to 9 must have the
possibility of occurring as the second leading digit, and as any additional digits being
analyzed.

116
Benford

 Constrained data Numeric data that is assigned or generated according to a


pre-ordained pattern is not suitable for Benford analysis. For example, do not
use Benford to analyze:
- sequential check or invoice numbers
- social security numbers or telephone numbers that map to a specific
pattern
- any numbering scheme with a range that prevents certain numbers from
appearing
 Random numbers Numbers generated by a random number generator are
not suitable for Benford analysis.

117
118
Outliers
• Use the outlier feature in Analytics to identify records that are out of the ordinary
and could require closer scrutiny.

What are outliers?


• Outliers are records with numeric amounts that differ significantly from the
numeric amounts in the records that they are grouped with.

Example of an outlier in a group


• In an accounts payable file, invoices from a particular company typically range
between $500 and $1,000. However, one invoice is for $8,500.

• The outliers calculation uses population standard deviation.

119
ASSURING LOCAL SUPPORT
RESPONSE TIME
Assuring provides 4 support channels to its customers as SEVERITY LEVEL DEFINITION RESPONSE TIME
follows: 1. System Down Server Related Immediate
2. Critical Business outage or significant customer Within 1 hour
impact that threatens future productivity 
SERVICES HOUR | 9:00 AM to 6:00 PM | Monday through 3. Urgent High-impact problem; there is a time- Within 2 hours
Friday, except holidays sensitive issue important to long term
productivity that is not causing an
immediate work stoppage; or there is
significant customer concern.
support@assuringgroup.com 4. High Important issue that does not have Within 4 hours
significant current productivity impact
5. Medium Issue requiring no further action beyond Within 8 hours
monitoring for follow-up, if needed
011 1565 2000 (Primary) 6. Low Request for information only Within 1 business
011 1575 2000 (Secondary) day
COVERAGE
HOURS

WhatsApp Chat Agent COVERAGE TYPE SUPPORT


Chat case submission (WhatsApp
Chat) 9.00 AM – 6.00 PM
Monday through Friday, except
General Line Email Support Case Submission
holidays
03 3855 0225 Phone Support
System Down & Critical Support Case
Scenario 24 x 7

Site: https://www.assuringgroup.com/contactus/ 120


THANKS
!
Any questions?

121

You might also like