I've been going back and forth about this problem and I haven't been able to figure out a solution.
I have a multi-page report and I need footnotes on all of the pages with #BYVAL1 in them.
On the first page I have paragraphs of text & #BYVAL's within.
I know I can do this with titles but I do not want the titles to repeat on any pages after the first one.
I found a possible workaround for the titles to suppress after page 1 but my footnote on the first page did not display the #BYVAL1.
http://listserv.uga.edu/cgi-bin/wa?A2=ind0912a&L=sas-l&H=1&P=7883
I tried ODS RTF TEXT = " text is here #BYVAL2 and here. ^2n More text here";
That didn't work and I couldn't find papers that showed me how to get a variable in the text.
Any suggestions on how I should approach this? Thanks.
Hi:
That syntax shown in your link for the DATA step is still pre-production. I'm not sure that the techniques illustrated work as you expect for footnotes. Also, the syntax could have changed between SAS 9.3 and when that suggestion was posted. #BYVAL doesn't work with ODS TEXT=. It makes sense if you think about it. BY statements work within one procedure and how it processes data. But, the ODS TEXT= statement sits "outside" any single procedure call.
You could "macroize" your program to do each BY group separately, which would allow you to still use #BYVAL for each footnote and/or change the title for each BY group, using %IF conditional logic. Look on page 6 of this paper to see the SORTANDPRINT macro program for some idea of how macro variables can be used in the TITLE statement:
http://www2.sas.com/proceedings/sugi29/243-29.pdf
You'd only need to add a bit of code to get a BY statement and and #BYVAL info working in the macro program.
cynthia
Hi:
That syntax shown in your link for the DATA step is still pre-production. I'm not sure that the techniques illustrated work as you expect for footnotes. Also, the syntax could have changed between SAS 9.3 and when that suggestion was posted. #BYVAL doesn't work with ODS TEXT=. It makes sense if you think about it. BY statements work within one procedure and how it processes data. But, the ODS TEXT= statement sits "outside" any single procedure call.
You could "macroize" your program to do each BY group separately, which would allow you to still use #BYVAL for each footnote and/or change the title for each BY group, using %IF conditional logic. Look on page 6 of this paper to see the SORTANDPRINT macro program for some idea of how macro variables can be used in the TITLE statement:
http://www2.sas.com/proceedings/sugi29/243-29.pdf
You'd only need to add a bit of code to get a BY statement and and #BYVAL info working in the macro program.
cynthia
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 25. 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.