Editor's note: This post was updated on 8/5/16.
“One time a fellow came up to me and said, ‘Tell me something unique about you,” said David Chapman, of Chapman Analytics, “I said, ‘I used SAS when SAS was free.” Needless to say, Chapman has been using SAS for a long time, and today, he imparted some of the knowledge he’s gained about things every administrator – or anyone who calls SAS Technical Support – should know: the SAS version installed on the computer, the SAS components you are using and the components available to you but not yet installed.
According to Chapman, the SAS software that you are using has been set up by someone else. “If you run into a problem, and you call SAS Technical Support, they’ll ask for this information,” said Chapman. So, how do you find it?
Some basic information that you may be interested in:
- SAS software is licensed to organizations.
- Licenses expire.
- Some products that are licensed may not be installed.
- Problems may occur with the software – some were inherent, and others were caused by changes after development.
- Many of the problems have been corrected with Hot Fixes or Maintenance Releases.
Since some organizations don’t apply the Hot Fixes and Maintenance Releases, it is important for you to know what has been updated and what is missing.
“The log will always tell you what version of SAS you are using,” said Chapman. (Look at the top of the log.) “It will often tell you what machine you are on.”
In Chapman’s NESUG (NorthEast SAS Users Group) presentation, Determining What SAS Version and Components Are Available (MA01), he uses a user-defined macro, but in the paper he discusses system macro variables. "%PUT_ALL_; will list all of the SAS-supplied system macro variables,” he said. “I would use these to create a little macro that tells me what version I’m using. I also have companion macros to learn ‘who I am’ and ‘where I am.’ I make them a part of my macro library. This comes in really handy if you are using a remote computer.”
Four reports you can create:
PROC SETINIT – This is an undocumented procedure. Works in all versions of SAS. It tells you what’s licensed and the expiration dates.
PROC PRODUCT_STATUS – Sometimes, SAS products may be licensed, but not installed. For instance, if you are not actively using the product, you may not want to use the disk space. This procedure will tell you what is installed. “In some ways, that is a much more practical PROC,” Chapman said. Both PROC SETINIT and PROC PRODUCT_STATUS run very quickly; it’s almost instantaneous. And they will write the output to your log.”
VIEWREGISTRY Function – In Windows, this function contains much of the information that you need. It produces output on what you are, but requires a reasonable understanding of JAVA and SAS Register. (Look at SAS Usage Note 35968 for more information.)
SASINSTALLREPORTER– This is a SAS-written macro (review SAS Usage Note 20390 to download the code.) that gives you a comprehensive report of your system. “It’s very straightforward; you can download it and pop it into your editor and submit it, and it generates a report,” he explained. “I have taken the macro and put that in my local macro library.”
The SASINSTALLREPORTER program generates nine tables:
- Repeats the information found when using PROC SETINIT.
- A basic repeat of PROC PRODUCT_STATUS.
- Lists all Hot Fixes that have been added and what the Hot Fix was. ()
- Tells which SAS applications are on your system.
- Repeat of PROC PRODUCT_STATUS.
- SAS Java environment installation information – problems could occur when you are not using the correct version of JAVA.
- Tells the SAS version that you are using.
- Information about deployment – including orders and configured servers.
- Detects multiple versions of SAS and produces a separate report for each.
Chapman sent the audience off with homework. He said, “When you go back to the office, do several things: Run PROC SETINIT, run PROC PRODUCT_STATUS and look at the results. Download SASINSTALLREPORTER from the SAS website, put it into your editor and see what you get.”
He said that these tools are handy to have and particularly useful are PROC SETINIT and PROC PRODUCT_STATUS because they are available on any computer that is running SAS.