MIGRATE Procedure

Using the SLIBREF= Option

When to Use the SLIBREF= Option

The SLIBREF= option is required if following two conditions are both met: if the source library contains catalogs that were created prior to SAS 9.1.3 and if the processing invokes CEDA on the target session. (In general, CEDA is invoked when you migrate to an incompatible operating environment or with an incompatible session encoding.)
For SAS 8 files, you can run a test to determine whether CEDA processing will be used by PROC MIGRATE. Starting in SAS®9, by default, SAS writes a message to the log when CEDA is used (prior to SAS®9, set MSGLEVEL=I). In the target session, try processing a data set that was created under the source session. Submit something simple like the CONTENTS procedure. Check the SAS log for a message. If CEDA processing was used, then you need the SLIBREF= option.
For SAS 6 files, only use the SLIBREF= option for SAS 6 HP-UX or Solaris libraries that contain catalogs. For more information, see Migrating a SAS 6 Library.
If you are uncertain whether you must specify SLIBREF=, use the PROC MIGRATE Calculator on the SAS Web site at http://support.sas.com/rnd/migration/planning/files/migratecalc/.
For sample code, see Migrating with Incompatible Catalogs across Computers and Migrating with Incompatible Catalogs on the Same Computer . For more information about CEDA, see the SAS Language Reference: Concepts.

When to Not Use the SLIBREF= Option

  • If you are migrating from SAS®9 or later (for example, migrating from SAS 9.1.3 to SAS 9.2), then SLIBREF= is not required. If you have incompatible catalogs, specify the SAS/CONNECT or SAS/SHARE server libref in the IN= argument and omit the SLIBREF= argument.
  • Do not use the SLIBREF= option if the library contains no catalogs.
  • If the library does contain catalogs, do not use the SLIBREF= option if CEDA processing will not be used by PROC MIGRATE.
If you are uncertain whether you must specify SLIBREF=, use the PROC MIGRATE Calculator on the SAS Web site at http://support.sas.com/rnd/migration/planning/files/migratecalc/.

Requirements for the SAS/CONNECT or SAS/SHARE Server

To use the SLIBREF= option, you must have access to a SAS/CONNECT or SAS/SHARE server that is running on the same type of operating environment as the source library. For example, if the source session is running under UNIX, then the server must be running under UNIX.
If the catalogs were created in SAS 6 or SAS 8, SLIBREF= must be assigned through a SAS 8 server. (Note that this is not the same server that you assign through the IN= argument. If you assign a server through the IN= argument, the IN= server must be SAS 9.1.3 or later.)
If you cannot meet these requirements, use the alternate method described in Additional Steps for Unsupported Catalogs.

Restrictions for the SLIBREF= Option

If CATALOG is the only member type in the library and you are using the SLIBREF= option, then omit the IN= argument.
When you use the SLIBREF= option for a SAS 8.2 library, multilabel formats are not supported. If a catalog contains a multilabel format, the format is not created on the target and an error is printed to the log. See SAS Note 20052, which is available from SAS customer support at http://support.sas.com.