Exposing a 4GL Property of the SM"' System
|
|
- Gwenda O’Connor’
- 5 years ago
- Views:
Transcription
1 Exposing a 4GL Property of the SM"' System Paul J. Waldowski Amdahl Corporation Abstract In today's data processing environments, software engineers are continually striving to exploit the fourth generation language (4GL) characteristics of programming languages available within the corrputing industry. One of the many capabilities 4GLs have over third generation languages is the ability to generate more source code from the input without recompiling any code. The generated source code can then be executed from the code which created it by sirrply invoking a built-in property of the language. This paper exposes this 4GL property of the sas'" System through the use of the sas'" Macro Language in a data-driven sas'" program. INTRODOCTION Increasing customer demands for complete, robust applications to meet a variety of business needs, has placed a serious strain on developers within the computing industry. This common problem grows in complexity when the data processing environment is not fully exploiting the underlying technological developments available in today's market place. The use of many traditional programming languages which lack features and functionality results in a failure to reduce the effort and cost of developing and maintaining business information systems. The purpose of this paper is to expose a 4GL property of the SAS~ System through the use of the SAS~ Macro Language in a data-driven SAS'" program. This will in turn provide an environment that allows developers to concentrate on the business rules to retain control of the growth process which governs mdssion critical systems. Moreover, ~he standard being rectified is exposure to an architecture using data- and eventdriven concepts which always foster completeness I but never closure. To accomplish this objective successfully requires a strategy that offers a paradigm enhancing innovation, one that dr'astically improves upon what developers are already practicing. This change entails simple invocation of a built-in property that 4GLs have over third generation languages. In the case of the SAS~ System, the built-in property being exploited is the SAS~ Macro Language. This part of the SAS'" System provides an interface which can evoke the code generated from the source code without recompiling any code. This property will become evident during the discussion of the supplied data-driven SAS~ program. Before explaining how this program uses the 4GL property, the underlying property of both second and third generation languages and even 4GLs will be addressed. By discussing unit record processing and its history, we will be able to further expose the 4GL property of the SAS~ System. Finally, some closing remarks will be presented. UNIT RECORD PROCESSING Over one hundred years ago, Herman Hollerith, a statistician with the U. S. Census Bureau invented a code for recording data which continues to affect 216
2 today's data processing environments. This code was initially used on strips of paper. However, for better durability and ease of handling, the paper strips were soon replaced by what were commonly referred to as a punched card. These punched cards of fixed size and length were also known as a unit record. This code on punched cards and the hardware designed to interpret and process unit records li~ted software development to production at a cumbersome level. These punch cards were primarily created on keypunch machines to produce software from both second and third generation languages. In addition, these cards were processed by hardware: read by card readers, fed into sorters, interpreters, and collators [1]. From this technology, mechanical failures like card jams led to the use of unit record representation on a terminal as one line across the screen. If one were to look at a screen of at least twenty lines on most terminals, we could theoretically call it a window. In essence, this collection of records and the ability of the terminal to toggle to another screen or even host multiple sessions contains the property known simply as file level processing. The advent of personal computers and the software associated with this phenomenon reinforced this relatively basic concept. It also provided software engineers with the hardware necessary to evolve from unit record processing to a file level process. Table 1 presents a list of each generation covered above. In addition, an example or two of a programming language from each generation and the hardware designed to primarily support the generation are listed. Each generation independently controls its own functionality and representation within a given programming language. In fact, any language must handling the entire application oriented character, field, record, the file. Generation Table 1. Language(s) 2nd assembler 3rd COBOL, C 4th SASI»I HURON FILE LEVEL PROCESSING be capable of spectrum of data, i. e. and especially Hardware card reader terminal personal computer It is the file and its underlying characteristics that offer the paradigm enhancing innovation of having the data generate the source code required to perform the process automatically. Some may contend that development of code in this manner is unnatural and not always simple to uncover. To these users of older generations, this author suggests that the opportunity to change their own paradigms is not only the basis for discovering better practices for today's business information systems but the cornerstone for any type of future system. Regardless of any systems complexity, it must be fundamentally handled at the file level. If for no other reason, the maintenance costs below this level have failed to meet customer demands in a timely effective manner. The paradigm being rectified is the alteration of the information flow within the enterprise from the use of punched cards to an architecture using data- and event-driven concepts which always foster completeness, but never closure. This new paradigm also forces each software engineer to look in a different direction for the information to solve the important problems. Once each software engineer is looking in a different direction, they will have no choice but to see things they had never seen before. 217
3 EXPOSING THE 4GL PROPERTY The generations of programming languages could be defined in terms of various features and capabilities each contains. However, the essence of this discussion is to examine the 4GL property of the SAS~ System in the program presented in APPENDIX A. This approach is taken to show that the development of 4GLs like the SAS~ System not only simplified the coding process to handle the entire spectrum of application oriented data, but led to the natural creation of output files which contained executable source code. These files could then become an integral part of the algorithm which generated this code if the programming language had the capability of storing and fetching the code without rewriting applications or recompiling code. Fortunately, the SAS~ System can build this executable source code as an external file of macro call statements. This file can then be invoked by a %INCLUDE statement of the SAS~ Macro Language from the SAS~ source code which generated the external file and execute a macro like the one presented in APPENDIX B. In APPENDIX A, we have the main SAS'" program. The function of this program is to clean up a graphics catalog of existing graphs which will be refreshed by a new set of graphs generated from an input file. This input file is interrogated within the process by searching for VOLUME SERIAL NUMBERS. Each volume found will be represented by a unique graph which can be generated by invoking a macro statement with the correct parameter. This macro statement is also generated from the main program and is stored in an external file. The external file is then invoked by the statement, %INCLUDE MACSTMTS; from the source program. This simple but elegant technique is known as the 4GL property of the SAS~ System. CONCLUSIONS This program, as developed and evaluated, is intended to enhance the capabilities of developers of business information systems. It has achieved this by handling the input to generate more source code without recompiling any code. This generated source code is now executable from the same code which created it and exposed the 4GL property of the SAS~ System. REFEm:NCES 1. D'Arco, Anthony, Fuori, William M., and Orilia, Lawrence, Introduction to Computer Operations, Second Edition, Prentice-Hall Inc., Englewood Cliffs, NJ, ACKNOWLEDGMENTS Many people have contributed to this paper in various ways, and their efforts and ideas are most sincerely appreciated. Finally, a very special acknowledgment is due to my wife, Paula, for being a great source of support, encouragement, and for her extremely careful editing of the manuscript, which led to numerous improvements in style. AUTHOR CONUCT Paul J. Waldowski Amdahl Corporation Chevy Chase Pavilion Suite Wisconsin Avenue, N.W. Washington, D.C (202) (202) VOICE FAX paul.waldowski@amail.amdahl.com 218
4 APPENDIX A., AVERAGE RESPONSE TIME PROGRAM ("A DATA-DRIVEN APPLICATION") GLOBAL VARIABLES: ASOFDATE, MEMBER, MVSLEVEL, SYSTEM, and WEEKDAY INPUT: SMF RECORD TYPE 74 (RMF) DD CARD, //PDB PROCESS: 1. CLEANS UP THE DAILY GRAPHICS CATALOG BY USING THE TODAY() FUNCTION WITH PROC GREPLAY 2. BUILDS A FILE OF SAS MACRO STMTS. THE NUMBER OF STMTS. GENERATED IS BASED ON THE NUMBER OF UNIQUE VOLUME SERIAL NUMBERS FILTERED FROM THE INPUT FILE WITH PROC SORT NODUP. 3. THE FILE OF MACRO STMTS. HAVE THE FOLLOWING GENERIC FORMAT: %AVGRSPMS(VOLSER='VOLSER') OUTPUT: FILE OF MACRO STMTS. CALLED BY THE %INCLUDE MACRO STATEMENT., OPTIONS NOCENTER DQUOTE; GOPTIONS site specific; %GLOBAL ASOFDATE MEMBER MVSLEVEL SYSTEM WEEKDAY; %LET MEMBER=MSVOLSER; DATA _NULL_; / create graphics catalog variables / CALL SYMPUT ('WEEKDAY',PUT(TODAY()-1,WEEKDATE3.»; / cleanup SAS catalog entries so new / / graphics output can replace / / existing graphs from last week / PROC GREPLAY IGOUT=&WEEKDAY.. &MEMBER NOFS; DELETE _ALL_ / obtain input records from //PDB / DATA TYPE74 (KEEP=TIME AVGRSPMS DEVNR VOLSER); SET PDB.TYPE74; / create values for title stmts. / IF _N_ = 1 THEN DO; CALL SYMPUT('SYSTEM',SYSTEM); CALL SYMPUT ( 'MVSLEVEL',MVSLEVEL) ; END; / filter date request / IF PUT(DATEPART(STARTTIME),DATE7.)= LEFT(PUT(TODAY()-1,DATE7.»; / filter installation address range / IF VOLSER=', THEN DELETE; IF (DEVNR >= 0120X.AND DEVNR <= 034FX); / miscellaneous variables / CALL SYMPUT ( 'ASOFDATE', PUT(DATEPART(STARTIME),WORDDATE.»; TIME=PUT(TIMEPART(STARTIME),TIME2.); / remove duplicate VOLSER values PROC SORT DATA=TYPE74 NODUP; BY VOLSER; / list of VOLSERs to be processed DATA VOLSER(KEEP=VOLSER); SET TYPE 74; / alphabetize each graph by VOLSER PROC SORT DATA=VOLSER NODUP; BY VOLSER; / write macro statements to file DATA _NULL_; FILE MACSTMTS PAD; SET VOLSER; '}'; / "invoke data-driven programmingn %INCLUDE MACSTMTS; / / / / / 21~
5 APPENDIX B i AVERAGE RESPONSE TIME MACRO ("A DATA-DRIVEN INVOCATION") INVOKE: %AVGRSPMS(VOLSER='VOLSER') MACRO VARIABLE: VOLSER INPUT: SIX (6) CHARACTER VOLUME NAME PROCESS: PROC GCHART; OUTPUT: A GRAPH OF A VOLUME SHOWING MINIMUM, AVERAGE, AND MAXIMUM RESPONSE TIMES IN MILLISECONDS (MS) BY HOUR FOR THE DAY REQUESTED, %MACRO AVGRSPMS(VOLSER=); / obtain data about VOLUME requested / DATA V&VOLSER; SET TYPE74; IF VOLSER=" &VOLSER"; CALL SYMPUT ( 'VOLSER'," &VOLSER") ; PROC SORT DATA=V&VOLSER; BY TIME; PROC MEANS DATA=V&VOLSER NOPRINT; BY TIME; VAR AVGRSPMS; OUTPUT OUT=AVGRSPMS MIN=MINRSPMS MEAN=AVGRSPMS MAX=MAXRSPMS; 1 tit~e statements / TITLEl C=WHITE J=C "SYSTEM &SYSTEM"; TITLE2 C=WHITE J=C "MVS &MVSLEVEL"; TITLE3 C=WHITE "VOLUMESERIALNUMBER"; TITLE4 C=WHITE "&VOLSER"; TITLES C=WHITE J=C "&ASOFDATE"; / stack data for PROC CHART output DATA IO_RSPTM; TYPE= 'At; USER=MINRSPMS; TYPE='B' ; USER=AVGRSPMS-MINRSPMS; TYPE='C' ; USER=MAXRSPMS-AVGRSPMS; PROC GCHART DATA=IO_RSPTM GOUT=&WEEKDAY.. &MEMBER; LEGENDl LABEL=NONE VALUE= (T=l 'MINIMUM' T=2 'AVERAGE' T=3 'MAXIMUM'); LABEL USER="RESPONSETIMEMS"; LABEL TI:ME='\HOUR" i VBAR TIME / SUMVAR=USER SUBGROUP=TYPE FRAME DISCRETE LEGEND=LEGENDl NAME="MS&VOLSER" HREF=40 AXIS= S ~O DESCRIPTION= "VOLSERRESPONSETIME(MS) - &SYSTEM"; 1 pattern statements PATTERNl V=Xl C=RED; PATTERN2 V=Rl C=YELLOW; PATTERN3 V=Ll C=BLUE; PATTERN4 V=S C=GREEN; PATTERNS V=E C=BLACK; %MEND AVGRSPMS; / / SAS-is a registered trademark of SAS Institute Inc. in the USA and other countries. 220
OS/390 DASD I/O Drill Down Computer Performance Chart Using ODS SAS/GRAPH & MXG Software
Paper 216-27 OS/390 DASD I/O Drill Down Computer Performance Chart Using ODS SAS/GRAPH & MXG Software Neal Musitano Jr. Department of Veterans Affairs Information Technology Center Philadelphia, Pennsylvania
More informationDavid S. Septoff Fidia Pharmaceutical Corporation
UNLIMITING A LIMITED MACRO ENVIRONMENT David S. Septoff Fidia Pharmaceutical Corporation ABSTRACT The full Macro facility provides SAS users with an extremely powerful programming tool. It allows for conditional
More informationSMP/E Exception SYSMOD Reporting Using SA~ Software
SMP/E Exception SYSMOD Reporting Using SA~ Software Captain Paul J. Waldowski United States Air Force ABSTRACT Th~s paper describes a program written in the SAS system which performs SMP/E Exceptl.on SYSMOD
More informationUsing MACRO and SAS/GRAPH to Efficiently Assess Distributions. Paul Walker, Capital One
Using MACRO and SAS/GRAPH to Efficiently Assess Distributions Paul Walker, Capital One INTRODUCTION A common task in data analysis is assessing the distribution of variables by means of univariate statistics,
More informationWHAT ARE SASHELP VIEWS?
Paper PN13 There and Back Again: Navigating between a SASHELP View and the Real World Anita Rocha, Center for Studies in Demography and Ecology University of Washington, Seattle, WA ABSTRACT A real strength
More informationDeveloping a Dashboard to Aid in Effective Project Management
Developing a Dashboard to Aid in Effective Project Management M. Paige Borden, University of Central Florida, Orlando, FL Maureen Murray, University of Central Florida, Orlando, FL Ali Yorkos, University
More informationIt s Not All Relative: SAS/Graph Annotate Coordinate Systems
Paper TU05 It s Not All Relative: SAS/Graph Annotate Coordinate Systems Rick Edwards, PPD Inc, Wilmington, NC ABSTRACT This paper discusses the SAS/Graph Annotation coordinate systems and how a combination
More informationGoing Under the Hood: How Does the Macro Processor Really Work?
Going Under the Hood: How Does the Really Work? ABSTRACT Lisa Lyons, PPD, Inc Hamilton, NJ Did you ever wonder what really goes on behind the scenes of the macro processor, or how it works with other parts
More informationInternet/Intranet, the Web & SAS
Dynamic Behavior from Static Web Applications Ted Durie, SAS, Overland Park, KS ABSTRACT Many Web applications, because of the infinite query combinations possible, require dynamic Web solutions. This
More informationMatt Downs and Heidi Christ-Schmidt Statistics Collaborative, Inc., Washington, D.C.
Paper 82-25 Dynamic data set selection and project management using SAS 6.12 and the Windows NT 4.0 file system Matt Downs and Heidi Christ-Schmidt Statistics Collaborative, Inc., Washington, D.C. ABSTRACT
More informationPaper CC16. William E Benjamin Jr, Owl Computer Consultancy LLC, Phoenix, AZ
Paper CC16 Smoke and Mirrors!!! Come See How the _INFILE_ Automatic Variable and SHAREBUFFERS Infile Option Can Speed Up Your Flat File Text-Processing Throughput Speed William E Benjamin Jr, Owl Computer
More informationODS and Web Enabled Device Drivers: Displaying and Controlling Large Numbers of Graphs. Arthur L. Carpenter and Richard O. Smith Data Explorations
ODS and Web Enabled Device Drivers: Displaying and Controlling Large Numbers of Graphs Arthur L. Carpenter and Richard O. Smith Data Explorations ABSTRACT With the advent of the Output Delivery System,
More informationCreating Maps in SAS/GRAPH
Creating Maps in SAS/GRAPH By Jeffery D. Gilbert, Trilogy Consulting Corporation, Kalamazoo, MI Abstract This paper will give an introduction to creating graphs using the PROC GMAP procedure in SAS/GRAPH.
More informationA Simple Framework for Sequentially Processing Hierarchical Data Sets for Large Surveys
A Simple Framework for Sequentially Processing Hierarchical Data Sets for Large Surveys Richard L. Downs, Jr. and Pura A. Peréz U.S. Bureau of the Census, Washington, D.C. ABSTRACT This paper explains
More informationHandling Numeric Representation SAS Errors Caused by Simple Floating-Point Arithmetic Computation Fuad J. Foty, U.S. Census Bureau, Washington, DC
Paper BB-206 Handling Numeric Representation SAS Errors Caused by Simple Floating-Point Arithmetic Computation Fuad J. Foty, U.S. Census Bureau, Washington, DC ABSTRACT Every SAS programmer knows that
More informationStoring and Reusing Macros
101 CHAPTER 9 Storing and Reusing Macros Introduction 101 Saving Macros in an Autocall Library 102 Using Directories as Autocall Libraries 102 Using SAS Catalogs as Autocall Libraries 103 Calling an Autocall
More informationA SAS Macro for Producing Benchmarks for Interpreting School Effect Sizes
A SAS Macro for Producing Benchmarks for Interpreting School Effect Sizes Brian E. Lawton Curriculum Research & Development Group University of Hawaii at Manoa Honolulu, HI December 2012 Copyright 2012
More informationTired of CALL EXECUTE? Try DOSUBL
ABSTRACT SESUG Paper BB-132-2017 Tired of CALL EXECUTE? Try DOSUBL Jueru Fan, PPD, Morrisville, NC DOSUBL was first introduced as a function in SAS V9.3. It enables the immediate execution of SAS code
More informationABSTRACT INTRODUCTION MACRO. Paper RF
Paper RF-08-2014 Burst Reporting With the Help of PROC SQL Dan Sturgeon, Priority Health, Grand Rapids, Michigan Erica Goodrich, Priority Health, Grand Rapids, Michigan ABSTRACT Many SAS programmers need
More informationEffective Forecast Visualization With SAS/GRAPH Samuel T. Croker, Lexington, SC
DP01 Effective Forecast Visualization With SAS/GRAPH Samuel T. Croker, Lexington, SC ABSTRACT A statistical forecast is useless without sharp, attractive and informative graphics to present it. It is really
More informationSign of the Times: Using SAS to Produce Conference Signage Daniel K. Downing, Caremark, Scottsdale, Ariz.
Sign of the Times: Using SAS to Produce Conference Signage Daniel K. Downing, Caremark, Scottsdale, Ariz. ABSTRACT Sign, sign, everywhere a sign. Are you at the right place at the right time? Who knows?
More informationSAS Macro Dynamics - From Simple Basics to Powerful Invocations Rick Andrews, Office of the Actuary, CMS, Baltimore, MD
Paper BB-7 SAS Macro Dynamics - From Simple Basics to Powerful Invocations Rick Andrews, Office of the Actuary, CMS, Baltimore, MD ABSTRACT The SAS Macro Facility offers a mechanism for expanding and customizing
More informationCTI Short Learning Programme in IT Enigneering
CTI Short Learning Programme in IT Enigneering Module Descriptions 2015 1 Short Learning Programme in IT Engineering (8 months full-time, 20 months part-time) Computer Literacy Knowing how to use a computer
More informationBig Data? Faster Cube Builds? PROC OLAP Can Do It
ABSTRACT Paper 1794-2014 Big Data? Faster Cube Builds? Can Do It Yunbo (Jenny) Sun, Canada Post Michael Brule, SAS Canada In many organizations the amount of data we deal with increases far faster than
More informationKEYWORDS Metadata, macro language, CALL EXECUTE, %NRSTR, %TSLIT
MWSUG 2017 - Paper BB15 Building Intelligent Macros: Driving a Variable Parameter System with Metadata Arthur L. Carpenter, California Occidental Consultants, Anchorage, Alaska ABSTRACT When faced with
More informationSix Cool Things You Can Do In Display Manager Jenine Milum, Charlotte, NC Wachovia Bank
Paper CC-029 Six Cool Things You Can Do In Display Manager Jenine Milum, Charlotte, NC Wachovia Bank ABSTRACT Many people use Display Manager but don t realize how much work it can actually do for you.
More informationReport Writing, SAS/GRAPH Creation, and Output Verification using SAS/ASSIST Matthew J. Becker, ST TPROBE, inc., Ann Arbor, MI
Report Writing, SAS/GRAPH Creation, and Output Verification using SAS/ASSIST Matthew J. Becker, ST TPROBE, inc., Ann Arbor, MI Abstract Since the release of SAS/ASSIST, SAS has given users more flexibility
More informationPaper Time Contour Plots. David J. Corliss, Wayne State University / Physics and Astronomy
ABSTRACT Paper 1311-2014 Time Contour Plots David J. Corliss, Wayne State University / Physics and Astronomy This new SAS tool is two-dimensional color chart for visualizing changes in a population or
More informationSAS/Warehouse Administrator Usage and Enhancements Terry Lewis, SAS Institute Inc., Cary, NC
SAS/Warehouse Administrator Usage and Enhancements Terry Lewis, SAS Institute Inc., Cary, NC ABSTRACT SAS/Warehouse Administrator software makes it easier to build, maintain, and access data warehouses
More informationSUGI 29 Posters. Paper A Group Scatter Plot with Clustering Xiaoli Hu, Wyeth Consumer Healthcare., Madison, NJ
Paper 146-29 A Group Scatter Plot with Clustering Xiaoli Hu, Wyeth Consumer Healthcare., Madison, NJ ABSTRACT In pharmacokinetic studies, abnormally high values of maximum plasma concentration Cmax of
More informationSparkLines Using SAS and JMP
SparkLines Using SAS and JMP Kate Davis, International Center for Finance at Yale, New Haven, CT ABSTRACT Sparklines are intense word-sized graphics for use inline text or on a dashboard that condense
More informationPresentation Quality Graphics with SAS/GRAPH
Presentation Quality Graphics with SAS/GRAPH Keith Cranford, Marquee Associates, LLC Abstract The SASI GRAP~ Annotate Facilily along with hardware fonts can be used to produce presentation qualily graphics
More informationAPPENDIX 2 Customizing SAS/ASSIST Software
241 APPENDIX 2 Customizing SAS/ASSIST Software Introduction 241 Setting User Profile Options 241 Creating an Alternate Menu Bar 243 Introduction This appendix describes how you can customize your SAS/ASSIST
More informationABSTRACT INTRODUCTION TRICK 1: CHOOSE THE BEST METHOD TO CREATE MACRO VARIABLES
An Efficient Method to Create a Large and Comprehensive Codebook Wen Song, ICF International, Calverton, MD Kamya Khanna, ICF International, Calverton, MD Baibai Chen, ICF International, Calverton, MD
More informationHow To Get Ten Pounds Of Data Into A Five Pound Can Using Flyover Technique In HTML Output
Paper TT15 How To Get Ten Pounds Of Data Into A Five Pound Can Using Flyover Technique In HTML Output Daniel K. Downing, CaremarkPCS, Scottsdale, AZ ABSTRACT When delivering results today, it is more and
More informationABSTRACT MORE THAN SYNTAX ORGANIZE YOUR WORK THE SAS ENTERPRISE GUIDE PROJECT. Paper 50-30
Paper 50-30 The New World of SAS : Programming with SAS Enterprise Guide Chris Hemedinger, SAS Institute Inc., Cary, NC Stephen McDaniel, SAS Institute Inc., Cary, NC ABSTRACT SAS Enterprise Guide (with
More informationGive me EVERYTHING! A macro to combine the CONTENTS procedure output and formats. Lynn Mullins, PPD, Cincinnati, Ohio
PharmaSUG 2014 - Paper CC43 Give me EVERYTHING! A macro to combine the CONTENTS procedure output and formats. Lynn Mullins, PPD, Cincinnati, Ohio ABSTRACT The PROC CONTENTS output displays SAS data set
More informationLST in Comparison Sanket Kale, Parexel International Inc., Durham, NC Sajin Johnny, Parexel International Inc., Durham, NC
ABSTRACT PharmaSUG 2013 - Paper PO01 LST in Comparison Sanket Kale, Parexel International Inc., Durham, NC Sajin Johnny, Parexel International Inc., Durham, NC The need for producing error free programming
More informationLet SAS Write and Execute Your Data-Driven SAS Code
Let SAS Write and Execute Your Data-Driven SAS Code Kathy Hardis Fraeman, United BioSource Corporation, Bethesda, MD ABSTRACT Some SAS programming statements are based on specific values of data, such
More informationCreating Macro Calls using Proc Freq
Creating Macro Calls using Proc Freq, Educational Testing Service, Princeton, NJ ABSTRACT Imagine you were asked to get a series of statistics/tables for each country in the world. You have the data, but
More informationApplications Development. Paper 38-28
Paper 38-28 The California Template or How to keep from reinventing the wheel using SAS/IntrNet, JavaScript and process reengineering Blake R. Sanders, U.S. Census Bureau, Washington, DC ABSTRACT Creating
More informationTips for Producing Customized Graphs with SAS/GRAPH Software. Perry Watts, Fox Chase Cancer Center, Philadelphia, PA
Tips for Producing Customized Graphs with SAS/GRAPH Software Perry Watts, Fox Chase Cancer Center, Philadelphia, PA Abstract * SAS software is used to produce customized graphics displays by solving a
More informationIdentifying Duplicate Variables in a SAS Data Set
Paper 1654-2018 Identifying Duplicate Variables in a SAS Data Set Bruce Gilsen, Federal Reserve Board, Washington, DC ABSTRACT In the big data era, removing duplicate data from a data set can reduce disk
More informationSAS 9 Programming Enhancements Marje Fecht, Prowerk Consulting Ltd Mississauga, Ontario, Canada
SAS 9 Programming Enhancements Marje Fecht, Prowerk Consulting Ltd Mississauga, Ontario, Canada ABSTRACT Performance improvements are the well-publicized enhancement to SAS 9, but what else has changed
More informationTime Contour Plots. David J. Corliss Magnify Analytic Solutions, Detroit, MI
Time Contour Plots David J. Corliss Magnify Analytic Solutions, Detroit, MI ABSTRACT This new SAS tool is two-dimensional color chart for visualizing changes in a population or system over time. Data for
More informationAn Introduction to SAS Macros
An Introduction to SAS Macros Expanded token SAS Program (Input Stack) SAS Wordscanner (Tokenization) Non-Macro (Tokens) SAS Compiler % and & Triggers Macro Facility Steven First, President 2997 Yarmouth
More informationA Better Perspective of SASHELP Views
Paper PO11 A Better Perspective of SASHELP Views John R. Gerlach, Independent Consultant; Hamilton, NJ Abstract SASHELP views provide a means to access all kinds of information about a SAS session. In
More informationOut of Control! A SAS Macro to Recalculate QC Statistics
Paper 3296-2015 Out of Control! A SAS Macro to Recalculate QC Statistics Jesse Pratt, Colleen Mangeot, Kelly Olano, Cincinnati Children s Hospital Medical Center, Cincinnati, OH, USA ABSTRACT SAS/QC provides
More informationInteroperability First Published On: Last Updated On:
First Published On: 02-08-2017 Last Updated On: 04-23-2018 1 Table of Contents 1. vsan with vrealize Operations (vr Ops) 1.1.Using vr Ops MP for vsan to understand performance 2 1. vsan with vrealize Operations
More informationCreating Population Tree Charts (Using SAS/GRAPH Software) Robert E. Allison, Jr. and Dr. Moon W. Suh College of Textiles, N. C.
SESUG 1994 Creating Population Tree Charts (Using SAS/GRAPH Software) Robert E. Allison, Jr. and Dr. Moon W. Suh College of Textiles, N. C. State University ABSTRACT This paper describes a SAS program
More informationBuilding Sequential Programs for a Routine Task with Five SAS Techniques
ABSTRACT SESUG Paper BB-139-2017 Building Sequential Programs for a Routine Task with Five SAS Techniques Gongmei Yu and Paul LaBrec, 3M Health Information Systems. When a task needs to be implemented
More informationDeveloping Data-Driven SAS Programs Using Proc Contents
Developing Data-Driven SAS Programs Using Proc Contents Robert W. Graebner, Quintiles, Inc., Kansas City, MO ABSTRACT It is often desirable to write SAS programs that adapt to different data set structures
More informationConsiderations of Analysis of Healthcare Claims Data
Considerations of Analysis of Healthcare Claims Data ABSTRACT Healthcare related data is estimated to grow exponentially over the next few years, especially with the growing adaptation of electronic medical
More informationWHITE PAPER. F5 and Cisco. Supercharging IT Operations with Full-Stack SDN
+ WHITE PAPER F5 and Cisco Supercharging IT Operations with Full-Stack SDN Contents Introduction 3 Confronting the bottleneck 3 Evolving SDN technologies 4 An integrated solution 5 Application policies,
More informationPharmaSUG 2013 CC26 Automating the Labeling of X- Axis Sanjiv Ramalingam, Vertex Pharmaceuticals, Inc., Cambridge, MA
PharmaSUG 2013 CC26 Automating the Labeling of X- Axis Sanjiv Ramalingam, Vertex Pharmaceuticals, Inc., Cambridge, MA ABSTRACT Labeling of the X-axis usually involves a tedious axis statement specifying
More informationWelcome to COS151! 1.1
Welcome to COS151! Title: Introduction to Computer Science Course website: https://cs.up.ac.za/admin/courses/cos151 Find the study guide there Announcements Assignments (download & upload) Brief overview
More informationPaper CC01 Sort Your SAS Graphs and Create a Bookmarked PDF Document Using ODS PDF ABSTRACT INTRODUCTION
Paper CC01 Sort Your SAS Graphs and Create a Bookmarked PDF Document Using ODS PDF Dirk Spruck, Accovion GmbH, Marburg, Germany Monika Kawohl, Accovion GmbH, Marburg, Germany ABSTRACT Graphs are a great
More informationSummarizing Impossibly Large SAS Data Sets For the Data Warehouse Server Using Horizontal Summarization
Summarizing Impossibly Large SAS Data Sets For the Data Warehouse Server Using Horizontal Summarization Michael A. Raithel, Raithel Consulting Services Abstract Data warehouse applications thrive on pre-summarized
More information- Figure 1 :~!!~'!~,~!!~ MANAGEMENT GRAPHICS IN A QUALITY ASSURANCE ENVIRONMENT. Shirley J. McLelland. SAS Code used to produce the graph,
MANAGEMENT GRAPHICS IN A QUALITY ASSURANCE ENVIRONMENT ita picture is worth a thousand words" is a familiar cliche. Southern California Edison Quality Assurance Organization is an environment which has
More informationJourney to the center of the earth Deep understanding of SAS language processing mechanism Di Chen, SAS Beijing R&D, Beijing, China
Journey to the center of the earth Deep understanding of SAS language processing Di Chen, SAS Beijing R&D, Beijing, China ABSTRACT SAS is a highly flexible and extensible programming language, and a rich
More informationLecture 4: Mechanising the Office. History of Computing. Today s Topics. History of Computing Clearing Houses (1)
Lecture 4: Mechanising the Office based on Campbell-Kelly s Book Chapter 1 Today s Topics Clearing Houses The Clearing Process The 1890 Census The tally system Herman Hollerith The Hollerith Machine The
More informationTaming a Spreadsheet Importation Monster
SESUG 2013 Paper BtB-10 Taming a Spreadsheet Importation Monster Nat Wooding, J. Sargeant Reynolds Community College ABSTRACT As many programmers have learned to their chagrin, it can be easy to read Excel
More informationUsing SAS/GRAPH Software to Create Graphs on the Web Himesh Patel, SAS Institute Inc., Cary, NC Revised by David Caira, SAS Institute Inc.
Paper 189 Using SAS/GRAPH Software to Create Graphs on the Web Himesh Patel, SAS Institute Inc., Cary, NC Revised by David Caira, SAS Institute Inc., Cary, NC ABSTRACT This paper highlights some ways of
More informationTrend Reporting Using the MXG Trend Performance Database
Paper PT-04-2013 Trend Reporting Using the MXG Trend Performance Database Neal Musitano Jr. U. S. Department of Veterans Affairs, Information Technology Center Philadelphia, Pennsylvania ABSTRACT This
More informationA Simple Time Series Macro Scott Hanson, SVP Risk Management, Bank of America, Calabasas, CA
A Simple Time Series Macro Scott Hanson, SVP Risk Management, Bank of America, Calabasas, CA ABSTRACT One desirable aim within the financial industry is to understand customer behavior over time. Despite
More informationSo Much Data, So Little Time: Splitting Datasets For More Efficient Run Times and Meeting FDA Submission Guidelines
Paper TT13 So Much Data, So Little Time: Splitting Datasets For More Efficient Run Times and Meeting FDA Submission Guidelines Anthony Harris, PPD, Wilmington, NC Robby Diseker, PPD, Wilmington, NC ABSTRACT
More informationMaking your information system simple again
Making your information system simple again Critical applications: the key to your business success Bringing together an organization s core expertise, its most sensitive data, and critical applications
More informationCOBOL's dominance in underlined by the reports from the Gartner group.
Programming Languages Research Paper Submitted by: Amit Jaju-Roll no 16 Swarjit Das-Roll no 9 Introduction COBOL is a high-level programming language first developed by the CODASYL Committee (Conference
More informationArthur L. Carpenter California Occidental Consultants, Oceanside, California
Paper 028-30 Storing and Using a List of Values in a Macro Variable Arthur L. Carpenter California Occidental Consultants, Oceanside, California ABSTRACT When using the macro language it is not at all
More informationPharmaSUG Paper TT11
PharmaSUG 2014 - Paper TT11 What is the Definition of Global On-Demand Reporting within the Pharmaceutical Industry? Eric Kammer, Novartis Pharmaceuticals Corporation, East Hanover, NJ ABSTRACT It is not
More informationApril 13, Honorable John Hickenlooper Governor, State of Colorado 136 State Capitol Building 200 East Colfax Avenue Denver, CO 80203
April 13, 2017 Honorable John Hickenlooper Governor, State of Colorado 136 State Capitol Building 200 East Colfax Avenue Denver, CO 80203 RE: Support for House Bill 1193 Small Wireless Infrastructure Dear
More informationEasing into Data Exploration, Reporting, and Analytics Using SAS Enterprise Guide
Paper 809-2017 Easing into Data Exploration, Reporting, and Analytics Using SAS Enterprise Guide ABSTRACT Marje Fecht, Prowerk Consulting Whether you have been programming in SAS for years, are new to
More informationA Quick and Gentle Introduction to PROC SQL
ABSTRACT Paper B2B 9 A Quick and Gentle Introduction to PROC SQL Shane Rosanbalm, Rho, Inc. Sam Gillett, Rho, Inc. If you are afraid of SQL, it is most likely because you haven t been properly introduced.
More informationAn Efficient Tool for Clinical Data Check
PharmaSUG 2018 - Paper AD-16 An Efficient Tool for Clinical Data Check Chao Su, Merck & Co., Inc., Rahway, NJ Shunbing Zhao, Merck & Co., Inc., Rahway, NJ Cynthia He, Merck & Co., Inc., Rahway, NJ ABSTRACT
More informationWhile You Were Sleeping - Scheduling SAS Jobs to Run Automatically Faron Kincheloe, Baylor University, Waco, TX
While You Were Sleeping - Scheduling SAS Jobs to Run Automatically Faron Kincheloe, Baylor University, Waco, TX ABSTRACT If you are tired of running the same jobs over and over again, this paper is for
More informationSAS Macro Technique for Embedding and Using Metadata in Web Pages. DataCeutics, Inc., Pottstown, PA
Paper AD11 SAS Macro Technique for Embedding and Using Metadata in Web Pages Paul Gilbert, Troy A. Ruth, Gregory T. Weber DataCeutics, Inc., Pottstown, PA ABSTRACT This paper will present a technique to
More informationAN EMPIRICAL STUDY OF EFFICIENCY IN DISTRIBUTED PARALLEL PROCESSING
AN EMPIRICAL STUDY OF EFFICIENCY IN DISTRIBUTED PARALLEL PROCESSING DR. ROGER EGGEN Department of Computer and Information Sciences University of North Florida Jacksonville, Florida 32224 USA ree@unf.edu
More informationStatistics, Data Analysis & Econometrics
ST009 PROC MI as the Basis for a Macro for the Study of Patterns of Missing Data Carl E. Pierchala, National Highway Traffic Safety Administration, Washington ABSTRACT The study of missing data patterns
More informationFormat of Session 1. Forensic Accounting then and now 2. Overview of Data Analytics 3. Fraud Analytics Basics 4. Advanced Fraud Analytics 5. Data Visualization 6. Wrap-up Question are welcome and encouraged!
More informationPreface A Brief History Pilot Test Results
Preface A Brief History In Fall, 2005, Wanda Dann and Steve Cooper, originators of the Alice approach for introductory programming (in collaboration with Randy Pausch), met with Barb Ericson and Mark Guzdial,
More informationGetting Up to Speed with PROC REPORT Kimberly LeBouton, K.J.L. Computing, Rossmoor, CA
SESUG 2012 Paper HW-01 Getting Up to Speed with PROC REPORT Kimberly LeBouton, K.J.L. Computing, Rossmoor, CA ABSTRACT Learning the basics of PROC REPORT can help the new SAS user avoid hours of headaches.
More informationSAS Visual Analytics Environment Stood Up? Check! Data Automatically Loaded and Refreshed? Not Quite
Paper SAS1952-2015 SAS Visual Analytics Environment Stood Up? Check! Data Automatically Loaded and Refreshed? Not Quite Jason Shoffner, SAS Institute Inc., Cary, NC ABSTRACT Once you have a SAS Visual
More informationUsinq the VBAR and BBAR statements and the TEMPLATE Facility to Create side-by-side, Horizontal Bar Charts with Shared Vertical Axes Labels
Usinq the VBAR and BBAR statements and the TEMPLATE Facility to Create side-by-side, Horizontal Bar Charts with Shared Vertical Axes Labels Lela M. Brown, University of Oklahoma ABSTRACT PRoe GREPLAY's
More informationPreserving your SAS Environment in a Non-Persistent World. A Detailed Guide to PROC PRESENV. Steven Gross, Wells Fargo, Irving, TX
Preserving your SAS Environment in a Non-Persistent World A Detailed Guide to PROC PRESENV Steven Gross, Wells Fargo, Irving, TX ABSTRACT For Enterprise Guide users, one of the challenges often faced is
More informationCS 4230 Java Application Development Syllabus
General Information CS 4230 Java Application Development Semester: Fall 2016 Textbook: Core Java Volume II, 9th Edition, by Horstmann & Cornell, 2013, Prentice Hall, ISBN 978 0 1370 8160 8 Location: SLCC
More informationCS 4230 Java Application Development Syllabus
General Information Semester: Fall 2018 Textbook: Core Java Volume II, 9th Edition, by Horstmann & Cornell, 2013, Prentice Hall, ISBN 978-0-1370-8160-8 Location: SLCC BB 330 Instructor Info: Website: Trevor
More informationEssential ODS Techniques for Creating Reports in PDF Patrick Thornton, SRI International, Menlo Park, CA
Thornton, S. P. (2006). Essential ODS techniques for creating reports in PDF. Paper presented at the Fourteenth Annual Western Users of the SAS Software Conference, Irvine, CA. Essential ODS Techniques
More informationOS/390 SAS/MXG Computer Performance Reports in HTML Format
Paper 153-29 E-Mail OS/390 SAS/MXG Computer Performance Reports in HTML Format ABSTRACT Neal Musitano Jr. Department of Veterans Affairs Information Technology Center Philadelphia, Pennsylvania This paper
More informationFrom Manual to Automatic with Overdrive - Using SAS to Automate Report Generation Faron Kincheloe, Baylor University, Waco, TX
Paper 152-27 From Manual to Automatic with Overdrive - Using SAS to Automate Report Generation Faron Kincheloe, Baylor University, Waco, TX ABSTRACT This paper is a case study of how SAS products were
More informationUsing SAS Macros to Extract P-values from PROC FREQ
SESUG 2016 ABSTRACT Paper CC-232 Using SAS Macros to Extract P-values from PROC FREQ Rachel Straney, University of Central Florida This paper shows how to leverage the SAS Macro Facility with PROC FREQ
More informationA SAS Macro to Generate Caterpillar Plots. Guochen Song, i3 Statprobe, Cary, NC
PharmaSUG2010 - Paper CC21 A SAS Macro to Generate Caterpillar Plots Guochen Song, i3 Statprobe, Cary, NC ABSTRACT Caterpillar plots are widely used in meta-analysis and it only requires a click in software
More informationCopy That! Using SAS to Create Directories and Duplicate Files
Copy That! Using SAS to Create Directories and Duplicate Files, SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and
More informationShine a Light on Dark Data with Vertica Flex Tables
White Paper Analytics and Big Data Shine a Light on Dark Data with Vertica Flex Tables Hidden within the dark recesses of your enterprise lurks dark data, information that exists but is forgotten, unused,
More informationExtending the Scope of Custom Transformations
Paper 3306-2015 Extending the Scope of Custom Transformations Emre G. SARICICEK, The University of North Carolina at Chapel Hill. ABSTRACT Building and maintaining a data warehouse can require complex
More informationWhy you should design your data hub top-down vs. bottom-up
Why you should design your data hub top-down vs. bottom-up 1 Why you should design your data hub top-down vs. bottom-up Why are central repositories of data more necessary now than ever? E very business
More informationThe Evolution of a SAS/GRAPH Application Jenine Eason, AutoTrader.com, Atlanta, GA
Paper P05-04 The Evolution of a SAS/GRAPH Application Jenine Eason, AutoTrader.com, Atlanta, GA INTRODUCTION Graphs are an excellent way to represent any activity. The author is using web server errors
More informationIntroduction to TCP/IP Offload Engine (TOE)
Introduction to TCP/IP Offload Engine (TOE) Version 1.0, April 2002 Authored By: Eric Yeh, Hewlett Packard Herman Chao, QLogic Corp. Venu Mannem, Adaptec, Inc. Joe Gervais, Alacritech Bradley Booth, Intel
More informationINTRODUCTION TO THE SAS ANNOTATE FACILITY
Improving Your Graphics Using SAS/GRAPH Annotate Facility David J. Pasta, Ovation Research Group, San Francisco, CA David Mink, Ovation Research Group, San Francisco, CA ABSTRACT Have you ever created
More informationShelbyNext Membership: Transition Prep & Implementation
ShelbyNext Membership: Transition Prep & Implementation Pre-ISC Lecture (Course #M103) Presented by: Jeannetta Douglas Shelby Contract Trainer 2018 Shelby Systems, Inc. Other brand and product names are
More informationSAS/GRAPH : Using the Annotate Facility
SAS/GRAPH : Using the Annotate Facility Jack S. Nyberg, ClinTrials Research, Inc., Lexington, KY. Stuart D. Nichols, ClinTrials Research, Inc., Lexington, KY. ABSTRACT The annotate facility in SAS/GRAPH
More information