Every macro variable
has a scope.
Macro variable scope
can either be global or local. Global macro variables can be created
at any time during a SAS session, can persist for the duration of
the SAS session, and can be referenced anywhere in the SAS session
except for the DATALINES statement. To remove a global macro variable
from memory within a SAS session, you must explicitly delete it using
a %SYMDEL statement.
Local macro variables
are created only during execution of a macro program, persist only
as long as the macro is executing, and therefore can be referenced
only while the macro is executing. When a macro terminates execution,
its local symbol table is automatically deleted.