PAPER CC02 Link the Unlinked : Documenting Dependencies Among SAS Programs in a Project Abstract within across related Context and Clarification

Size: px
Start display at page:

Download "PAPER CC02 Link the Unlinked : Documenting Dependencies Among SAS Programs in a Project Abstract within across related Context and Clarification"

Transcription

1 PAPER CC02 Link the Unlinked : Documenting Dependencies Among SAS Programs in a Project Gopal Rajagopal, Merck Research Laboratories, Upper Gwynedd PA Abstract Agency submissions typically involve dozens of tables and SAS programs with numerous interdependencies; some of which are subtle The average SOP emphasizes documentation within a SAS program This paper focuses on the oft unmet need for project level SAS program metadata ie documentation of dependencies across related SAS programs in a project Project level SAS program metadata can add value to the ongoing enhancement of an existing set of related programs It is critical to be selective about what program metadata is collected and how it is presented While one can generate volumes of metadata, 'too much' may be overwhelming rather than helpful UNIX text processing utilities grep, sed and awk along with other UNIX utilities and commands can be used to generate project level SAS program metadata from shared permanent datasets, macros, formats, and map programs to output How these can help you manage SAS programs will be explored in this paper Context and Clarification Necessity is the mother of invention and, sometimes, the inspiration for 'thinking out of the box' One of the author's projects, needing 'enhancement', comprised of 112 PC based SAS programs which used 81 datasets (of which some had millions of records) The programs also contained dozens of macros The 112 SAS programs represented a total of 16,245 lines of code (including comments, blanks etc) The client estimated that 5% of the code needed to change However, the critical question of 'which 5%?' is to be 'changed' needed to be answered SAS on the UNIX environment was chosen for the enhancement round to take advantage of quicker processing The programming team, fortuitously, resorted to repeated ad hoc searches for SAS constructs (macros, datasets etc) to chart out dependencies across programs These searches were then later woven together and organized in UNIX shell script utilities to enhance project level metadata output and to facilitate automationif you are laboring in a non UNIX shop, utilities equivalent to grep, sed and awk maybe available in the Windows platform and other operating system(s) Project level metadata, sagaciously generated, could boost the morale of the team (or at least provide a ground reality perspective) in that it quickly affords a forest for the trees view for a 'big' task The metadata chosen should be based upon the nature of the project and what is needed In addition to attempting parsimony vis-à-vis metadata generation, being thoughtful about how the metadata can be used and presented are significant issues It is said that a 'picture is worth a thousand words'; so presenting the dependencies in a graphical form may add value especially if the information is culled from thousands of lines of SAS code spread across many programs We found the following kinds of metadata to be most useful 1 Metadata on programs as a whole ie a listing of the order in which the programs are run, number of lines for each program, information on families of programs based on the naming convention 2 Data Set to Program mapping 3 Macro to Program mapping 4 Parsing log files and output files during batch runs can also useful 5 Metadata on all the datasets used in Programs If your project needs other kinds of project level metadata, your might find our approach useful

2 Overview of the Metadata documentation approach and utility development Before we delve into specifics, some general observations about the design approach and capabilities of developed utilities may be relevant at this juncture Given significant variability on how programmers write code, developing such utilities is a non trivial task The author believes that the utilities presented in this paper need to be refined further to capture more variations 'out of box' Basically the utilities assume that the SAS programs 'work' Access to corresponding SAS logs will also be helpful The utilities search for specific SAS syntax while attempting to take into account variations such as variable capitalization, spacing etc If the 'data' in 'data xxxyyy' statement is misspelt, the utility may not pick up the data set associated with this specific statement The search strategy, in view of the variations of coding styles, widens the net by using multiple ways of locating SAS objects In addition to the regular 'data xxxyyy' syntax search, for example, the script also searches for all the data sets in the designated directories associated with the libnames The dataset lists from all sources can then be harmonized into one super set of data set names for further processing To the extent possible, all the utilities are designed to be data driven One of the utilities, for example, which maps macros across SAS programs uses a editable list of macros and a editable list of SAS programs The proposed utilities use the SAS code itself as the 'raw' material and do not depend on any pre-existing documentation However, their output can potentially complement internal program documentation The metadata output is always current as long as the most recent version of the SAS program(s) is parsed/processed These utilities are designed to generate 2 types of output: Text and Graphics Both forms of output are designed to complement each other All utilities generate text output Some generate text only The text output contains all the lines in SAS programs which qualify as per the search criteria If the text output file is 'big', then one could search this file too for specific details A Microsoft Visio (a PC/Windows based graphics software) graphics 'ready' text file is generated by some of the utilities The text file is fed, in the form of a spreadsheet, to MS Visio The graphics display the hierarchy of SAS objects such as which macro is used across programs and which line it is used etc The graphics can also be deployed as HTML file(s) This feature allows for easier deployment of the metadata documentation to a development team as a web resource Generate a listing of SAS programs Given the overall design credo of developing data driven utilities to the extent possible, creating complete and comprehensive lists of SAS objects such as SAS programs, macros, data set names etc is a critical starting point The list of SAS programs associated with a project is central to all processing in the utilities This list will be called sas_program_listtxt in this document It can be created with relative ease From the UNIX command prompt, go (or 'cd') to the directory(s) in which the SAS programs reside and use the 'ls *sas > sas_program_listtxt' command syntax In this paper, only relevant sections of the utility code (especially for the larger ones) to generate different kinds of lists and mapping output are referred to in various numbered appendices from this section onwards Since some in the reading audience may not relate to UNIX shell scripting code, a general idea of the algorithm used will be broached at the appropriate juncture Lines, which may be specifically commented upon, will be tagged with a line number Every line of code for every utility will not be presented Readers are welcome to contact the author for details Even a simple list of programs with a modicum of additional metadata can be a surprisingly good start as a source of project level metadata A utility called program_desccmd (Appendix 1) is designed to provide a list of program names and line numbers for each program

