The EDIT statement looks in the available template stores for a table definition called base.univariate.moments. By default, it first looks in SASUSER.TEMPLAT, but it finds nothing. Next, it looks in SASHELP.TMPLMST, which contains the table definitions that SAS Institute provides. Because EDIT can read this definition, this is the one that it uses. The program does not specify a destination for the edited definition, so PROC TEMPLATE writes to the first template store in the path that it can write to, which is SASUSER.TEMPLAT. Therefore, it creates a table definition of the same name as the original one in SASUSER.TEMPLAT. (See ODS PATH Statement).

(To learn the name of the table definition that a procedure uses, you run the procedure with the ODS TRACE ON statement in effect. See Determining What Output Objects a Procedure Creates).


proc template;
   edit base.univariate.moments;