我正在尝试使用Linux内的SAS发送电子邮件,在电子邮件正文中我引用了一个宏。
* store &a in macro for use in email;
proc sql noprint;
select tot_sendt into :a from tot;
run;
* sending email;
filename m email subject="Report A is ready (%SYSFUNC(today(),ddmmyy10.))"
to = ('myemail@email.com');
data _null_;
file m;
put 'Report A ready;
put 'Totalt sent is:' &a; *a is a number stored in a macro;
run;
但是,此代码会引发以下错误:test_pgm.log.140825.1227:错误:数据步骤组件对象失败。在COMPILATION阶段中止。 test_pgm.log.140825.1227:错误557-185:变量集不是对象。
我也试过
put 'Totalt sent is &a'; a is a number stored in a macro
其中只是写入& a in到电子邮件正文。
答案 0 :(得分:1)
宏变量不会在单引号内解析。
put "Totalt sent is &a" ;
应该有用。
另请注意,您缺少第一个PUT语句的结束单引号。