SAS ods html generates additional html code

1k views Asked by At

I use ods html to output HTML code from SAS to body=_webout. SAS version is 9.4. I would like to output a HTML table, but SAS generates automatically an additional table around the output of each ods html statement. For example this is my SAS code:

ods html text="<table id='test'>";

And this is the generated HTML code:

<table width="100%" style=" border: 0px solid #000000; border-spacing: 0px;" cellspacing="0" cellpadding="0" rules="none" frame="void">
   <tr>
      <td class="l usertext">**<table id='test'>**</td>
   </tr>
</table>

Is there an option to suppress the additional code from printing by SAS? With SAS 9.2 and the same code there was not such an effect.

1

There are 1 answers

2
Robert Penridge On BEST ANSWER

I guess SAS does it that way to ensure consistent formatting between ODS html outputs.

One workaround that we use to make sure that we get just what we want and nothing more is to simply use a data step in cases like this. The datastep can write to the reserved filename _webout as long as it's running as part of a web request:

data _null_;
  file _webout;
  put "<table id='test'>";
run;

When writing to _webout like this there is no need for an ODS html statement.