SAS 选项值到宏变量

SAS option value to macro variable

我想将 SAS 选项的值存储在一个宏变量中,这样我就可以重置选项,而不是默认值,而是之前的值,如下所示:

选项 mprint &prev.;

有谁知道如何将当前选项值存储在宏变量中?

像这样:

%let oldValue = %sysfunc(getoption(linesize));

您可以在此处的 SAS 在线文档中查看 SYSFUNC 和 GETOPTION 函数的详细信息:https://support.sas.com/en/documentation.html

每天花十分钟光看文档是值得的,你会学到很多东西。

如果您要更改多个选项,或者不想在单个级别上处理选项,请考虑使用 PROC OPTSAVEPROC OPTLOAD。如果您在单个会话中使用各种宏和基于宏的框架,这种形式的选项管理特别有用。

libname options 'C:\Temp\MyOptions';

proc optsave out=options.held;

  options ls=max ps=max nocenter nodate nonumber orientation=landscape;
  %RichardForecastReport(date='01MAR2019')

proc optload data=options.held;

  options ls=128 ps=100 center date number orientation=portrait;
  %HenrikForecastCharts(date='01MAR2019')

proc optload data=options.held;
   … todays adhoc …