Chapter Contents

Previous

Next
SAS Companion for the CMS Environment

Accessing OSIRIS Files

The OSIRIS engine is a READ-only engine that enables you to access OSIRIS data and dictionary files as if they were SAS data files.


Assigning a Libref to an OSIRIS File

To assign a libref to an OSIRIS file so that you can access it, use this form of the LIBNAME statement:

LIBNAME libref OSIRIS data-filename DICT='dictionary-filename';

This form of the LIBNAME statement takes the following arguments:

libref
is a SAS libref.

OSIRIS
specifies the OSIRIS engine.

data-filename
specifies the physical filename of the data file.

dictionary-filename
specifies the physical filename of the data dictionary.

If the libref also appears as a fileref, the data-filename can be omitted in the LIBNAME statement. However, you must still use the DICT= option because the engine requires both files.

You do not need to use a LIBNAME statement before running PROC CONVERT on an OSIRIS file.


Referencing OSIRIS Files

OSIRIS data files do not have individual names. Therefore, you can use a member name of your choice in SAS programs for OSIRIS files. You can also use the member name _FIRST_ for an OSIRIS file.

You can also use the same dictionary file with different OSIRIS data files. In this case, specify a separate LIBNAME statement for each data file.

The contents of the dictionary file determine the file layout of the data file under OSIRIS. A data file has no other specific layout.

The layout of an OSIRIS data dictionary is consistent across operating environments. Although OSIRIS software runs only under OS/390 and CMS, the OSIRIS engine in the SAS System accepts a CMS data dictionary in any other operating environment that is running the SAS System. The data dictionary and data files should not be converted from EBCDIC and ASCII, however, because the OSIRIS engine expects EBCDIC data.


Example of Accessing OSIRIS Files

Suppose you want to read the data file TEMP OSIRDATA and the data dictionary is TEMP OSIRDICT. The following statements assign a libref to read the data in order, then run the CONTENTS and PRINT procedures on the file:

libname xxx osiris 'temp osirdata' dict='temp osirdict';
proc contents data=xxx._first_;
proc print data=xxx._first_;


Chapter Contents

Previous

Next

Top of Page

Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.