我想使用该PUT
语句创建动态代码。根据 SUGI 29 的这份文件(http://www2.sas.com/proceedings/sugi29/175-29.pdf),
put
"data XXXXX; "
/ 'infile "&datadir/&compid&filetype" missover ls=' tbla_fle
';' / 'input'
;
相当于运行
data onecomp ;
infile
"&datadir/&compid&filetype"
missover ls = 268 ;
input
但是,当我尝试类似于他们的示例时,PUT
语句中包含的代码不会运行,而是写入 SAS 输出日志:
data _NULL_;
put // "data put_test;" / "b=2;" / "run;";
run;
In Output Log:
data put_test;
b=2;
run;
我检查了 SAS 文档,它似乎PUT
仅用于“将行写入 SAS 日志、SAS 输出窗口或在最近的 FILE 语句中指定的外部位置”。它没有说它可以用来创建动态生成的代码。
我知道我一定错过了什么,但我不确定是什么。我正在使用 SAS Enterprise Guide 4.1。
谢谢!