I have a programe which run both on EG and as a stored procedure. when I ran in EG in prod or Dev enviroment the libname automatically select the enviroment and ran the code, But when it is run as stored Procedure, it need to be change as manually for each enviroment.
I tried all option but not able to make the libname dynamic for Stored procedrue. Pls help me to suggest how to make dynamic code for libname in stored.
I would not change the library reference in the program.
Instead define the libraries in metadata with the same libref, but different paths. Then assign one definition to the prod stored process server and the other to the dev stored process server.
Hi KurtBremser,
Could you please explain the it more.
Thanks
Assume you have two directories:
/sasdata/xxxprod
/sasdata/xxxdev
In SAS Management Console (Plug-Ins), open the Data Library Manager
Right-Click Libraries, select New Library
Name it XXX-Prod, on the next tab, assign it to the production server, in Options, give it the libref XXX, and set the path to /sasdata/xxxprod
Once you have finished, repeat the same, but name it XXX-Dev, assign it to the development server, and set the path to /sasdata/xxxdev
You now have a libref XXX in both production and development, which points to different paths, depending on the server context.
Thank you,
Is it possible to have in the programme of stored procedure.
The SAS program will not need to do any changes to the library. But you will need separate stored process definitions for the prod and dev server, both pointing to the same physical SAS program file.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.