Hello,
I have a footnote question.
In my real listing report I have over 10 footnotes, so I tried to concatenate some footnotes together then output. But some concatenated footnote text length is too long, so they are truncated, like the below example.
In this example ls=135 and can not be changed, and footnote text length is over 135, so the footnote text "BBBBBBB" was truncated in output. I know, if output is rtf or pdf, we have no this issue. But for listing, I have not figured out a method to deal with it. Can someone help me out? Thanks
%let ft=%sysfunc(repeat(A, 135))BBBBBBBBBB;
%put &ft.;
proc printto print="xxxxxx\ft.lst" new; run;
proc report data=sashelp.cars (obs=10) ps=48 ls=135 split='|';
column make Model;
run;
footnote1 "&ft.";
proc printto print=print; run;
Hello,
Why are you displaying output as listing? Why not the standard HTML?
ods html;
footnote height=5pt 'little footnote';
proc print data=sashelp.class;
run;
/* end of program */
I do not think height= will work in 'ODS LISTING;'. You don't get an error but it will have no effect.
I come back to you on ODS LISTING after the weekend.
Might be that for ODS LISTING everything will become little (also the body of the report).
Will see.
Koen
Change the LS (aka LINESIZE) setting if you want longer lines.
Are the footnotes static? just use a text editor to fit the content into 10*135 character limit.
Are all of your reports using PROC REPORT? If so why not move the footnotes into the body of the report instead. Then you would not have a limit of 10 footnotes.
Are the footnotes short? I have a macro from Tom Hoffman from 1997 that collapses multiple short strings into footnotes or titles.
223 options mprint; 224 %align 225 (A: this is the first footnote 226 \B: this is the second footnote 227 \C: this is the third footnote which is longest 228 \D: this is the fourth footnote 229 ,tn=1 230 ,ft=f 231 ) MPRINT(ALIGN): footnote1 "A: this is the first footnote B: this is the second footnote C: this is the thirdfootnote which is longest "; MPRINT(ALIGN): footnote2 "D: this is the fourth footnote ";
The pdf output works fine, even after playing with various margins, page orientation, and footnote lengths. The font specification is optional, I was testing with large font sizes.
%let fnt=%str('Helvetica', 8pt);
ods _all_ close;
ods escapechar='^';
options nonumber nodate nocenter orientation=portrait papersize=letter
leftmargin=1.5cm rightmargin=1.5cm topmargin=1.5cm bottommargin=1.5cm;;
ods pdf file="&path./test.pdf" dpi=300 notoc;
proc report data=sashelp.cars (obs=10) ps=48 ls=135 split='|';
column make Model;
run;
footnote1 "^S={}^S={font=(&fnt)} &ft.";
ods pdf close;
Ghosh and Tom, Thank you very much.
Yes. For PDF or rtf we do not need to worry about the footnote length.
I can put part of footnote into body through compute block in proc report.
However, I cooperate with others and their method has limitations and I have to put footnote in footnote statement and output as lst file first. At beginning, I thought maybe we have options to set footnote output in listing and let footnote turn over if it is too long, like RTF or PDF. I guess we have no that option for listing currently. Do not mind. Thanks again
George
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
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.