If you are writing to _WEBOUT by
using PUT statements while ODS has _WEBOUT open, when you execute
the code the PUT statement data might be out of sequence with the
data that is generated by ODS. This problem occurs with both
SAS/IntrNet applications and stored
processes. It tends to be more of an issue if you are upgrading from
SAS 8 to SAS®9. This problem occurs because both your code and
ODS are opening the same fileref at the same time. For example, the
following code might not always work as expected:
ods listing close;
ods html body=_webout path=&_tmpcat
(url=&_replay) Style=Banker;
... other code ...
data _null_;
file _webout;
put '<p align="center"> </p>' ;
put '<p align="center"><b>Test.
If you see this in order, it worked.</b></p>';
run;
... other code ...
ods html close;
This code might work
in some
SAS/IntrNet programs, but it can cause problems with the order
of data even in
SAS/IntrNet. This code is more likely to fail in a
stored process. This problem can be fixed by inserting PUT statements
before you open ODS, closing ODS while you write directly to the fileref,
or using the
ODS HTML TEXT="string"
option
to write data. The following code is an example of how you can both
close ODS while you write directly to the fileref, and insert your
PUT statements before you open ODS:
ods html
body=_webout
(no_bottom_matter)...;
... other code ...
ods html close;
data _null_;
file _webout;
put '<p align="center"> </p>' ;
put '<p align="center"><b>Test.
If you see this in order, it worked.</b></p>';
run;
ods html body=_webout (no_top_matter)...;
... other code ...
ods html close;
The following code
is an example of how you can use the
ODS HTML TEXT="string"
option to write data:
ods
listing
close;
ods html body=_webout path=&_tmpcat
(url=&_replay) Style=Banker;
... other code ...
ods html text='<p align="center"> </p>' ;
ods html text='<p align="center"><b>Test.
If you see this in order, it worked.</b></p>';
... other code ...
ods html close;