DATA Step, Macro, Functions and more

Macro Inside a Macro?

Occasional Contributor
Posts: 9

Macro Inside a Macro?

I am writing a fairly complex report that uses ODS REGIONs and is encapsulated inside a macro.  One of the things I do is call another macro to handle the custom footnote area (I am not using a traditional footnote).

Both the main report macro and the footnote macro are ONLY used for this report task.

So should the footnote macro be INSIDE the MAIN macro or outside of it in the same SAS program file or does it really matter?  Guess I am looking for a best practice as I doubt it matters...

Trusted Advisor
Posts: 1,615

Re: Macro Inside a Macro?

Best practice ... do not nest macros

Super User
Posts: 5,082

Re: Macro Inside a Macro?

Agreed, except in the rarest of circumstances.  Consider nesting definitions only when:

(1) The macros are always married and never useful as separate macros, and

(2) The outer macro is used only once per program

Consider that the inner macro could at some point have expanded functionality that might make it useful for other applications.

Also consider that when you nest macros, each time you execute the outer macro it redefines the inner macro.  That represents extra work (even if it might be a small amount of extra work).

Respected Advisor
Posts: 3,777

Re: Macro Inside a Macro?

Or if the OUTER writes the INNER using the parameters or data passed to OUTER.

Ask a Question
Discussion stats
  • 3 replies
  • 4 in conversation