I created a macro, and try to use the macro to send a .sas7bdat file to an email. And I got the error message of "ERROR: An attachment record was truncated. The attachment LRECL is too small.", even after I specified the LRECL=32767, and file type as filetype=application/octet-stream, extension = sas7bdat. The code is as below.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
%macro email2box(emailaddress=, filepath=, filetype=);
filename MailBox email "&emailaddress" attach="&filepath";
data _null_;
file MailBox;
put '!EM_ATTACH!' "&filepath" LRECL=32767;
put '!EM_CONTENTTYPE!' "&filetype" extension = 'sas7bdat';
run;
%mend email2box;
%email2box(emailaddress=abc@u.box.comm,filepath=/box/icon_lab.sas7bdat, filetype=application/octet-stream);
Another option would be to create a transport file using proc Cport. This will require a recipient to use Proc Cimport to bring it into the SAS system but these files are intended for interchange between different systems, are text files and may be less sensitive to things that binary files encounter and may be preferred if sending to different operating systems.
Try this:
filename MailBox email
to="&emailaddress"
attach=("&filepath" content_type="application/x-sas")
;
Thanks everybody for your replies.
I tried
filename MailBox email
to="&emailaddress"
attach=("&filepath" content_type="application/x-sas")
;
But somehow, it still doesn't work for me.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 16. Read more here about why you should contribute and what is in it for you!
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.
Select SAS Training centers are offering in-person courses. View upcoming courses for: