Chapter Contents

Previous

Next
SAS/SHARE User's Guide

SHRMACS

Compiles other SAS/SHARE macros.


Syntax

Note:    The SHRMACS macro must be invoked before any other SAS/SHARE macro.  [cautionend]

%SHRMACS category, <log-info>,
<APPLSYS=app-sys-lib-tab . . .>,
<SASSAML=alt-sys-lib-tab...>);

The SHRMACS macro generates and compiles the SAS/SHARE macros according to the following parameters:

category
defines type of macros: USER, SERVER, OPER, or ALL. For details about the macros that are contained within these categories, see Compiling Macros (SHRMACS).

log-info
The MSG argument displays the SAS/SHARE macros that are generated and displays what each macro does. MSG is the default action; if the first argument is specified alone, MSG information is written to the SAS log. If the NOMSG argument is specified, no information is displayed.

The HELP argument displays detailed information about the SAS/SHARE macros that are generated. This includes the syntax, a brief description, and an example of each macro that is generated by the first argument.

APPLSYS=
The optional APPLSYS= argument specifies which applications systems tables are to be loaded. You can specify one or more tables. It is recommended that you use this argument to save initialization time. If the APPLSYS= argument is not specified, the default applications systems table is loaded. For more information about using the APPLSYS= argument, see Setting Up the Application System (APPLSYS) Macro Library.

SASSAML=
The optional SASSAML= argument specifies an alternate APPLSYS macro library. If an alternate library is specified, application systems tables are loaded from it instead of from the default library. The value of SASSAML= can be a physical pathname or the string _DEFINED_, which indicates that the fileref SASSAML is already assigned to the alternate APPLSYS macro library. For more information about the SASSAML= argument, see Setting Up the Application System (APPLSYS) Macro Library.

The SHRMACS macro also loads the applications systems tables that associate aliases with server names and libraries with aliases. These tables are used to generate the server name for the PROC SERVER, PROC OPERATE, and LIBNAME statements. Based on what is specified in the first argument, the server-alias and library-alias tables may be written to the SAS log if you specify the MSG or the HELP argument in the SHRMACS macro.

%shrmacs(user); %shrmacs(user,help);
%shrmacs(oper,help); %shrmacs(server,msg); %shrmacs(all,msg); 

The SHRMACS macro also obtains the current settings of the NOTE, SOURCE2, and LINESIZE= SAS options in order to restore them later. SHRMACS invokes PROC SQL early in its execution to obtain the settings of these options and to save them in macro variables named _NOTES_, _SRC2_, and _LS_, respectively. The original values are restored after the settings have been changed by SHRMACS or other SAS/SHARE macros. You can avoid the overhead of this PROC SQL step by explicitly setting the macro variables to the desired values, as shown here:

%let _notes_=notes; %let _src2_=nosource2;
%let _ls_=70;


Chapter Contents

Previous

Next

Top of Page

Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.