This presentation will introduce a simple but powerful concept called the “One-Time Methodology” for encapsulating data in applications. Extensive SAS/AF® development experience is not required, though it will help to have had exposure to the basics of SAS/AF and SCL (SAS Component Language). The methodology can be applied in other application languages.
2. Introduction
The YTSS (Youth Tobacco Surveillance
System) started in 1998
y )
YTS = Youth Tobacco Survey
GYTS = Global Youth Tobacco Survey
Since 1998, over 1,000,000 surveys
have b
h been processed f 35 states and
d for t t d
100 international sites
3. The Challenge
10 States (1998) to 30 States (1999)
2 000 to 3 000 manually audited base
2,000 3,000
SAS code
YRBSS (Youth Risk Factor Behavioral
Surveillance System) Model
4. Finding a Starting Point
First SAS/AF Application
Similar YRBSS SAS/AF Application
New base SAS Code
5. The “One Time” Rule
Where should information be once
defined??
Short Info Long Info
Non-Modifiable Enumerated Standardized
Constants
C t t SAS D t
Datasets
t
Modifiable FRAME Customized
Variables
V i bl SAS D t
Datasets
t
6. Enumerated Constants
Using a specific name, defined once, so
that a variable is referenced
Tip: Don’t assign values in declarations
Example: Tab names for Tab Layout
Preserves the “one-time” rule
8. Frame Variables
Allow user to define value
Provide error checking for data entry
Example: Name of “Level”
Preserves “one-time” rule
P “ ti ” l
9. Customized SAS Datasets
Large amounts of information, beyond a
screen
Microsoft Excel typically better than
Access
Example: Regional Layout
Preserves the “
P th “one-time” rule
ti ” l
10. Making the Application Work
How to Access Datasets – use the
datasets and SCL variables to submit
code
How to Check Data Integrity – check
data as close to the source as possible
11. Making the Application Work
How to Prepare to Submit – check
combinations before running a p
g process
How to Monitor Processes – Save the
output and log files, and track overall
files
process in a log dataset
12. Generalized Lessons…
Understand the user objectives in terms
of both functionality and also in terms of
deliverables.
Start with what works (encapsulate
success).
As the application changes, continually
apply the “one-time methodology”.
Standardize all data possible.
13. (more) Generalized Lessons
Allow users to modify brief information
on screen, and complex information
within datasets.
Expect the application to monitor data
integrity as well as processing
efficiencies.
Use the methodology outside of
SAS/AF.