05-06-2014 12:40 PM
Our libnames change approximately quarterly to reflect data refreshes so it is clear what version of data is being used. This inevitably leads to someone forgetting to edit a libname and not getting the current version of data. I have been asked to automate the libname definitions so the current ones are always assigned. We have SAS 9.4 and EG 6.1.
I haven't messed with configuring SAS in many years, and it was simpler then. Would you just write an autoexec.sas which %included libname definitions from an file on the server? And can EG take a similar autoexec or do I really have to set up a user-specific one on each machine?
If anyone has cautionary tales about the need to sell my boss on a different approach, please let me know.
05-06-2014 01:18 PM
There are even more options to choose from. The mentione lev-\appserver\- file-structrure on the OS level has a rather complex structure with nesting for autoexec / config / os-scripting.
Doing the necessary modifications at this level is dictating that each appserver contect has a special meaning. Of course you can combine this with some user overwrites giving more freedom.
For formats macro-s and more you will need this OS configuration file approach.Within the autoexec/scritping approach you could implement logic for shifting dates, or more kind of those. That is not possible with metadata only definitions. The approach is similar as the old dates but done centrally.
Other people mostly with an OLTP DBA background are wanting the definition including the physical naming as only metadata defined. The behavior is a little-bit different when you are limited to a webbased predefined code (no analytics) as one were analytics is the major goal. When you can force only predefined code usage and only metadata bound access you could try to control (in fact overrule) OS security. As a chain is as strong as the weakest shackle ....
Some links of blogs: