Macros Generated by the SHRMACS Macro

The SHRMACS macro compiles all other macros. A server administrator or an applications programmer must always invoke %SHRMACS before invoking any other macro. Use the following syntax:
%SHRMACS(category,<log-info,>
<APPLSYS=app-sys-lib-tab,>
<SASSAML=alt-sys-lib-tab>);
category
specifies the category of macros to be compiled. Valid values for category are SERVER, USER, OPER, or ALL.
log-info
specifies whether descriptive information is written to the SAS log about each macro. Valid values for log-info are NOMSG, MSG, or HELP. The default is MSG.
APPLSYS=
specifies an alternate applications systems library-alias table. For details, see The APPLSYS Macro Library.
SASSAML=
specifies an applications systems library, which is a set of files that specify SAS libraries and servers. For details, see The APPLSYS Macro Library.
SAS/SHARE Macros Generated by the SHRMACS Macro
SHRMACS Macro Categories
Implicit Macros Generated
Server
User
Operator
LIBDEF
LISTLIB
LISTSRV
LISTSRVI
OPERATE
SERVERID
SERVIIDX
SETSRV
SHUTSRV
STRTSRV
For example, here are three possible macro definitions:
  • %SHRMACS(SERVER)
  • %SHRMACS(USER)
  • %SHRMACS(OPER)
All of these macro definitions generate these macros: LISTLIB, LISTSRV, LISTSRVI, SERVERID, and SERVIIDX.
However, only %SHRMACS(USER) generates the LIBDEF macro, only %SHRMACS(SERVER) generates the STRTSRV macro, and only %SHRMACS(OPER) generates the OPERATE, SETSRV, and SHUTSRV macros.
In addition to compiling the requested macros, the SHRMACS macro also builds the appropriate library-alias table and server-alias table. These tables are used for generating the server name for the PROC SERVER, PROC OPERATE, and LIBNAME statements. The SERVER category of macros generates the server-alias table; the OPER category of macros generates the library-alias table; and the USER category of macros generates both the server-alias and the library-alias tables.
Specifying the ALL category of macros generates all of the macros and both the server-alias and library-alias tables.
The following log displays the information in the SAS log about the server macros.
Server Macro Information

LOG
 Command ===>
1085  %shrmacs (server,msg);

            *** SAS/SHARE macros are now available ***

For further information about SAS/SHARE macros:

   %SHRMACS(ALL,HELP)    - for information on all macros
   %SHRMACS(USER,HELP)   - for information on macros used
                            in user applications
   %SHRMACS(OPER,HELP)   - for information on macros used
                            with PROC OPERATE
   %SHRMACS(SERVER,HELP) - for information on macros used
                            with PROC SERVER
   or %macro(HELP)       - for information on a specific
                            macro
SAS/SHARE macros generated are:

SERVERID - translate server alias
LISTLIB  - list library table
LISTSRV  - list server alias table
STRTSRV  - start a server

                        SERVER ALIAS TABLE

--- SERVER ALIAS ------- SERVERID ----------------------------
    CESERV               V6DSERVR
    COMSERV              MYSERV
    DEVSERV              MYSERV
    GLOSSERV             V6DSERVR
    LIBSERV              V6DSERVR
    MISSERV              MYSERV
    PRDSERV              V6DSERVR
--------------------------------------------------------------
For more information about the macros that are compiled by %SHRMACS, you can specify the HELP keyword. For example:
%shrmacs(server,help);
HELP lists the syntax, a brief description, and an example for each macro that SHRMACS defines in the SERVER category.