The PROC or DATA step supplies raw data and the name of the table definition that contains the formatting instructions, and ODS formats the output. You can use the Output Delivery System to format output from individual procedures and from the DATA step in many different forms other than the default SAS listing output.
The following figure shows how SAS produces ODS output.
* List of Tagsets that SAS Supplies and Supports
CHTML | HTML4 | SASIOXML | SASXMOH |
CSVALL | HTMLCSS | SASREPORT | SASXMOIM |
DEFAULT | IMODE | SASXML | SASXMOR |
DOCBOOK | PHTML | SASXMOG | WML |
EVENT_MAP | |||
[*] List of Tagsets that SAS Supplies but Does Not Support |
COLORLATEX | LATEX | SHORT_MAP | TPL_STYLE_MAP |
CSV | LATEX2 | STYLE_DISPLAY | TROFF |
CSVBYLINE | NAMEDHTML | STYLE_POPUP | WMLOLIST |
GRAPH | ODSSTYLE | TEXT_MAP | |
GTABLEAPPLET | PYX | TPL_STYLE_LIST |
CAUTION:
These tagsets are experimental tagsets. Do not use these tagsets in production jobs.
ODS is designed to overcome the limitations of traditional SAS output and to make it easy to access and create the new formatting options. ODS provides a method of delivering output in a variety of formats, and makes the formatted output easy to access.
Important features of ODS include the following:
ODS combines raw data with one or more table definitions to produce one or more output objects. These objects can be sent to any or all ODS destinations. You control the specific type of output from ODS by selecting an ODS destination. The currently available ODS destinations can produce
traditional monospace output
an output data set
an ODS document that contains a hierarchy file of the output objects
output that is formatted for a high-resolution printer such as PostScript and PDF
output that is formatted in various markup languages such as HTML
RTF output that is formatted for use with Microsoft Word.
ODS provides table definitions that define the structure of the output from SAS procedures and from the DATA step. You can customize the output by modifying these definitions, or by creating your own.
ODS provides a way for you to choose individual output objects to send to ODS destinations. For example, PROC UNIVARIATE produces five output objects. You can easily create HTML output, an output data set, traditional listing output, or printer output from any or all of these output objects. You can send different output objects to different destinations.
In the SAS windowing environment, ODS stores a link to each output object in the Results folder in the Results window.
Because formatting is now centralized in ODS, the addition of a new ODS destination does not affect any procedures or the DATA step. As future destinations are added to ODS, they will automatically become available to the DATA step and all procedures that support ODS.
With ODS, you can produce output for numerous destinations from a single source, but you do not need to maintain separate sources for each destination. This feature saves you time and system resources by enabling you to produce multiple kinds of output with a single run of your procedure or data query.