Chapter Contents


Moving and Accessing SAS Files across Operating Environments

Choosing a Method for Moving a SAS File

Consider these factors when choosing a method to move a SAS file between hosts:

Host Architectural Compatibility

The method you choose for moving a file depends on the host compatibility. Compatible hosts share the same internal architectures; they store numeric or character data in the same way. Incompatible hosts do not share a common internal architecture; each stores numeric or character data differently from the other.

Here are examples of compatible and incompatible host types:

Compatible Hosts Incompatible Hosts
OS/390 and CMS OS/390 and Windows
32-bit UNIX RISC hosts¹ 64-bit RISC host COMPAQ Digital UNIX and 32-bit UNIX RISC hosts¹
Version 6 Windows and Version 6 OS/2 Version 7 Windows and Version 8 OS/2²

¹ HP-UX, Solaris, AIX, and MIPS ABI are examples of 32-bit UNIX RISC hosts.

² Version 7 and Version 8 file formats are identical.

For a complete list of compatible host groups that share an identical architecture, store numeric data identically, or store character data identically, see Architectural Compatibility.

Host Type and SAS Release

The type of host and the SAS release that it runs determine which SAS files can be moved. For example, you can move a SAS file from a CMS host that runs Release 6.07 to a Windows NT host that runs Version 8. See Host Types Supported According to SAS Release for a list of supported hosts and SAS releases.

Note:    The ability to regress a SAS file (for example, from Version 8 to Version 6) also depends on the member being moved and the particular method used. For details about moving a SAS file from a later release to an earlier release, see Regressing SAS Data Sets from Version 8 to Version 6 Format.  [cautionend]

SAS Members That Can Be Moved

You can move these SAS members between hosts:

¹ Version 8 traditional methods to move SAS files do not support these members. However, SAS/CONNECT does support them. For details about using SAS/CONNECT to move files between hosts, see Using SAS/CONNECT to Transport Files between Hosts.

SAS Members That Cannot Be Moved

Here are examples of SAS files that traditional transport methods cannot move between hosts:

The only certain method for finding out if you can move a member type is to try it. The SAS log reports whether the move operation for the member type is not supported. Here is a typical error message for an attempted move of an unsupported catalog entry type:

WARNING: Entry type KEYMAP is not supported by CPORT.

The preceding message means that PROC CPORT could not move the catalog entry type KEYMAP. Because PROC CPORT is the only supported traditional technique for moving catalogs, you can infer that this catalog entry type cannot be moved. For details about supported traditional techniques for moving files, see Traditional Move Operations.

As another example, the move technique that you attempt may not support a given member type. Here is a typical error message for an attempted move with an unsupported move technique:

ERROR: The CATALOG FILE OPEN function is not supported
  by the XPORT engine.
ERROR: File XPTOUT.TESTCAT.CATALOG has not been saved
  because copy could not be completed

The preceding message means that the XPORT engine with PROC COPY cannot be used for moving a catalog. If one method fails, you may try another one. For information about supported methods, see Traditional Move Operations.

Neither a DATA step view nor a SAS/ACCESS view can be moved. However, you can re-create a view after its source data has been transferred to and restored at the target host. For example, a DATA step view must be re-created at the target host after the data set is restored at the target host.

Note:   A PROC SQL view can be created without the underlying table in place. However, if you invoke PROC SQL and submit a query that uses the view, an error message is displayed.   [cautionend]
Or, you can move the original SAS statements that were used to define your IML module definitions to the target host and then re-create the modules there. However, you cannot retrieve the definitions from your original IML module. For an item store, you must re-create it on the target host.

Third-Party DBMS Files That Cannot Be Moved

The traditional transport methods do not support moving third-party DBMS files between hosts, which include relational databases (DB2 and ORACLE are examples), nonrelational databases (ADABASE is an example), and PC file formats Excel and Lotus.

However, SAS/CONNECT and SAS/SHARE support accessing certain third-party DBMS files by means of the SQL procedure Pass-Through facility, which requires a SAS/ACCESS software license.

For more information about SAS/CONNECT, see Is SAS/CONNECT Licensed?. For more information about SAS/SHARE, see Using SAS/SHARE to Access Remote Files.

For complete details about SAS/ACCESS, see the document that is appropriate for the particular DBMS that you use. For information about relational databases, see SAS/ACCESS Software for Relational Databases: Reference. For details about nonrelational databases, see SAS/ACCESS Interface to CA-DATACOM/DB: Reference, SAS/ACCESS Interface to IMS-DL/I Software, SAS/ACCESS Interface to CA-IDMS Software: Reference, or SAS/ACCESS Interface to SYSTEM 2000 Data Management Software: Reference, as appropriate.

Is SAS/CONNECT Licensed?

SAS/CONNECT, which requires a separate license, is an alternative solution for file transport. It offers an effective method for moving SAS files and external files (binary or text) between incompatible hosts that run any SAS release.

Note:   SAS/CONNECT also supports moving certain third-party DBMS files by means of the SQL procedure Pass-Through facility, which requires a SAS/ACCESS software license.  [cautionend]

Using the UPLOAD and DOWNLOAD procedures, you move SAS files between hosts for remote processing. For incompatible hosts, SAS/CONNECT performs a dynamic file format translation between the native formats of the hosts for each read, write, or update operation. Likewise, SAS/CONNECT transparently converts the format that is associated with a SAS release that runs on one host to the format that is associated with the release that runs on the other host, depending on whether PROC UPLOAD or PROC DOWNLOAD is used. The SAS/CONNECT built-in transport facility bypasses the explicit creation of a transport file, which must be manually transferred to the target host and restored there. For more information about SAS/CONNECT, see Using SAS/CONNECT to Transport Files between Hosts.

Chapter Contents



Top of Page

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