Hello,
I am trying to have three tables on the page age in proc report. Searching the forums I was able to use this article in order to have them on the same page (via STARTPAGE= NO columns=3), but their individual titles were not above them. In addition, I have a figure on the following page that is now confined to the left most column.
-Is there a way to only have the columns=3 only apply to a single page or proc reports?
-Is there a way to keep the titles above the individual proc reports when they are on the same page?
Below are my code and a .rtf of my proc report.
If any of you have papers/ suggestions that can point in the right direction that would be great!
Thank you!
options nobyline nodate nonumber orientation=landscape topmargin=1in leftmargin=0.5in bottommargin=1in rightmargin=0.5in; ods listing close; ods escapechar = '^'; ods rtf file="&outnam" style=journal STARTPAGE= NO columns=3; title1 j=l h=1 '^S={postimage="/shares/groups/small.png" color=white} x' j=r h=1 "^S={fontstyle=ROMAN}Page ^{pageof}"; title2 j=l h=1 "^S={fontstyle=ROMAN}Study ID:"; title3 j=c h=3 "^S={fontstyle=ROMAN fontsize=9pt}Summary cats"; title4 j=c " "; footnote1 j=l "^S={fontstyle=ROMAN fontweight=light ASIS=on}Note" j=l "^S={fontstyle=ROMAN fontweight=light ASIS=on}Note" j=l "^S={fontstyle=ROMAN fontweight=light ASIS=on}Note"; footnote2 j=l h=0.3 " "; footnote3 j=l h=0.3 "^S={fontweight=light}Note"; proc report data=a5 split='*' nowd; column result gold_standard,value perish tp fn tn fp; define result / group 'cats* '; define gold_standard / across 'china'; define value / analysis sum ' '; define tp / noprint; define tn / noprint; define fp / noprint; define fn / noprint; define perish / computed noprint format=percent8.2; compute before; tp1= _c5_; fn1= _c6_; fp1= _c8_; endcomp; compute perish; perish = (((tp1 + fp1)-(tp1 + fn1))/(tp1 + fn1)) ; endcomp; compute after; line '% More cats: ' perish percent10.2; endcomp; title5 'title a'; run; proc report data=b5 split='*' nowd; column result gold_standard,value perish tp fn tn fp; define result / group 'cats* '; define gold_standard / across 'china'; define value / analysis sum ' '; define tp / noprint; define tn / noprint; define fp / noprint; define fn / noprint; define perish / computed noprint format=percent8.2; compute before; tp1= _c5_; fn1= _c6_; fp1= _c8_; endcomp; compute perish; perish = (((tp1 + fp1)-(tp1 + fn1))/(tp1 + fn1)) ; endcomp; compute after; line '% More cats: ' perish percent10.2; endcomp; title5 'title b'; run; proc report data=c5 split='*' nowd; column result gold_standard,value perish tp fn tn fp; define result / group 'cats* '; define gold_standard / across 'china'; define value / analysis sum ' '; define tp / noprint; define tn / noprint; define fp / noprint; define fn / noprint; define perish / computed noprint format=percent8.2; compute before; tp1= _c5_; fn1= _c6_; fp1= _c8_; endcomp; compute perish; perish = (((tp1 + fp1)-(tp1 + fn1))/(tp1 + fn1)) ; endcomp; compute after; line '% More cats: ' perish percent10.2; endcomp; title5 'title c'; run; proc report data=whip5 split='*' nowd; column image; define image / computed style(column)={width=7.5in} 'Missing Results by Month'; compute image; image = 'Missing OD Results by Month'; imageloc = catt('style={preimage="/shares/chart1.jpeg"}'); call define(_col_,'style',imageloc); endcomp; title5 'Missing OD Results'; run; ods rtf close; ods listing;
Try the BODYTITLE option on the ODS statement?
Here's a link to the ODS RTF tip sheet
If you do not want titles from previous output to appear with a specific output table then issue a title statement:
Title 'This is a title until reset';
proc freq data=sashelp.class;
tables height weight;
run;
Proc print data = sashelp.class;
var name;
run;
Title;
proc means data=sashelp.class;
var height weight;
run;
The Proc print inherits the title from the one set before Proc Freq;
Using the Title; to clear the assigned titles means the Proc means does not get the title. Or change it.
You can use different levels of the Title ; When you use Title3 ; it clears the title3 and higher number defintions but not title1 and title2.
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.