- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
I am running sas 9.4 on grid platform. I want to get the value of the path of my sas program automatically in sas. I use the below code but it gives me the sas workspace location and not my user directory where my program is saved. Any ideas?
%put The current program is %sysfunc(getoption(sysin));
/gridwork/userid/SASGSUB-2017-01-12_13.05.07.758_abc/abc.sas
insted of this I want path of my directory where abc.sas is actually saved.
Thanks,
Santosh
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
This may work:
%sysget(SAS_EXECFILEPATH)
It is the result of a macro function so could be used as:
title "Program name: %sysget(SAS_EXECFILEPATH)";
or
%let File = %sysget(SAS_EXECFILEPATH);
It returns the path and name after a file is saved in base SAS. I don't know if it will work in a grid environment.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
@SmithCJGVSU - Why do you think a new SAS server session will somehow know where your SAS programs are stored if you haven't identified any of these programs to SAS first? A brand-new SAS session will only know the location of where it was started from and nothing about what programs you want it to run.
I find it useful to set up a macro variable containing the folder location of the required SAS application in a program controlling that application.