Goodluck,
As a user of SAS in a company that can't always upgrade to the newest version immediately, I commiserate with you.
Looks like your learning SAS. Temp and permanent libraries are an important issue, and I've know I've developed out-of-the-box methods of dealing with that too.
If you're wanting to have a libname for a project that "sticks" with the project. You can create a libname in the same directory/folder of your EG project (local computer). EG provides the macro variable " _CLIENTPROJECTPATH ". If one can extract the folder URL from that then one can use that to define and create libnames, one that saves the datasets to the folder close to where the project is saved. Just in case this helps, I use this code to get that folder URL:
data _NULL_;
_CLIENTPROJECTPATH="&_CLIENTPROJECTPATH";
put _CLIENTPROJECTPATH= ;
re = prxparse("/['""]*(.*)[\\\/][^\\\/]*['""]*$/");
if PRXMATCH(re,_CLIENTPROJECTPATH) then do;
call PRXPOSN(re,1,position, length);
egp_DIR=substr(_CLIENTPROJECTPATH,position,length);
put egp_DIR=;
call symput ("egp_DIR",strip(egp_DIR)); * The macro variable should be egp_DIR is the project's parent directory/folder;
end;
run;
/* Breakdown of regular expression:*/
/****************************************/
/* / the beginning and end of the regular expression */
/* ['""]* Matches either single or double quotes and any number of those characters */
/* [\\\/] Finds one character that is either a slash \/ or back slash \\ */
/* this will be the slash charachter separating the file name and the folder path in this context.*/
/* [^\\\/]* Finds many characters that are not a character that is either a slash or back slash*/
/* in this context, this is suppoese to match the file name*/
/* .* This matches characters between the beginning of the string until the single slash character*/
/* in this context, this is the path name*/
/* (.*) The parenthese surrounding this expression identifies the matching string as a string of */
/* interest for the PRXMATCH and PRXPOSN functions.*/
... View more