3 The material below is a sample excerpt from file $docdir/program_desctxt sorted by alphabetical order import_bpsas 61 import_p_eventsas 95 import_practicesas 26 mexposuresas 373 outcome_c1y1sas 231 outcome_c1y1_agesas 242 outcome_c1y1_fstdosesas 246 The total number of lines for all the 112 SAS programs in our project, as noted before, was 16,245 lines This simple metric, relevant for resource planning, by itself implies that the project is not an overnight task by any means In the listing above there are 2 sets of programs names with a common prefix ie 'import' and 'outcome' If the family assumption is valid, code enhancement and QC might become easier for each family of programs Sorting on the number of lines metric indicates that the file mexposuresas is the largest program This program, at a minimum, assuming that it is not filled with too much redundant code (or empty lines for that matter!), will need 'more' work Some SAS programmers put a number of 'lines' in one line (as in 'data xxxyyy; set aaabbb; where numvar = 5;) ie each SAS code ending with a ';' does not always represent a line Hence, even a 'short' program can have a 'lot' packed in On the 'easier side', programs such as import_practicesas, mercifully contains only 26 lines of code A time ordered listing of program, especially in the absence of a 'batch run' file, buttressed with logs and other information can also provide a rough guide to the order in which the programs have to run Shared permanent SAS datasets to program mapping Utility The main goal of this utility is to map (to the extent possible) the programs in which permanent data sets are created and in which programs they are used (or referred to in program comments etc) The main steps are 1 Generate a list of permanent data sets created/used in all the SAS programs (Utility script Locate_ds2cmd excerpt available in Appendix 2) 2 Use the dataset list and the list of SAS programs to generate a dataset creation to program use/referral map (text and graphic ready version) (Utility script Mak_ds_to_use_map3cmd code excerpt available Appendix 3) Sample excerpt from Text file for Data Set creation to Usage (in programs) map output for data set datadirweight **** Data set datadirweight was created in import_weightsas program(s) and is referenced in program(s) Program Outcome_cny1sas 25: datadirweight Program Outcome_c1y1a_agesas 25: datadirweight Program import_weightsas 27:data datadirweight Program bl_cardio_risksas 24: datadirweight 76:%crisk(datadirweight, bmi, bmi); Program bl_age_sexsas 24: datadirweight Program Outcome_c1y1asas 25: datadirweight Program bl_bloodpresuresas

4 24: datadirweight Program bl_age_sex_agesas 24: datadirweight Program bl_indication_agesas 24: datadirweight **** End of datadirweight usage map Sample excerpt from the graphical map of Data Set creation to Usage (in programs) for data set datadirweight In text file mapping for data set datadirweight, you might notice that the actual line and the corresponding text are shown for each search 'hit' in each SAS program However, in the graphic version only the line numbers are shown At a maximum only the first 10 lines are shown to make the graph less unwieldy Data set datadirtherapy was apparently created in program import_weightsas as indicated by both the text and graphics version The data set creation to usage mapping can help the programming team vis-à-vis It provides a list of all the data sets used in project The 81 data sets of our project inspired us to assign one team member to QC the data set creation programs, given the criticality of 'raw' data quality The datasets used most frequently across SAS programs represent a potential single point of failure The associated SAS programs probably need enhanced QC efforts QC can be low key for infrequently used data sets Unused data sets, which the utility identifies, can be ignored If an upstream SAS program has completed a 'processing block', then programs downstream using this data set do not need to repeat this 'processing block' If a family concept applies to a group of data sets decreasing and reorganizing, if permitted by logic, the number of overlapping data sets in a 'family' can help save disk space However, if programs can use, as per logic, a smaller chunk of a bigger data set, then creating more family members may help performance

5 SAS macro to Program metadata map Utility The design goal of this utility is to produce a macro to SAS program map Macros with the same name across SAS programs are identified and mapped as the same macro even though the underlying code may be completely different A family of macros is inferred by macros across programs which have common prefixes The 2 main steps are 1 Generate a comprehensive list of macros created/used in all the SAS programs Code excerpt for locate_macro1cmd is available in Appendix 4 2 Use the macro list and the list of SAS programs to generate a macro to program creation, use/referral map or a program to macro use/referral map (text and graphic ready version) Code excerpt for mac_to_program_map2cmd is available in Appendix 5 Sample excerpt for text version of the macro to SAS program map for macro bsrx References for MACRO bsrx in SAS programs in /epidb/data002/analysis_021_gprd/pgm_analysis_1 are name is bl_rx_cardiosas Creation reference is 70:%macro bsrx(datain, dataout, gprdcode, gpcode, rname); Invocation reference(s) are 105:%bsrx(datain=bs_rx1, dataout=tdatadirglyco,gprdcode=glyco, 107:%bsrx(datain=bs_rx1, dataout=tdatadirdiu, gprdcode=diu, 109:%bsrx(datain=bs_rx1, dataout=tdatadirbblock, gprdcode=bblock, 111:%bsrx(datain=bs_rx1, dataout=tdatadiracei, gprdcode=acei, 113:%bsrx(datain=bs_rx1, dataout=tdatadirang, gprdcode=ang, 115:%bsrx(datain=bs_rx1, dataout=tdatadirnitr, gprdcode=nitr, 117:%bsrx(datain=bs_rx1, dataout=tdatadirccb, gprdcode=ccb, 119:%bsrx(datain=bs_rx1, dataout=tdatadirorant, gprdcode=orant, 121:%bsrx(datain=bs_rx1, dataout=tdatadirldasp, gprdcode=ldasp, 123:%bsrx(datain=bs_rx1, dataout=tdatadiranexre, gprdcode=anexre, 125:%bsrx(datain=bs_rx1, dataout=tdatadirezet, gprdcode=ezet, 127:%bsrx(datain=bs_rx1, dataout=tdatadirfibrat, gprdcode=fibrat, 129:%bsrx(datain=bs_rx1, dataout=tdatadirstatin, gprdcode=statin, 131:%bsrx(datain=bs_rx1, dataout=tdatadirnicot, gprdcode=nicot, SAS program name is bl_dxrx_diabsas Creation reference is 109:%macro bsrx(datain, dataout, gprdcode, gpcode, rname); Invocation reference(s) are 144:%bsrx(datain=bs_rx1, dataout=tdatadirinsulin, gprdcode=insulin, 146:%bsrx(datain=bs_rx1, dataout=tdatadirantid, gprdcode=antid,

6 Sample excerpt from graphics version of the macro to SAS program map for macro bsrx The text version of the output has a lot more detail in that it provides the line and the associated SAS code where the macro string bsrx occurs It also informs the user where the bsrx macro was created in the program The first line in the text file tells us which line the macro has been created The first line number in the graphic for each macro also corresponds to the macro creation reference Only the first 10 line numbers (and not the code) are available in the graph If a macro is not created in the program, it is described as being implicit For lack of space, an example of an implicit macro is not being shown The macro to program mapping can quickly provide the programming team A ready list of all the implicit and explicit macros used in project There were a total of 25 macros in our project out of which 2 were 'implicit' If there are macros with the same name, some of those macros could be actually identical in terms of code Such macro's 'creation' code can be moved out of the SAS programs as an implicit macro so that propagating any future changes to identified common (and moved out) macros becomes easier and consistent Reduced volume of SAS code and validation efforts If a frequently used macro is 'moved' out and is a 'large' macro, the number of lines of code for the involved SAS programs (and the related maintenance/qc burden) can be reduced QC efforts can sometimes be low key for those macros which are infrequently used Identification of same-named macros coded differently If a macro has a common name across SAS programs, and its code is found to be variable, one could consider renaming the macro with an independent name or give it the appropriate 'family' prefix to help preserve the sanity of current and future SAS programmers working with the SAS programs in question Consolidation of similar macros into one If a family concept applies to a few macro names, the programming team can consider creating a generalized macro which combines the functionality of the 'family' This can help reduce the overhead of maintaining many separate macros Mapping SAS programs to results tables/documents In our project, dozens of reports (or tables) were produced in the form of Microsoft Word files The naming convention of these tables was not explicitly related to the name of the programs generating them These reports were generated by a shared macro where one had to supply specific values to macro arguments The name of the MS Document was tied to a macro argument name 'docfile' Also the title string for each table of MS Word documents was also buried in the macro call's code A simple script doc1cmd (code excerpt available in Appendix 6) was used to generate a list of program names and corresponding MS Word document, related titles and headers It also provides a list of SAS programs that do not create reports

7 Sample output excerpt for the doc1cmd utility 20 Document Reference(s) for the program Outcome_cny1sas is 200: docfile=cny1doc, 182:%let title1= Table xxx Incident Rate of Clinical Outcomes; 183:%let title2= First year follow up and exposure of all courses (Exposure truncated when other DRUGx Rx started); 193:%RTFtable(Ds=outcome1, TitleRow=2, HeadRows=2, FootRows=4, 185:%let header1= Sub-cohort 1&rtfsym1 ^ ^ Sub-cohort 2&rtfsym2^ ^ Sub-cohort 3 &rtfsym3^ ^ ; 186:%let header2= Outcome Case N Incident rate&rtfsym4 Case N Incident rate&rtfsym4 Case N Incident rate&rtfsym4 ; End of Output list for /epidb/data002/analysis_021_gprd/pgm_analysis_1/outcome_cny1sas prog 21 Document Reference(s) for the program Outcome_cnynsas is 200: docfile=cnyndoc, 182:%let title1= Table xxx Incident Rate of Clinical Outcomes; 183:%let title2= Entire available follow up and exposure of all courses (Exposure truncated when other DRUGx Rx started); 193:%RTFtable(Ds=outcome1, TitleRow=2, HeadRows=2, FootRows=4, 185:%let header1= Sub-cohort 1&rtfsym1 ^ ^ Sub-cohort 2&rtfsym2^ ^ Sub-cohort 3 &rtfsym3^ ^ ; 186:%let header2= Outcome Case N Incident rate&rtfsym4 Case N Incident rate&rtfsym4 Case N Incident rate&rtfsym4 ; End of Output list for /epidb/data002/analysis_021_gprd/pgm_analysis_1/outcome_cnynsas prog Searching metadata from SAS logs and generating metadata (data dictionary) for permanent SAS datasets used in programs In addition to SAS programs, searching SAS logs in repeated batch runs to quickly isolate problem code can be valuable This looprunsas script (code excerpt in Appendix 7) was used for batch runs for all the programs (or a specific subset) The order of running SAS programs can be controlled in the utility by changing the order of programs in the sas_prog_listtxt file Furthermore, it examines the log of each SAS program for terms such as 'Error', 'Warning'' and 'initialized' and writes it out to a file called run_errors along with the program name All the errors for the batch run are available in the run_error file Our programming team found this invaluable in that one does not have to go over dozens of logs looking for errors You can save different versions of the run_error file if needed Automated generation of a data dictionary for each of the datasets created/used in the programs is also an important aspect of metadata If you know the dataset libname directory name(s) a priori, one could go in SAS, point a libname to the data set directory in question and use the 'PROC CONTENTS' to get all the data set(s) metadata However, if the libnames are unknown, the utility contents1cmd (excepts are available in Appendix 8) will plough through all the SAS programs and first create a unique list of libnames It will then use this list and produce ' PROC CONTENTS ' output for all the data sets in all the libnames associated with SAS programs being documented Limitations The parser for the SAS language is designed to deal with almost 'any coding style' as long it is syntactically correct For instance it will even deal with a made-up and improbable SAS 'program' such as libname mydata 'c:\temp' ; data temp; var1 = 1; output; var1=2; output;

8 run; data mydatagold ; set temp ; where var1 = 1; run ; This code may look unappetizing but it is syntactically correct The utilities, which use the UNIX grep utility extensively to search for SAS objects, are not suited for multi-line searches The utilities, in a limited way, are attempting to duplicate some of the functionality of the SAS parser; an onerous task under the best of circumstances The utilities try to make up for this limitation in the grep utility to some extent by searching for SAS objects in different ways and then harmonizing the search output from different methods A significant lacuna in our approach was that we were using only Unix utilities, which by definition do not 'know'' SAS, to parse SAS programs An interesting possibility is the use of SAS parser itself to parse the SAS programs (to be documented) and then use the SAS metadata/dictionary tables to provide information on SAS objects like permanent datasets, macros etc Once we get harmonized lists of objects, the searching can be done using SAS or UNIX utilities Using the SAS parser also minimizes the exposure to version changes in SAS Conclusion and Summary Automated generation of project wide SAS program metadata and dependency maps, especially for 'big' projects, has the potential to meet a critical need of SAS programmers The metadata and mapping should be a user friendly resource Consequently it is important to consider the volume and presentation format of the generated metadata Trademark Information SAS and SAS/MACRO software are registered trademarks or trademarks of SAS Institute Inc in the USA and other countries indicates USA registration Other brand and product names are registered trademarks or trademarks of their respective companies Acknowledgments The author wishes to thank S Kasay, DL Usavage, M M Coughlin, R Ganesan, G Havildar, N M Sene, N Rajan, M Tumelty and M Du for their comments and feedback on this paper Contact Information Your comments and questions are valued and encouraged Contact the author at: Gopal Rajagopal Senior Statistical Programmer/Analyst, Scientific Programming Merck Research Laboratories Mail stop: UG1D-80 PO Box 1000, North Wales, PA gopal_rajagopal@merckcom

Paper A Simplified and Efficient Way to Map Variable Attributes of a Clinical Data Warehouse

Paper A Simplified and Efficient Way to Map Variable Attributes of a Clinical Data Warehouse Paper 117-28 A Simplified and Efficient Way to Map Variable Attributes of a Clinical Data Warehouse Yanyun Shen, Genentech, Inc., South San Francisco ABSTRACT In the pharmaceutical industry, pooling a

More information

Best Practice for Creation and Maintenance of a SAS Infrastructure

Best Practice for Creation and Maintenance of a SAS Infrastructure Paper 2501-2015 Best Practice for Creation and Maintenance of a SAS Infrastructure Paul Thomas, ASUP Ltd. ABSTRACT The advantage of using metadata to control and maintain data and access to data on databases,

More information

Paper CC16. William E Benjamin Jr, Owl Computer Consultancy LLC, Phoenix, AZ

Paper 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 information

Why SAS Programmers Should Learn Python Too

Why SAS Programmers Should Learn Python Too PharmaSUG 2018 - Paper AD-12 ABSTRACT Why SAS Programmers Should Learn Python Too Michael Stackhouse, Covance, Inc. Day to day work can often require simple, yet repetitive tasks. All companies have tedious

More information

Using UNIX Shell Scripting to Enhance Your SAS Programming Experience

Using UNIX Shell Scripting to Enhance Your SAS Programming Experience Using UNIX Shell Scripting to Enhance Your SAS Programming Experience By James Curley SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute

More information

Automation of makefile For Use in Clinical Development Nalin Tikoo, BioMarin Pharmaceutical Inc., Novato, CA

Automation of makefile For Use in Clinical Development Nalin Tikoo, BioMarin Pharmaceutical Inc., Novato, CA Automation of makefile For Use in Clinical Development Nalin Tikoo, BioMarin Pharmaceutical Inc., Novato, CA ABSTRACT The 'make' utility is a software engineering tool for managing and maintaining computer

More information

Harmonizing CDISC Data Standards across Companies: A Practical Overview with Examples

Harmonizing CDISC Data Standards across Companies: A Practical Overview with Examples PharmaSUG 2017 - Paper DS06 Harmonizing CDISC Data Standards across Companies: A Practical Overview with Examples Keith Shusterman, Chiltern; Prathima Surabhi, AstraZeneca; Binoy Varghese, Medimmune ABSTRACT

More information

Locking SAS Data Objects

Locking SAS Data Objects 59 CHAPTER 5 Locking SAS Data Objects Introduction 59 Audience 60 About the SAS Data Hierarchy and Locking 60 The SAS Data Hierarchy 60 How SAS Data Objects Are Accessed and Used 61 Types of Locks 62 Locking

More information

Using Metadata Queries To Build Row-Level Audit Reports in SAS Visual Analytics

Using Metadata Queries To Build Row-Level Audit Reports in SAS Visual Analytics SAS6660-2016 Using Metadata Queries To Build Row-Level Audit Reports in SAS Visual Analytics ABSTRACT Brandon Kirk and Jason Shoffner, SAS Institute Inc., Cary, NC Sensitive data requires elevated security

More information

ABSTRACT MORE THAN SYNTAX ORGANIZE YOUR WORK THE SAS ENTERPRISE GUIDE PROJECT. Paper 50-30

ABSTRACT 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 information

The Submission Data File System Automating the Creation of CDISC SDTM and ADaM Datasets

The Submission Data File System Automating the Creation of CDISC SDTM and ADaM Datasets Paper AD-08 The Submission Data File System Automating the Creation of CDISC SDTM and ADaM Datasets Marcus Bloom, Amgen Inc, Thousand Oaks, CA David Edwards, Amgen Inc, Thousand Oaks, CA ABSTRACT From

More information

SAS Model Manager 2.2. Tutorials

SAS Model Manager 2.2. Tutorials SAS Model Manager 2.2 Tutorials The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2009. SAS Model Manager 2.2: Tutorials. Cary, NC: SAS Institute Inc. SAS Model Manager

More information

InfoSphere Master Data Management Reference Data Management Hub Version 10 Release 0. User s Guide GI

InfoSphere Master Data Management Reference Data Management Hub Version 10 Release 0. User s Guide GI InfoSphere Master Data Management Reference Data Management Hub Version 10 Release 0 User s Guide GI13-2637-00 InfoSphere Master Data Management Reference Data Management Hub Version 10 Release 0 User

More information

One-PROC-Away: The Essence of an Analysis Database Russell W. Helms, Ph.D. Rho, Inc.

One-PROC-Away: The Essence of an Analysis Database Russell W. Helms, Ph.D. Rho, Inc. One-PROC-Away: The Essence of an Analysis Database Russell W. Helms, Ph.D. Rho, Inc. Chapel Hill, NC RHelms@RhoWorld.com www.rhoworld.com Presented to ASA/JSM: San Francisco, August 2003 One-PROC-Away

More information

Statistics, Data Analysis & Econometrics

Statistics, 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 information

SAS/ACCESS Interface to R/3

SAS/ACCESS Interface to R/3 9.1 SAS/ACCESS Interface to R/3 User s Guide The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2004. SAS/ACCESS 9.1 Interface to R/3: User s Guide. Cary, NC: SAS Institute

More information

Using UNIX Shell Scripting to Enhance Your SAS Programming Experience

Using UNIX Shell Scripting to Enhance Your SAS Programming Experience Paper 2412-2018 Using UNIX Shell Scripting to Enhance Your SAS Programming Experience James Curley, Eliassen Group ABSTRACT This series will address three different approaches to using a combination of

More information

Scalable Access to SAS Data Billy Clifford, SAS Institute Inc., Austin, TX

Scalable Access to SAS Data Billy Clifford, SAS Institute Inc., Austin, TX Scalable Access to SAS Data Billy Clifford, SAS Institute Inc., Austin, TX ABSTRACT Symmetric multiprocessor (SMP) computers can increase performance by reducing the time required to analyze large volumes

More information

General Methods to Use Special Characters Dennis Gianneschi, Amgen Inc., Thousand Oaks, CA

General Methods to Use Special Characters Dennis Gianneschi, Amgen Inc., Thousand Oaks, CA General Methods to Use Special Characters Dennis Gianneschi, Amgen Inc., Thousand Oaks, CA ABSTRACT This paper presents three general methods to use special characters in SAS procedure output as well as

More information

SAS Strategy Management 5.2 Batch Maintenance Facility

SAS Strategy Management 5.2 Batch Maintenance Facility SAS Strategy Management 5.2 Batch Maintenance Facility User's Guide SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2010. SAS Strategy Management

More information

Working with Composite Endpoints: Constructing Analysis Data Pushpa Saranadasa, Merck & Co., Inc., Upper Gwynedd, PA

Working with Composite Endpoints: Constructing Analysis Data Pushpa Saranadasa, Merck & Co., Inc., Upper Gwynedd, PA PharmaSug2016- Paper HA03 Working with Composite Endpoints: Constructing Analysis Data Pushpa Saranadasa, Merck & Co., Inc., Upper Gwynedd, PA ABSTRACT A composite endpoint in a Randomized Clinical Trial

More information

A Thorough Introduction to 64-Bit Aggregates

A Thorough Introduction to 64-Bit Aggregates Technical Report A Thorough Introduction to 64-Bit Aggregates Shree Reddy, NetApp September 2011 TR-3786 CREATING AND MANAGING LARGER-SIZED AGGREGATES The NetApp Data ONTAP 8.0 operating system operating

More information

The Power of PROC SQL Techniques and SAS Dictionary Tables in Handling Data

The Power of PROC SQL Techniques and SAS Dictionary Tables in Handling Data Paper PO31 The Power of PROC SQL Techniques and SAS Dictionary Tables in Handling Data MaryAnne DePesquo Hope, Health Services Advisory Group, Phoenix, Arizona Fen Fen Li, Health Services Advisory Group,

More information

BI-09 Using Enterprise Guide Effectively Tom Miron, Systems Seminar Consultants, Madison, WI

BI-09 Using Enterprise Guide Effectively Tom Miron, Systems Seminar Consultants, Madison, WI Paper BI09-2012 BI-09 Using Enterprise Guide Effectively Tom Miron, Systems Seminar Consultants, Madison, WI ABSTRACT Enterprise Guide is not just a fancy program editor! EG offers a whole new window onto

More information

Upholding Ethics and Integrity: A macro-based approach to detect plagiarism in programming

Upholding Ethics and Integrity: A macro-based approach to detect plagiarism in programming CT13 Upholding Ethics and Integrity: A macro-based approach to detect plagiarism in programming Praveen Kumar, Ephicacy, Bangalore, India Sridhar Vijendra, Ephicacy, Bangalore, India ABSTRACT Good Clinical

More information

How to Create Data-Driven Lists

How to Create Data-Driven Lists Paper 9540-2016 How to Create Data-Driven Lists Kate Burnett-Isaacs, Statistics Canada ABSTRACT As SAS programmers we often want our code or program logic to be driven by the data at hand, rather than

More information

Create Metadata Documentation using ExcelXP

Create Metadata Documentation using ExcelXP Paper AD13 Create Metadata Documentation using ExcelXP Christine Teng, Merck Research Labs, Merck & Co., Inc., Rahway, NJ ABSTRACT The purpose of the metadata documentation is two-fold. First, it facilitates

More information

Wonderful Unix SAS Scripts: SAS Quickies for Dummies Raoul Bernal, Amgen Inc., Thousand Oaks, CA

Wonderful Unix SAS Scripts: SAS Quickies for Dummies Raoul Bernal, Amgen Inc., Thousand Oaks, CA PharmaSUG2010 - Paper CC25 Wonderful Unix SAS Scripts: SAS Quickies for Dummies Raoul Bernal, Amgen Inc., Thousand Oaks, CA ABSTRACT Repeated simple SAS jobs can be executed online and in real-time to

More information

Why Hash? Glen Becker, USAA

Why Hash? Glen Becker, USAA Why Hash? Glen Becker, USAA Abstract: What can I do with the new Hash object in SAS 9? Instead of focusing on How to use this new technology, this paper answers Why would I want to? It presents the Big

More information

SAS Visual Analytics Environment Stood Up? Check! Data Automatically Loaded and Refreshed? Not Quite

SAS 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 information

How Managers and Executives Can Leverage SAS Enterprise Guide

How Managers and Executives Can Leverage SAS Enterprise Guide Paper 8820-2016 How Managers and Executives Can Leverage SAS Enterprise Guide ABSTRACT Steven First and Jennifer First-Kluge, Systems Seminar Consultants, Inc. SAS Enterprise Guide is an extremely valuable

More information

PhUSE Giuseppe Di Monaco, UCB BioSciences GmbH, Monheim, Germany

PhUSE Giuseppe Di Monaco, UCB BioSciences GmbH, Monheim, Germany PhUSE 2014 Paper PP01 Reengineering a Standard process from Single to Environment Macro Management Giuseppe Di Monaco, UCB BioSciences GmbH, Monheim, Germany ABSTRACT Statistical programming departments

More information

MIS Reporting in the Credit Card Industry

MIS Reporting in the Credit Card Industry MIS Reporting in the Credit Card Industry Tom Hotard, Acxiom Corporation ABSTRACT In credit card acquisition campaigns, it is important to have the ability to keep track of various types of counts. After

More information

Liberate, a component-based service orientated reporting architecture

Liberate, a component-based service orientated reporting architecture Paper TS05 PHUSE 2006 Liberate, a component-based service orientated reporting architecture Paragon Global Services Ltd, Huntingdon, U.K. - 1 - Contents CONTENTS...2 1. ABSTRACT...3 2. INTRODUCTION...3

More information

PESIT Bangalore South Campus

PESIT Bangalore South Campus INTERNAL ASSESSMENT TEST - 2 Date : 20/09/2016 Max Marks : 0 Subject & Code : Unix Shell Programming (15CS36) Section : 3 rd Sem ISE/CSE Name of faculty : Prof Ajoy Time : 11:30am to 1:00pm SOLUTIONS 1

More information

Deployment for SAS 9.2 and Beyond Mark Schneider, SAS Institute Inc., Cary, NC

Deployment for SAS 9.2 and Beyond Mark Schneider, SAS Institute Inc., Cary, NC Paper 3875-2008 Deployment for SAS 9.2 and Beyond Mark Schneider, SAS Institute Inc., Cary, NC ABSTRACT As the SAS architecture has grown to serve the complex and distributed challenges of enterprise-wide

More information

SAS Application to Automate a Comprehensive Review of DEFINE and All of its Components

SAS Application to Automate a Comprehensive Review of DEFINE and All of its Components PharmaSUG 2017 - Paper AD19 SAS Application to Automate a Comprehensive Review of DEFINE and All of its Components Walter Hufford, Vincent Guo, and Mijun Hu, Novartis Pharmaceuticals Corporation ABSTRACT

More information

QLIKVIEW ARCHITECTURAL OVERVIEW

QLIKVIEW ARCHITECTURAL OVERVIEW QLIKVIEW ARCHITECTURAL OVERVIEW A QlikView Technology White Paper Published: October, 2010 qlikview.com Table of Contents Making Sense of the QlikView Platform 3 Most BI Software Is Built on Old Technology

More information

ET01. LIBNAME libref <engine-name> <physical-file-name> <libname-options>; <SAS Code> LIBNAME libref CLEAR;

ET01. LIBNAME libref <engine-name> <physical-file-name> <libname-options>; <SAS Code> LIBNAME libref CLEAR; ET01 Demystifying the SAS Excel LIBNAME Engine - A Practical Guide Paul A. Choate, California State Developmental Services Carol A. Martell, UNC Highway Safety Research Center ABSTRACT This paper is a

More information

Figure 1. Table shell

Figure 1. Table shell Reducing Statisticians Programming Load: Automated Statistical Analysis with SAS and XML Michael C. Palmer, Zurich Biostatistics, Inc., Morristown, NJ Cecilia A. Hale, Zurich Biostatistics, Inc., Morristown,

More information

SAS File Management. Improving Performance CHAPTER 37

SAS File Management. Improving Performance CHAPTER 37 519 CHAPTER 37 SAS File Management Improving Performance 519 Moving SAS Files Between Operating Environments 520 Converting SAS Files 520 Repairing Damaged Files 520 Recovering SAS Data Files 521 Recovering

More information

using and Understanding Formats

using and Understanding Formats using and Understanding SAS@ Formats Howard Levine, DynaMark, Inc. Oblectives The purpose of this paper is to enable you to use SAS formats to perform the following tasks more effectively: Improving the

More information

Pharmaceuticals, Health Care, and Life Sciences. An Approach to CDISC SDTM Implementation for Clinical Trials Data

Pharmaceuticals, Health Care, and Life Sciences. An Approach to CDISC SDTM Implementation for Clinical Trials Data An Approach to CDISC SDTM Implementation for Clinical Trials Data William T. Chen, Merck Research Laboratories, Rahway, NJ Margaret M. Coughlin, Merck Research Laboratories, Rahway, NJ ABSTRACT The Clinical

More information

Hands-Off SAS Administration Using Batch Tools to Make Your Life Easier

Hands-Off SAS Administration Using Batch Tools to Make Your Life Easier Paper SAS1857-2015 Hands-Off SAS Administration Using Batch Tools to Make Your Life Easier ABSTRACT Eric Bourn, Amy Peters, and Bryan Wolfe, SAS Institute Inc., Cary, NC As a SAS Intelligence Platform

More information

Patricia Guldin, Merck & Co., Inc., Kenilworth, NJ USA

Patricia Guldin, Merck & Co., Inc., Kenilworth, NJ USA SESUG 2015 Paper AD-35 Programming Compliance Made Easy with a Time Saving Toolbox Patricia Guldin, Merck & Co., Inc., Kenilworth, NJ USA ABSTRACT Programmers perform validation in accordance with established

More information

An Annotated Guide: The New 9.1, Free & Fast SPDE Data Engine Russ Lavery, Ardmore PA, Independent Contractor Ian Whitlock, Kennett Square PA

An Annotated Guide: The New 9.1, Free & Fast SPDE Data Engine Russ Lavery, Ardmore PA, Independent Contractor Ian Whitlock, Kennett Square PA An Annotated Guide: The New 9.1, Free & Fast SPDE Data Engine Russ Lavery, Ardmore PA, Independent Contractor Ian Whitlock, Kennett Square PA ABSTRACT SAS has been working hard to decrease clock time to

More information

Real Time Clinical Trial Oversight with SAS

Real Time Clinical Trial Oversight with SAS PharmaSUG 2017 - Paper DA01 Real Time Clinical Trial Oversight with SAS Ashok Gunuganti, Trevena ABSTRACT A clinical trial is an expensive and complex undertaking with multiple teams working together to

More information

ASG WHITE PAPER DATA INTELLIGENCE. ASG s Enterprise Data Intelligence Solutions: Data Lineage Diving Deeper

ASG WHITE PAPER DATA INTELLIGENCE. ASG s Enterprise Data Intelligence Solutions: Data Lineage Diving Deeper THE NEED Knowing where data came from, how it moves through systems, and how it changes, is the most critical and most difficult task in any data management project. If that process known as tracing data

More information

Using SAS Files. Introduction CHAPTER 5

Using SAS Files. Introduction CHAPTER 5 123 CHAPTER 5 Using SAS Files Introduction 123 SAS Data Libraries 124 Accessing SAS Files 124 Advantages of Using Librefs Rather than OpenVMS Logical Names 124 Assigning Librefs 124 Using the LIBNAME Statement

More information

CC13 An Automatic Process to Compare Files. Simon Lin, Merck & Co., Inc., Rahway, NJ Huei-Ling Chen, Merck & Co., Inc., Rahway, NJ

CC13 An Automatic Process to Compare Files. Simon Lin, Merck & Co., Inc., Rahway, NJ Huei-Ling Chen, Merck & Co., Inc., Rahway, NJ CC13 An Automatic Process to Compare Files Simon Lin, Merck & Co., Inc., Rahway, NJ Huei-Ling Chen, Merck & Co., Inc., Rahway, NJ ABSTRACT Comparing different versions of output files is often performed

More information

Creating a Patient Profile using CDISC SDTM Marc Desgrousilliers, Clinovo, Sunnyvale, CA Romain Miralles, Clinovo, Sunnyvale, CA

Creating a Patient Profile using CDISC SDTM Marc Desgrousilliers, Clinovo, Sunnyvale, CA Romain Miralles, Clinovo, Sunnyvale, CA Creating a Patient Profile using CDISC SDTM Marc Desgrousilliers, Clinovo, Sunnyvale, CA Romain Miralles, Clinovo, Sunnyvale, CA ABSTRACT CDISC SDTM data is the standard format requested by the FDA for

More information

Parallelizing Windows Operating System Services Job Flows

Parallelizing Windows Operating System Services Job Flows ABSTRACT SESUG Paper PSA-126-2017 Parallelizing Windows Operating System Services Job Flows David Kratz, D-Wise Technologies Inc. SAS Job flows created by Windows operating system services have a problem:

More information

Guide Users along Information Pathways and Surf through the Data

Guide Users along Information Pathways and Surf through the Data Guide Users along Information Pathways and Surf through the Data Stephen Overton, Overton Technologies, LLC, Raleigh, NC ABSTRACT Business information can be consumed many ways using the SAS Enterprise

More information

The Make Utility. Independent compilation. Large programs are difficult to maintain. Problem solved by breaking the program into separate files

The Make Utility. Independent compilation. Large programs are difficult to maintain. Problem solved by breaking the program into separate files The Make Utility Independent compilation Large programs are difficult to maintain Problem solved by breaking the program into separate files Different functions placed in different files The main function

More information

Using Data Set Options in PROC SQL Kenneth W. Borowiak Howard M. Proskin & Associates, Inc., Rochester, NY

Using Data Set Options in PROC SQL Kenneth W. Borowiak Howard M. Proskin & Associates, Inc., Rochester, NY Using Data Set Options in PROC SQL Kenneth W. Borowiak Howard M. Proskin & Associates, Inc., Rochester, NY ABSTRACT Data set options are an often over-looked feature when querying and manipulating SAS

More information

Lecture 5. Essential skills for bioinformatics: Unix/Linux

Lecture 5. Essential skills for bioinformatics: Unix/Linux Lecture 5 Essential skills for bioinformatics: Unix/Linux UNIX DATA TOOLS Text processing with awk We have illustrated two ways awk can come in handy: Filtering data using rules that can combine regular

More information

Creating an ADaM Data Set for Correlation Analyses

Creating an ADaM Data Set for Correlation Analyses PharmaSUG 2018 - Paper DS-17 ABSTRACT Creating an ADaM Data Set for Correlation Analyses Chad Melson, Experis Clinical, Cincinnati, OH The purpose of a correlation analysis is to evaluate relationships

More information

Once the data warehouse is assembled, its customers will likely

Once the data warehouse is assembled, its customers will likely Clinical Data Warehouse Development with Base SAS Software and Common Desktop Tools Patricia L. Gerend, Genentech, Inc., South San Francisco, California ABSTRACT By focusing on the information needed by

More information

LST in Comparison Sanket Kale, Parexel International Inc., Durham, NC Sajin Johnny, Parexel International Inc., Durham, NC

LST 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 information

A Thorough Introduction to 64-Bit Aggregates

A Thorough Introduction to 64-Bit Aggregates TECHNICAL REPORT A Thorough Introduction to 64-Bit egates Uday Boppana, NetApp March 2010 TR-3786 CREATING AND MANAGING LARGER-SIZED AGGREGATES NetApp Data ONTAP 8.0 7-Mode supports a new aggregate type

More information

Optimizing System Performance

Optimizing System Performance 243 CHAPTER 19 Optimizing System Performance Definitions 243 Collecting and Interpreting Performance Statistics 244 Using the FULLSTIMER and STIMER System Options 244 Interpreting FULLSTIMER and STIMER

More information

PharmaSUG China Mina Chen, Roche (China) Holding Ltd.

PharmaSUG China Mina Chen, Roche (China) Holding Ltd. PharmaSUG China 2017-50 Writing Efficient Queries in SAS Using PROC SQL with Teradata Mina Chen, Roche (China) Holding Ltd. ABSTRACT The emergence of big data, as well as advancements in data science approaches

More information

A SAS/AF Application for Parallel Extraction, Transformation, and Scoring of a Very Large Database

A SAS/AF Application for Parallel Extraction, Transformation, and Scoring of a Very Large Database Paper 11 A SAS/AF Application for Parallel Extraction, Transformation, and Scoring of a Very Large Database Daniel W. Kohn, Ph.D., Torrent Systems Inc., Cambridge, MA David L. Kuhn, Ph.D., Innovative Idea

More information

Organizing Deliverables for Clinical Trials The Concept of Analyses and its Implementation in EXACT

Organizing Deliverables for Clinical Trials The Concept of Analyses and its Implementation in EXACT Paper AD05 Organizing Deliverables for Clinical Trials The Concept of Analyses and its Implementation in EXACT Hansjörg Frenzel, PRA International, Mannheim, Germany ABSTRACT Clinical trials can have deliverables

More information

The Automated Metadata-driven Table Generation Process (TFLGen) at Amgen Inc.

The Automated Metadata-driven Table Generation Process (TFLGen) at Amgen Inc. Paper TS08 The Automated Metadata-driven Table Generation Process (TFLGen) at Amgen Inc. Neil Lyon Amgen Inc., Uxbridge, UK The Problem Existing libraries of standard reporting code are 10+ years old They

More information

SAS Clinical Data Integration 2.4

SAS Clinical Data Integration 2.4 SAS Clinical Data Integration 2.4 User s Guide SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2013. SAS Clinical Data Integration 2.4: User's Guide.

More information

If you re using a Mac, follow these commands to prepare your computer to run these demos (and any other analysis you conduct with the Audio BNC

If you re using a Mac, follow these commands to prepare your computer to run these demos (and any other analysis you conduct with the Audio BNC If you re using a Mac, follow these commands to prepare your computer to run these demos (and any other analysis you conduct with the Audio BNC sample). All examples use your Workshop directory (e.g. /Users/peggy/workshop)

More information

Version Monitoring Agent User s Guide SC

Version Monitoring Agent User s Guide SC Tivoli IBM Tivoli Advanced Catalog Management for z/os Version 02.01.00 Monitoring Agent User s Guide SC23-7974-00 Tivoli IBM Tivoli Advanced Catalog Management for z/os Version 02.01.00 Monitoring Agent

More information

Exporting Variable Labels as Column Headers in Excel using SAS Chaitanya Chowdagam, MaxisIT Inc., Metuchen, NJ

Exporting Variable Labels as Column Headers in Excel using SAS Chaitanya Chowdagam, MaxisIT Inc., Metuchen, NJ Paper 74924-2011 Exporting Variable Labels as Column Headers in Excel using SAS Chaitanya Chowdagam, MaxisIT Inc., Metuchen, NJ ABSTRACT Excel output is the desired format for most of the ad-hoc reports

More information

Table of Contents: Microsoft Power Tools for Data Analysis #15 Comprehensive Introduction to Power Pivot & DAX. Notes from Video:

Table of Contents: Microsoft Power Tools for Data Analysis #15 Comprehensive Introduction to Power Pivot & DAX. Notes from Video: Microsoft Power Tools for Data Analysis #15 Comprehensive Introduction to Power Pivot & DAX Table of Contents: Notes from Video: 1) Standard PivotTable or Data Model PivotTable?... 3 2) Excel Power Pivot

More information

SAS Scalable Performance Data Server 4.45

SAS Scalable Performance Data Server 4.45 SAS Scalable Performance Data Server 4.45 User s Guide SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2008. SAS Scalable Performance Data Server

More information

Customizing SAS Data Integration Studio to Generate CDISC Compliant SDTM 3.1 Domains

Customizing SAS Data Integration Studio to Generate CDISC Compliant SDTM 3.1 Domains Paper AD17 Customizing SAS Data Integration Studio to Generate CDISC Compliant SDTM 3.1 Domains ABSTRACT Tatyana Kovtun, Bayer HealthCare Pharmaceuticals, Montville, NJ John Markle, Bayer HealthCare Pharmaceuticals,

More information

Minsoo Ryu. College of Information and Communications Hanyang University.

Minsoo Ryu. College of Information and Communications Hanyang University. Software Reuse and Component-Based Software Engineering Minsoo Ryu College of Information and Communications Hanyang University msryu@hanyang.ac.kr Software Reuse Contents Components CBSE (Component-Based

More information

Copy That! Using SAS to Create Directories and Duplicate Files

Copy 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 information

Service Manager. Ops Console On-Premise User Guide

Service Manager. Ops Console On-Premise User Guide Service Manager powered by HEAT Ops Console On-Premise User Guide 2017.2.1 Copyright Notice This document contains the confidential information and/or proprietary property of Ivanti, Inc. and its affiliates

More information

Automating the Production of Formatted Item Frequencies using Survey Metadata

Automating the Production of Formatted Item Frequencies using Survey Metadata Automating the Production of Formatted Item Frequencies using Survey Metadata Tim Tilert, Centers for Disease Control and Prevention (CDC) / National Center for Health Statistics (NCHS) Jane Zhang, CDC

More information

SAS 9.2 Enterprise Business Intelligence Audit and Performance Measurement for UNIX Environments. Last Updated: May 23, 2012

SAS 9.2 Enterprise Business Intelligence Audit and Performance Measurement for UNIX Environments. Last Updated: May 23, 2012 SAS 9.2 Enterprise Business Intelligence Audit and Performance Measurement for UNIX Environments Last Updated: May 23, 2012 Copyright Notice The correct bibliographic citation for this manual is as follows:

More information

Using SAS to Control and Automate a Multi SAS Program Process Patrick Halpin, dunnhumby USA, Cincinnati, OH

Using SAS to Control and Automate a Multi SAS Program Process Patrick Halpin, dunnhumby USA, Cincinnati, OH Paper T05-2007 Using SAS to Control and Automate a Multi SAS Program Process Patrick Halpin, dunnhumby USA, Cincinnati, OH ABSTRACT Often times a project is comprised of many SAS programs that need to

More information

TABLE OF CONTENTS. TECHNICAL SUPPORT APPENDIX Appendix A Formulas And Cell Links Appendix B Version 1.1 Formula Revisions...

TABLE OF CONTENTS. TECHNICAL SUPPORT APPENDIX Appendix A Formulas And Cell Links Appendix B Version 1.1 Formula Revisions... SPARC S INSTRUCTIONS For Version 1.1 UNITED STATES DEPARTMENT OF AGRICULTURE Forest Service By Todd Rivas December 29, 1999 TABLE OF CONTENTS WHAT IS SPARC S?... 1 Definition And History... 1 Features...

More information

Working with Mailbox Manager

Working with Mailbox Manager Working with Mailbox Manager A user guide for Mailbox Manager supporting the Message Storage Server component of the Avaya S3400 Message Server Mailbox Manager Version 5.0 February 2003 Copyright 2003

More information

Cutting the SAS LOG down to size Malachy J. Foley, University of North Carolina at Chapel Hill, NC

Cutting the SAS LOG down to size Malachy J. Foley, University of North Carolina at Chapel Hill, NC Paper SY05 Cutting the SAS LOG down to size Malachy J. Foley, University of North Carolina at Chapel Hill, NC ABSTRACT Looking through a large SAS LOG (say 250 pages) for NOTE's and WARNING's that might

More information

APPENDIX 4 Migrating from QMF to SAS/ ASSIST Software. Each of these steps can be executed independently.

APPENDIX 4 Migrating from QMF to SAS/ ASSIST Software. Each of these steps can be executed independently. 255 APPENDIX 4 Migrating from QMF to SAS/ ASSIST Software Introduction 255 Generating a QMF Export Procedure 255 Exporting Queries from QMF 257 Importing QMF Queries into Query and Reporting 257 Alternate

More information

MEMO: Using UNIX shell commands to recode long identifiers, with application to STATA

MEMO: Using UNIX shell commands to recode long identifiers, with application to STATA MEMO: Using UNIX shell commands to recode long identifiers, with application to STATA Andrew Noymer 7 September 2004 1 The Problem Many datasets contain unique identifiers (UIDs) that are very large integers

More information

SAS BI Dashboard 3.1. User s Guide Second Edition

SAS BI Dashboard 3.1. User s Guide Second Edition SAS BI Dashboard 3.1 User s Guide Second Edition The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2007. SAS BI Dashboard 3.1: User s Guide, Second Edition. Cary, NC:

More information

GMI-Cmd.exe Reference Manual GMI Command Utility General Management Interface Foundation

GMI-Cmd.exe Reference Manual GMI Command Utility General Management Interface Foundation GMI-Cmd.exe Reference Manual GMI Command Utility General Management Interface Foundation http://www.gmi-foundation.org Program Description The "GMI-Cmd.exe" program is a standard part of the GMI program

More information

Data Manipulations Using Arrays and DO Loops Patricia Hall and Jennifer Waller, Medical College of Georgia, Augusta, GA

Data Manipulations Using Arrays and DO Loops Patricia Hall and Jennifer Waller, Medical College of Georgia, Augusta, GA Paper SBC-123 Data Manipulations Using Arrays and DO Loops Patricia Hall and Jennifer Waller, Medical College of Georgia, Augusta, GA ABSTRACT Using public databases for data analysis presents a unique

More information

Why organizations need MDR system to manage clinical metadata?

Why organizations need MDR system to manage clinical metadata? PharmaSUG 2018 - Paper SS-17 Why organizations need MDR system to manage clinical metadata? Abhinav Jain, Ephicacy Consulting Group Inc. ABSTRACT In the last decade, CDISC standards undoubtedly have transformed

More information

SAS 9.2 Enterprise Business Intelligence Audit and Performance Measurement for Windows Environments. Last Updated: May 23, 2012

SAS 9.2 Enterprise Business Intelligence Audit and Performance Measurement for Windows Environments. Last Updated: May 23, 2012 SAS 9.2 Enterprise Business Intelligence Audit and Performance Measurement for Windows Environments Last Updated: May 23, 2012 Copyright Notice The correct bibliographic citation for this manual is as

More information

Document and Enhance Your SAS Code, Data Sets, and Catalogs with SAS Functions, Macros, and SAS Metadata. Louise S. Hadden. Abt Associates Inc.

Document and Enhance Your SAS Code, Data Sets, and Catalogs with SAS Functions, Macros, and SAS Metadata. Louise S. Hadden. Abt Associates Inc. Document and Enhance Your SAS Code, Data Sets, and Catalogs with SAS Functions, Macros, and SAS Metadata Louise S. Hadden Abt Associates Inc. Louise Hadden has been using and loving SAS since the days

More information

(Refer Slide Time: 01:25)

(Refer Slide Time: 01:25) Computer Architecture Prof. Anshul Kumar Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture - 32 Memory Hierarchy: Virtual Memory (contd.) We have discussed virtual

More information

One Project, Two Teams: The Unblind Leading the Blind

One Project, Two Teams: The Unblind Leading the Blind ABSTRACT PharmaSUG 2017 - Paper BB01 One Project, Two Teams: The Unblind Leading the Blind Kristen Reece Harrington, Rho, Inc. In the pharmaceutical world, there are instances where multiple independent

More information

DataFlux Migration Guide 2.7

DataFlux Migration Guide 2.7 DataFlux Migration Guide 2.7 The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2017. DataFlux Migration Guide 2.7. Cary, NC: SAS Institute Inc. DataFlux Migration Guide

More information

Essential Skills for Bioinformatics: Unix/Linux

Essential Skills for Bioinformatics: Unix/Linux Essential Skills for Bioinformatics: Unix/Linux SHELL SCRIPTING Overview Bash, the shell we have used interactively in this course, is a full-fledged scripting language. Unlike Python, Bash is not a general-purpose

More information

Creating Compound Objects (Documents, Monographs Postcards, and Picture Cubes)

Creating Compound Objects (Documents, Monographs Postcards, and Picture Cubes) Creating Compound Objects (Documents, Monographs Postcards, and Picture Cubes) A compound object is two or more files bound together with a CONTENTdm-created XML structure. When you create and add compound

More information

Using LINUX a BCMB/CHEM 8190 Tutorial Updated (1/17/12)

Using LINUX a BCMB/CHEM 8190 Tutorial Updated (1/17/12) Using LINUX a BCMB/CHEM 8190 Tutorial Updated (1/17/12) Objective: Learn some basic aspects of the UNIX operating system and how to use it. What is UNIX? UNIX is the operating system used by most computers

More information

INFORMIX-Universal Web Connect

INFORMIX-Universal Web Connect INFORMIX-Universal Web Connect Installation Guide for UNIX Version 4.11 May 1998 Part No. 000-5068 Published by INFORMIX Press Informix Software, Inc. 4100 Bohannon Drive Menlo Park, CA 94025-1032 Copyright

More information

Migration to SAS Grid: Steps, Successes, and Obstacles for Performance Qualification Script Testing

Migration to SAS Grid: Steps, Successes, and Obstacles for Performance Qualification Script Testing PharmaSUG 2017 - Paper AD16 Migration to SAS Grid: Steps, Successes, and Obstacles for Performance Qualification Script Testing Amanda Lopuski, Chiltern, King of Prussia, PA Yongxuan Mike Tan, Chiltern,

More information

SAS Factory Miner 14.2: User s Guide

SAS Factory Miner 14.2: User s Guide SAS Factory Miner 14.2: User s Guide SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2016. SAS Factory Miner 14.2: User s Guide. Cary, NC: SAS Institute

More information

SAS Macro Technique for Embedding and Using Metadata in Web Pages. DataCeutics, Inc., Pottstown, PA

SAS 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 information

SAS ENTERPRISE GUIDE USER INTERFACE

SAS ENTERPRISE GUIDE USER INTERFACE Paper 294-2008 What s New in the 4.2 releases of SAS Enterprise Guide and the SAS Add-In for Microsoft Office I-kong Fu, Lina Clover, and Anand Chitale, SAS Institute Inc., Cary, NC ABSTRACT SAS Enterprise

More information