I need to set VALIDVARNAME=ANY globally. SAS docs states one of the option to set is configuration
I have set it in SASApp sasv9_usermods.cfg as
-VALIDVARNAME = ANY
Also in SAS Foundation (nls --> u8 --> sasv9.cfg) as
-VALIDVARNAME=ANY
Yet when I check via PROC OPTIONS option=validvarname value; run; I get V7
Option Value Information For SAS Option VALIDVARNAME
Value: V7
Scope: IOM ROOT COMP ENV
How option value set: Options Statement
Am I reading the SAS doc wrong? Or am I setting the value in *cfg files wrong? Or do I need to set a cfg file?
Basic I know ... 🙄
TIA
-S
I don't see anything wrong with the way you are setting the option. So unless you have an OPTIONS statement running after the CONFIG say in an AUTOEXEC or other SAS program I can't explain the behaviour you are seeing - as long as you started a new SAS session after making the changes.
Your client (Enterprise Guide or SAS Studio) also has settings for this, and will submit code before every execution to set the option accordingly.
Hi Kurt I am aware, I am aware of autoexec.sas options as well. However the EG options, we do not wish to chase each end user etc. Set it once, document it and forget it. Anyhow, the concern is why if the SAS doc says configuration is a valid place that it is not working. I checked precedence of cfg and I think I have the right sasv9_usermods.cfg selected (app level). So am I entering the value wrong? Anyone?
TIA
-S
As Kurt said, your client can submit wrapper code to change this option. It's the same as a user submitting code to change the option.
In EG, there is an option to see the 'wrapper code' that is generated by EG in the log. I find that helpful. I don't know if Studio has the same option. If you see an options statement there, resetting validvarname, that will confirm it is the source of your problem.
Another way to test would be to batch submit a SAS job (outside of EG/studio) and check the value of validvarname. A clean batch job should reflect the settings from your config or autoexec.
@shoin wrote:
Anyhow, the concern is why if the SAS doc says configuration is a valid place that it is not working.
Because it is an option which can be set anytime, not only at startup.
Set the option for EG (it's in one of the XML configuration files of EG) in the package your softwsre distribution system uses, so it is at least set correctly when it is installed. After that, it's up to your end users to set it or not.
Thank you all for your time and sharing your knowledge, I appreciate it.
@SASKiwi That is the issue, no autoexec, I spent much time checking for these items all my cfg are install time and usermod.cfg are empty/default.
@Kurt_Bremser the wrapper options I see are
OPTIONS PAGENO=MIN;
OPTIONS DEV=PNG;
options(rolap="on")
Nothing that I see that is restrictive. Also, the whole idea of SASApp --> sasv9_usermods.cfg is to be able to specify some custom options at that level for all relevant components. I also on my compute node, used SAS94 (BASE editor) same, VALIDVARNAME=v7. A regular puzzle.
I will keep putzing around.
If you are using SAS/Studio or Enterprise Guide to connect to a SAS application server then there are two more things to check.
1) Is make sure that the configuration file(s) used by the application server have the right setting. Those files are probably different than the ones used when you just run SAS from the command line.
2) Make sure you have re-started the application server since you changed the configuration file.
How to do either I have no idea, but SAS Support should be able to help you (or help your SAS admin).
Thank you Tom for your time & suggestion. The SASApp --> sasv9_usermods.cfg has some -WORK and other options listed and they work fine (validated via proc options). This is where I added the VALIDVARNAME as well.
I could restart Objectspawner per your second suggestion. I will give it a try.
TY
-S
As an EG user under Tools->options-Data, I have the options:
It looks like EG sends the option to the SAS session when it starts. So If you change this option while EG is open, you get:
I don't think you can see the the connection string / command that EG uses to create the session. But I'm guessing validvarname gets passed as an option in that string.
You might want to check this option, or similar in Studio, as clearly it is designed to allow users to over-ride the default settings on the server.
The SAS Users Group for Administrators (SUGA) is open to all SAS administrators and architects who install, update, manage or maintain a SAS deployment.
SAS technical trainer Erin Winters shows you how to explore assets, create new data discovery agents, schedule data discovery agents, and much more.
Find more tutorials on the SAS Users YouTube channel.