Hello,
I wonder why this does not add double quotes to name string.
data _null_; set sashelp.class; put name; run; data _null_; set sashelp.class; put "||name||"; run;
You surround the expression
|| name ||
by quotes, which means sas willl treat it as a literal to be written by your put statemet.
Try
put name $quote10. ;
which applies the $quote format to name. Since name is 8 bytes, I use 10 as the size attribute of the $quote format.
Mark
You surround the expression
|| name ||
by quotes, which means sas willl treat it as a literal to be written by your put statemet.
Try
put name $quote10. ;
which applies the $quote format to name. Since name is 8 bytes, I use 10 as the size attribute of the $quote format.
Mark
@mkeintz Thank you. I was asking this question in reference to use of variable in CALL EXECUTE routine. In example below, memname is not treated as literal.
data _null_; set _dsets_; call execute ( 'proc print data=sugi30.' || trim(memname) || '(obs=50); title ''First 50 observations of data set ' || trim(memname) || '''; run;' ); run;
If you're trying to put quotes around the memname when it appears in the title, then use the put function, with $quote as 2nd argument, in the place where the variable memname appears in the title statement:
data _null_;
set _dsets_;
call execute
(
'proc print data=sugi30.' ||
trim(memname) ||
'(obs=50); title ''First 50 observations of data set ' ||
put(memname,$quote10.) || '''; run;'
) ;
run;
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
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.