Archive für 12.1.2007

Using email functions with SAS

SAS provides several possibilities to send out emails. This is a good feature to get statusinformation while a SAS-program is running.

1st - sending emails with SAS/Macro (Author: DeVenezia.com):

%macro quikmail (to,subj,body);
%if (%superq(to) eq ) %then %let to=foobar;
%if (%superq(to) ne and %superq(subj) ne and %superq(body) ne) %then %do;
filename quikmail email “%superq(to)” subject=“%superq(subj)”;
data _null_;
file quikmail;
put
“%superq(subj)”;
%let body=%left(%superq(body));
%do %until (%superq(body) eq);
%let p=%index(%superq(body),\n);
%if (&p eq 0) %then %do;
put
“%superq(body)”;
%let body=;
%end;
%else %do;
put
“%substr(%superq(body),1,%eval(&p-1))”;
%if (%eval(&p+2) gt %length(%superq(body))) %then
%let body = ;
%else
%let body = %substr (%superq(body),%eval(&p+2));
%end;
%end;
run;
%end;
%mend quikmail;
%quikmail(MyEmail@provider.com, Subject , MyText);

2nd - sending emails with Datastep:

data _null_;
filename mail email
to = (MyEmailAdress)
subject =
“SAS Mailtest”
/*attach = (”Path and Filename 1,Path and Filename 2″)*/;
file mail;
put “Zeile 1″;
put “Zeile 2″;
run;

|