Hello Everyone!
While sending the mail to the sender, it is not possible to identify whether the mail has already reached or not.Is there any option to track it.
or
is it possible that if error is found in the log file, then one mail will automatically comes to sender saying that the mail has not been transmitted (with attached log file).
and if not found, also mail comes with message showing that the mail has been send successfully.
FILENAME Mailbox EMAIL from=("vinxa@oracle.com")
to=("vin@oracle.com")
Subject="test"
put "mail sent successfully"
RUN;
Thanks in advance
You're handing over your email to the mail server. Once the mail server has accepted it you're out of the equation.
It is also not guaranteed that the receiving mail server sends a confirmation that you've used a valid email address and it most certainly doesn't send any information whether the receiver has opened the email or not.
Bounce message - Wikipedia, the free encyclopedia
So maximum you could achieve is get some kind of admin access to the sending mail server and check the send status of emails - but that's only one more step and won't give you the full picture.
Hi,
For second part of your question, one way to do this would be to use a log scanning macro which would read the log for any errors/warnings/bad notes and create a macro variable indicating if the log scan passed (no errors found) or failed.
So something like:
%macro EmailReportIfCleanLog(...) ;
%logscan()
%if &LogScanResult=PASS %then %do;
%* email report to user ;
%* email programmer that program ran fine;
%end;
%else %if &LogScanResult=FAIL %then %do;
%* email programmer that program failed;
%end;
%mend;
You can search lexjansen.com for papers on log scanning. My favorite approach is described in http://www.nesug.org/proceedings/nesug01/cc/cc4008.pdf , but unfortunately they couldn't share the full code in the paper.
If you go this approach, and want to be sure the programmer gets an email even when there are errors in the log, you have to manually recover from SYNTAXCHECK mode. So if SAS set obs=0 due to some error in your main code, I *think* you need to set OBS=max REPLACE NOSYNTAXCHECK at the top of your log checker.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.