在SAS中使用ODS发送警报

在SAS中使用ODS发送警报,sas,Sas,我试图仅在宏变量值不为0的情况下发送警报,并始终发送另一个警报,两者都在同一脚本中 我只想在变量值不是0时发送此消息 filename myfile1 email To=&ToAddress subject="ALERT for &tday." TYPE="text/html"; ODS LISTING CLOSE; ODS HTML BODY=myfile1 style=BarrettsBlue; OPTIONS NOCENTER LINESIZE=256; Proc pri

我试图仅在宏变量值不为0的情况下发送警报,并始终发送另一个警报,两者都在同一脚本中

我只想在变量值不是0时发送此消息

filename myfile1 email To=&ToAddress
subject="ALERT for &tday." TYPE="text/html";
ODS LISTING CLOSE;
ODS HTML BODY=myfile1 style=BarrettsBlue;
OPTIONS NOCENTER LINESIZE=256;

Proc print data=Counts_6days noobs label;
title "monitoring by Score Date";
run;
ODS html close;
ods listing;
我想一直寄这个

filename myfile email To=&ToAddress
subject="monitoring for &tday." CONTENT_TYPE="text/html";

ODS LISTING CLOSE;
ODS HTML BODY=myfile style=BarrettsBlue;
OPTIONS NOCENTER LINESIZE=256;

Proc print data=COUNTS noobs label;
title "monitoring by Score Date";
run;

ODS HTML CLOSE;
ODS LISTING;

在SAS中,条件宏语句需要包装在宏中。例如:

%macro example(arg);
    %if &arg. ~= 0 %then %do;
        /* Your conditional code here */
    %end;
%mend example;
%let var = 0;
%example(&var.)
此代码创建一个名为
%example
的示例,该示例需要一个参数。使用
%example()
调用宏,此时它会计算宏中的代码。该块允许您根据条件的计算结果是true还是false来选择是否运行某些代码


在您的情况下,您可以将第一个块包装在类似于此的宏中,同时将第二个块留在外部。

Hi Sampath\T,您的问题不清楚。你在想什么有困难?您是否在询问如何有条件地执行代码?@Gerard de visser不是针对SAS ODS,而是针对开放文档电子表格格式。SAS ODS是输出交付系统,用于创建非基本文本输出。