BookmarkSubscribeRSS Feed
☑ This topic is solved. Need further help from the community? Please sign in and ask a new question.
Bill3
Calcite | Level 5

data class; set sashelp.class sashelp.class; run; options nodate nonumber orientation=portrait missing=""; ods rtf file="yourpath.rtf" style=Journal; proc report data=class headline headskip nowd; run; ods rtf close;

Bill3_0-1725349879307.png

After the proc report, there is a forced line breaks (maybe "\n").

Is there a way to not output this line break in the proc report? Because This will take up a row of space.

 

1 ACCEPTED SOLUTION

Accepted Solutions
Ksharp
Super User

Try to use TAGSETS.RTF  + options(vsspace='no') :

 

data class; 
set sashelp.class sashelp.class;
run; 
title;
ods tagsets.rtf text= 'xxxx';
options nodate nonumber orientation=portrait missing=""; 
ods tagsets.rtf file="c:\temp\temp.rtf"  style=Journal options(vsspace='no' CONTINUE_TAG='no'); 
proc report data=class headline headskip nowd; 
run; 
ods tagsets.rtf close;

View solution in original post

11 REPLIES 11
Ksharp
Super User

Try to use TAGSETS.RTF  + options(vsspace='no') :

 

data class; 
set sashelp.class sashelp.class;
run; 
title;
ods tagsets.rtf text= 'xxxx';
options nodate nonumber orientation=portrait missing=""; 
ods tagsets.rtf file="c:\temp\temp.rtf"  style=Journal options(vsspace='no' CONTINUE_TAG='no'); 
proc report data=class headline headskip nowd; 
run; 
ods tagsets.rtf close;
ChrisNZ
Tourmaline | Level 20

@Ksharp 👍

 

I swear it's impossible to know about all the ODS options and capabilities unless you stumble upon them and save a note somewhere.

vsspace is not described on this page where it should be.

 

ODS has grown over the years, especially after the tagsets came along. There are now multiple ways to do things, with each method having different abilities and limitations. SAS should clean this up, pick a destination that can do it all and let the other destinations become obsolete, and document that destination properly. The worst most prolific is the relationship with Excel, as @ChrisHemedinger briefly demonstrated.

 

 

 

 

 

 

Ksharp
Super User
Agree. But that might be a big obstacle for sas.
you can check all the option of tagsets.rtf by :
ods tagsets.rtf options(doc='help');

Actually I learned this option vsspace='no' is from @Cynthia_sas , I also have no time to go throught all these options of all these ODS destinations.
ChrisNZ
Tourmaline | Level 20

@Ksharp There's no vsspace in the help either.

 

There's this though:

 

 VSPACE: Default value is 'yes'.
      Current Value: on
      Usage: OPTIONS(VSPACE='yes')
      Description: 
        uses the PARSKIP event to place a space table in the document.
        'yes' and 'on' have the same action.
        Assigning 'no' or 'off' uses no PARSKIP table.

which is hardly helpful. It might be the same as vsspace who knows.

 

It's a mess. 😞

 

Ksharp
Super User
Yes. It is the same option since the LOG did not complain it by WARNING or ERROR.
SAS has some intelligence to know those are the same option .
ChrisNZ
Tourmaline | Level 20

Mmm the usual message for fixing typos is not there, like

WARNING 1-322: Assuming the symbol RENAME was misspelled as RENAEM.

 

 

Ksharp
Super User
Yeah. Maybe "vsspace" is just alias of "vspace" which is not documentation in.
For example: P= is same with PREDICTED= :
proc glm data=sashelp.class;
model weight=height;
output out=out predicted=pred;
quit;

proc glm data=sashelp.class;
model weight=height;
output out=out p=pred;
quit;
ChrisNZ
Tourmaline | Level 20
True. Fair point. If only there was some documentation to look this up...
Bill3
Calcite | Level 5

I need to output this RTF when making TLFs for FDA Submission. So, what is the difference between ods tagsets.rtf and ods rtf? What extra precautions should I take when using the ods tagsets.rtf.

Bill3
Calcite | Level 5
thank u very much@!

SAS Innovate 2025: Call for Content

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!

Submit your idea!

How to Concatenate Values

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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 11 replies
  • 1136 views
  • 3 likes
  • 3 in conversation