Hello everyone. I have a sas program that some of the business people in the company would like to run. It is run whenever they need it to be run, however currently we only have 1 install of SAS (base sas) on my local machine. Therefore when they need it run they have to email me to kick it off, etc..
The code only has 1 input (the directory location of a given file) so it would be pretty easy for the business to simply enter this directory location and kick off the code.
I know it's possible to schedule SAS from a bat file (cmd line) and to pass in a paramater. Below is an example that runs this exact code.
"c:\program files...\sas.exe "I:\projects\SamplingScript.sas" -Sysparm "Filepath=I:\projects\SamplingLocation" -log "I:\saslogs\run1.log".
I have a few questions with this that hopefully someone can answer!
1) This batch file will only work if called from my machine, since the sas executable is only located on my computer. So the question is.... Does anyone know how to alter the command line call to call it from a seperate computer?
If this can't be done, then how does base sas on a server get called, since a server is basically just a computer?
2) Does anyone know how to build a user interface (almost like a gui) to allow users to put their input into something like a txt box, and not have to alter a bat file... The users who would like to use this functionality have zero programming experience and wouldn't know how to alter a bat file successfully.
3) How do others handle this problem? Is this why most companies use the Enterprise manager? Is this something that simply shouldn't be done in Base Sas?
Thanks very much!
anoherdream I owe you some replies....
1/ yes still needing an administrator, the Windows specialist in this case.
2/ SAS studio (previous SAS Web editor) is a web-based approach of base SAS. Needing is Server implementation of SAS supporting that.
For example the SAS AnalyticsU is a crippled one running in a Virtual machine (Linux OS).
3/ In bigger organization the developer is not allowed to produce production results. The rule is that code should hand over to operational guys they will run it for you.
The exception to this are the more critical business analyst work outs and reports.
Reeza did already al lot to clarify....
Your question SAS on a server.
Yes it intended to be used by many users but remember the license is different. The license goes often for the power of the machine although other metrics could be negotiated .
If your server is located Local under your desk I see no objections. If you are having a single computer license and that computer is shared by different users at different times (hand over your work) I also do not see a problem,
All is to be agreed by SAS never knowing their attitudes how they are thinking on that.
There is no fixed pricelist published. Only when you are in the public area in US there seems to be other agreements with a reseller.
1) True, each user needs a licence, be that per core on a server, or local install. It is not possible to run SAS.exe from CMD on a machine which does not have the software installed.
2) Well, there is SCL/AF however its old and not used much anymore. There are several options outside SAS to create these types of interfaces however.
3) Well, in my experience the programmer is responsible for generating the output. I know there are systems out there where you can put information in a web page, and that then sends a generate request to a server which returns the output. SAS web studio for instance: SAS Web Report Studio
I would suspect that these would need server licenses etc. though.
This question is a predictable evolvment seen some previous questions/discussions.
1/ You can turn you desktop in a server allowing other people using it. (very limited) using Windows options.
If you would really using a Windows Server there are lot of other ones to look at. For one the SAS license of a desktop and server are not exchangeable.
On a server you could Remote desktop allowing several users to run as a local SAS user. The problem is the desktop applications (Office) do not integrate as the Windows profile normally is not made roaming.
2/ Do you describe SAS studio in your own words?
3/ Enterprise Guide is often used as rich client connecting to servers and local. You could use already Eguide when you have SAS base on you local machine.
Running pre-defined SAS-code is something that could be implemented as Stored processes with metdataserver and using eg SAS-office addin.
Just teasing you as your approach was very until SAS 9 metadata BI/DI solutions got more attention.
In the old dino world (mainframes 1980's till some years after 2000) your proposed approach was commonly used. Very attractive in a easy technical approach.
Thanks for your responses. I'm not following a lot of what was mentioned however and there are likely quite a few reasons for it. Mainly because I am in no way an IT person, so I barely know what a server is etc... In addition I have no computer rights at my company. (Example: I'm not an administrator of my computer).
so Jaap Some follow up questions for you.
1) I'm not sure I can do this, since i'm actually not sure what you mean. I'm guessing this would be something an administrator would have to do, is that correct?
2) Are you asking me to describe base sas? If so, I'd describe it as a gui interface on one computer (mine) that I would like others to be able to run without knowing SAS. I'm not sure if this is possible.
3) So if I can use enterprise guide on my local machine, that doesn't really help others wants to run programs does it, because they can't use it... Is that what you are saying?
I think what both of you are saying is that since SAS is on a local machine, i'm not supposed to allow others to be able to run it, probably because it's a violation of the license (I'd have to buy a server version of SAS and have people connect to the server?).
Here's my main confusion...
You noted:
3) Well, in my experience the programmer is responsible for generating the output. I know there are systems out there where you can put information in a web page, and that then sends a generate request to a server which returns the output. SAS web studio for instance: SAS Web Report Studio
I would suspect that these would need server licenses etc. though.
Question:
Doesn't this imply that someone is running sas on a server when they don't have it on their local machine? Isn't this the same thing as running sas on a different machine? (Since a server is just another computer in my understanding...).. THis seems to imply that if you had SAS on a "server" (machine) then anyone could run it even if they don't have SAS on their local machine... so how is that different from having sas on my base machine? (does this question make sense?)
Please let me know if I am not following you!
It isn't conceptually different, but the license is different .
Basically, you're just at the point where you need either another SAS license or a server. I'd suggest a second SAS license installed on a spare computer as that's cheaper.
A third suggestion, if possible, would be to run the report every day (scheduled at 6am or something) on your desktop and dump the results somewhere they can access. That way its there if they need it and if not its still there but no issues with anything.
Ah so basically my goal is pretty much not possible (The goal is to have a program that users can kick off whenever they want, with their own inputs, while not knowing or having SAS installed on their computer)...
Well that's frustrating... but good to know.
If we had a second sas license installed on a spare computer, the user would still need to learn how to run SAS it sounds like, which again defeats my goal....
dang
Base SAS does come with EG nowadays so you could mock up some screens that basically required prompts, so the end user would be point and clicking.
Or add some javascript commands to start off the batch job on that computer.
Ah so just have the user rootshell into the computer, and run "sas" (but really running the Enterprise Guide) and the EG has a guid like interface, so it doesn't look like base sas, but something a business person could do...
Basically it's still sas, and it's SAS on a local computer (that many people could root shell into)... Or is that also illegal? Could that one version of sas on that computer be used by say 5-15 different users? (if they root-shelled in at different times)
I'm not sure what you mean by rootshell. We remote desktop in, it looks like a new desktop is all, but on yours. I don't know where this falls in the licensing scheme...though I've seen it done in several places I've worked at. We usually buy an extra license and then run longer jobs on that.
Oh sorry, rootshell is lingo my team uses for the Remote Desktop tool. I think we're saying the same thing.
Have sas installed on a local machine, have X users Remove Desktop into it, and instead of launching base sas, use the Enterprise Guide to allow user prompted programs to run.... Time to look into what EG is I believe....
anoherdream I owe you some replies....
1/ yes still needing an administrator, the Windows specialist in this case.
2/ SAS studio (previous SAS Web editor) is a web-based approach of base SAS. Needing is Server implementation of SAS supporting that.
For example the SAS AnalyticsU is a crippled one running in a Virtual machine (Linux OS).
3/ In bigger organization the developer is not allowed to produce production results. The rule is that code should hand over to operational guys they will run it for you.
The exception to this are the more critical business analyst work outs and reports.
Reeza did already al lot to clarify....
Your question SAS on a server.
Yes it intended to be used by many users but remember the license is different. The license goes often for the power of the machine although other metrics could be negotiated .
If your server is located Local under your desk I see no objections. If you are having a single computer license and that computer is shared by different users at different times (hand over your work) I also do not see a problem,
All is to be agreed by SAS never knowing their attitudes how they are thinking on that.
There is no fixed pricelist published. Only when you are in the public area in US there seems to be other agreements with a reseller.
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
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.