我的代码位于代码顶部:
%let testDate = DATETIME();
然后通过我的变量代码进行各种引用:
currentdate= &testDate.;
问题是,我希望testDate在整个代码中保持不变,以便每个输出都具有相同的“currentdate”。根据我的理解,当SAS编译代码时,它只是替换& testDate。通过DATETIME(),因此它无处不在。
我的目标是计算DATETIME(),将输出存储在testDate中,然后将整个代码替换为& testDate。
我怎么能这样做?
谢谢!
答案 0 :(得分:4)
使用
%let testDate = %sysfunc(datetime());
您现在正在做的是将宏设置为函数,而不是函数的返回值。 %sysfunc()
解析函数并存储输出。