Hi:
You may want to check out some examples of using either a simple %Include statement or a full-fledged macro program to invoke individual macro programs.
For example, you might have this program called DRIVER.SAS:
[pre]
libname wombat 'c:\temp\wombatdir';
%include 'c:\My Programs\readdata.sas';
%include 'c:\My Programs\bkupdata.sas';
%include 'c:\My Programs\makefile.sas';
[/pre]
In the above example, you would submit the DRIVER.SAS program and then you would submit this program. First, the LIBNAME statement would be issued and then the READDATA.SAS program would be included and sent to be executed. When that was done, the BKUPDATA.SAS program would be included and sent to be executed. And, finally, the MAKEFILE.SAS program would be included and sent to be executed. That's a very simple example.
Or, you could define 4 separate macro programs and store some or all of them in a Macro autocall library. Let's say the macro programs were named:
%READ1, %BKUP2, and %MAKE3. Then you might define and execute a 4th macro program called %DRIVER, like this:
[pre]
%MACRO DRIVER;
%READ1;
%BKUP2;
%MAKE3;
%MEND DRIVER;
[/pre]
The above code only DEFINES the %DRIVER macro program. To invoke the program, you would need to submit the invocation as:
%DRIVER;
and, then, the code inside the macro program would be sent the macro processor to have all the macro references resolved and then the resolved code would be sent to SAS to be compiled and executed.
To learn about the difference between a simple %INCLUDE statement and a Macro program, you should consult the SAS Macro Reference documentation.
%INCLUDE: http://support.sas.com/documentation/cdl/en/lrdict/59540/HTML/default/a000214504.htm
Macro Reference: http://support.sas.com/documentation/cdl/en/mcrolref/59526/HTML/default/a002293969.htm
cynthia