I just came from an EXCELLENT talk on Enterprise Guide for Programmers at Boston Area SAS Users Group, by Chris Bost.
The talk is available at: http://www.basug.org/downloads/2013q2/Bost.pdf
Not surprsingly in a room full of programmers, during the discussion the question came up, "can I do a batch submit?"
And I think currently, the correct answer is "no, you can't, because EG is an interactive environment, in the same (similar) way that DM SAS is an interactive environment."
Chris B. helpfully pointed out that you can schedule an EG project, which accomplishes something like a batch session.
But here's the thing. When I programming in SAS, I was taught that I should ALWAYS submit my final code as a batch job. There are two main benefits. 1. You ensure that your code works on it's own, and isn't working (or failing) because you have a lot of temporary datasets / formats / macro variables / whatever assembled junk sitting in your work library. 2. You get a log file.
During discussion it was suggested by someone that might be nice if EG just had a "batch submit button." I think it's a grand idea. If I press "Batch Submit", I want EG to spawn a new SAS session on the server, and execute my program in that new session, then return the results as usual. Getting a log file would also be nice, but that is a separable issue (and PROC PRINTTO is available as a workaround).
Now when using EG, it seems like there are approximations of ways to ensure that you have a clean session to run your code in:
1. Schedule the flow.
2. Write a macro that will try to clean up your session (delete temp datasets/filerefs/librefs/macro vars/etc etc)
3. Disconnect from the server and then reconnect. (I feel like EG is unhappy with me when I do this, maybe it's because my code is linked instead of embedded in the project, I think EG loses track of the links when I disconnect)
4. Close EG and restart it.
To me, those are all work arounds for not having a batch submit button. Sounded like a grand idea to me, so wanted to throw it out to the group.
--Q.
(edited 12/10/13 to add link to slides from presentation, and make clear that "Chris" is Chris Bost, not Chris H.)
... View more