There are a series of macros that allow the user to create a SAS program that will run a specified set of programs in batch mode.

The advantages over the windows batch file are as follows:
A dataset is updated showing what was run and the final status of each job this is a useful audit trail
As each job executes it runs the %logscan macro and the user sees the job status in the SAS log together with any error messages
A series of parameters can be passed at run time to route outputs and name batch runs
Only programs included in the batch run program are ran therefore if a program is copied to the directory then there is no chance it will run by mistake
Please see the following macros

%assign
%run_batch
%batch_run
%batch_run_generic

A SAS program should be created as follows:

%assign(studyid=abcstudy);
%run_bath(outdest=apath,runid=%str(arunid));
%clean_environment;

optional
Proc sql;
delete * from joblog.jobs;
delete * from joblog.suspect_list;
quit;

%batch_run(progdir=progpath,tab=program_name);
%batch_run(progdir=progpath,tab=program_name);
%batch_run(progdir=progpath,tab=program_name);

NB this macro uses preset paths from the assign macro to locate the program to be run. If you want to supply a direct path to program please use %batch_run_generic