Entering information in a project programming tracker is one of the menial tasks taking up time which causes hindrance for project leads to get accurate and up to date information of the project. So how about getting it done within a click? This presentation discusses a tool to solve this problem. QCCheck, a macro utility in conjunction with the power of ODS creates a fully automated project tracking spreadsheet to give a single shot view of any project in real time. This utility reduces the dependency on manual data and saves programmer’s precious time with the important features such as QC pass/fail results highlighted, hyperlinks for code/table/dataset and timestamps of QC & batch submit.
Bag it Tag It Put it : Project Tracking One Click away
1. Bag it, Tag it & Put it:
Project tracking one click away!
Abhishek Bakshi
Cytel , Pune
The views expressed in this presentation are my own and do not
necessarily represent the views of Cytel Statistical & Software Limited.
2. Objectives
• Need of Automated Tracking sheet
(Drawbacks of Manual Project Tracking)
• Overcome the Manual tracking drawbacks
• %QCCheck utility & ODS Tagset.ExcelXP
• ProjectTrackit.sas utility
• Benefits & Future enhancements
4. Drawbacks of Manual Project Tracking
• Project Lead
Please
After some Close the
Can you all time tracking
update sheet as I
tracking need to
sheet ? check QC
Status?
8. %QCCheck macro utility
• Gathers all PROC COMPARE results in one common
SAS dataset (QCStatus.sas7bdat)
• Uses system define macro variable &SYSINFO to
gather the information
NEED OF %QCCHECK
• Output can be lengthy
• Minor differences may not be captured in tracker
&SYSINFO
• Result of PROC COMPARE is stored in the system
defined macro variable &SYSINFO.
• &SYSINFO value is valid until the next data step only!
9. Usage of QCCheck utility
Eg 1: Validation with single PROC COMPARE
QCStatus
.sas7bdat
Eg 2: Validation with multiple PROC COMPARE in same code
QCStatus
.sas7bdat
10. Usage of QCCheck utility
Eg 3: Displays multiple types of compare discrepancies in one
record
QCStatus
.sas7bdat
Eg 4: Single shot view of complete QC Status
QCStatus
.sas7bdat
11. ODS TAGSET.EXCELXP
• ExcelXP tagset generates XML output
• XML files can be opened in Excel
(Microsoft Excel 2003 & later )
• Create hyperlinks
• Create Rows highlights
• Create Conditionally shaded cells and
• Can be used to generate fully automated powerful
spreadsheet
12. ProjectTrackit*:
Automatic project tracking utility
(*ProjectTrackIt utility is created on Windows SAS 9.2 platform)
13. ProjectTrackit utility
• Once the ProjectTrackIt.sas is executed
• Asks user/lead to enter allocation manually *
* (Happens when code is run for the first time)
14. ProjectTrackit utility
• Based on the allocation entered*
1) .sas files for each allocation is created
2) header information is inserted in each code, based
on the information entered
•Eg: qc-ae.sas
* (Happens when code is run for the first time)
15. ProjectTrackit utility
* (After the first run, it checks whether QCStatus datasets
exists)
•It uses QCStatus SAS dataset generated from
%QCCheck to get most updated QC Status
• Uses ODS TAGSETS.EXCEL XP to arrange the
output into a fully dynamic project tracking XML
sheet
16. Output of ProjectTrackit ProjectTrackit.XML
Grey Shade:
Required Fields
Blue Text: Empty
Clickable
Hyperlinks
Red Shade:
Hyper Linked
Fields having
errors
17. Important features of ProjectTrackit
• Single view of complete project status
• Codes/Datasets/Outputs can be directly open from tracking
sheet
• Gives Last Modified date of codes for both Developer &
Validator, (saves time of entering manually)
• Gives the information whether QC code is batch submitted
correctly (checks QC dataset is created after Developers
dataset)
• Displays the PROC COMPARE results, run time and
hyperlinked compare output(.lst file)
18. Before & After ProjectTrackIt
Before
(Manually
Entered sheet)
ProjectTrackIt
After
(Automated
Track sheet)
20. Benefits of ProjectTrackit
1. Fully Automated project tracking utility
2. Gives the most updated information of project
status at any given time
3. Gives single shot view of complete project status
4. Easy to maintain & manage, single click utility
5. Poor Programmer saves a lot of his time in
entering the information
22. Future Enhancements!
1. Utility to extract CRF Annotations from CRF to
place datasets/domains name in allocation sheet
automatically
2. Add Log Check column to check whether log is
error free
3. To automatically send email from SAS to
Developer/Validator to notify, if their QC status
fails
4. Further more!...
24. Thank you!
Any Questions?
Any Further suggestion for enhancement
will be deeply appreciated.
Editor's Notes
Compare The output from PROC COMPARE can be lengthy depending on the results. Output can show that the values are exactly equal, but there can be differences in formats or labels of the variables. Get tired of looking through pages and pages of PROC COMPARE output to check the results SYSINFO By checking the value of SYSINFO after PROC COMPARE has run one can determine exactly what is different in these two data sets.