|SAS Macro Language: Reference
subsequent chapters go into far more detail on the various elements of the
macro language, this section highlights some of the possibilities, with pointers
to more information.
- This chapter has illustrated only a few of the macro statements,
such as %MACRO and %IF-%THEN. Many other macro statements exist, some of which
are valid in open code, while others are valid only in macro definitions.
For a complete list of macro statements, refer to "Macro Statements"
in Chapter 12, "Macro Language Elements."
- Macro functions are functions defined by the macro facility.
They process one or more arguments and produce a result. For example, the
%SUBSTR function creates a substring of another string, while the %UPCASE
function converts characters to uppercase. A special category of macro functions,
the macro quoting functions, mask special characters so they are not misinterpreted
by the macro processor.
two special macro functions, %SYSFUNC and %QSYSFUNC, that provide access to
SAS language functions or user-written functions generated with SAS/TOOLKIT.
You can use %SYSFUNC and %QSYSFUNC with new functions in base SAS software
to obtain the values of SAS host, base, or graphics options. These functions
also enable you to open and close SAS data sets, test data set attributes,
or read and write to external files. Another special function is %SYSEVALF,
which allows your macros to perform floating-point arithmetic.
For a list of macro functions, refer to "Macro Functions"
in Chapter 12. For a discussion of the macro quoting functions, refer to Chapter
7. For the syntax of calling selected base SAS functions with %SYSFUNC, refer
to Appendix 3, "Syntax for Selected SAS Functions Used with the %SYSFUNC
- Autocall macros are macros defined by the SAS System that
perform common tasks, such as trimming leading or trailing blanks from a macro
variable's value or returning the data type of a value. For a list of autocall
macros, refer to "Autocall Macros Provided with SAS Software"
in Chapter 12.
- Automatic macro variables are macro variables created by
the macro processor. For example, SYSDATE contains the date SAS is invoked.
See Chapter 12 for a list of automatic macro variables, and Chapter 13 for
a description of these automatic macro variables.
- Interfaces with the macro facility provide a dynamic connection
between the macro facility and other parts of the SAS System, such as the
DATA step, SCL code, the SQL procedure, and SAS/CONNECT software.
For example, you can create macro variables based on values within the DATA
step using CALL SYMPUT and retrieve the value of a macro variable stored on
a remote host using the %SYSRPUT macro statement. For more information on
these interfaces, refer to Chapter 8, "Interfaces with the Macro Facility."
Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.