
Copyright © 2005 Destiny Corporation. All rights reserved.
· Introduction
· Data Migration
· Catalog Migration
· Migrate Procedure and Tools
· Validation Macros
· Executing Proc Migrate
· Process Following Proc Migrate
· Consolidation with Wrapper Macros
· Summary
V9 users may need to work with data and catalogs from other versions of SAS. Earlier engines may be used to define libraries of SAS files.
Data
Migration
In Version 9, SAS supports formats and informats that are longer than 8 bytes. This is the only difference in the data set structures. Version 8 data sets are upward compatible to Version 9 by default. Version 9 data sets are backward compatible if formats and informats conform to Version 8 naming conventions.
Libname statements offer support for the new V9 engine as well as the V8, V7 and V6 engines.
V9 supports more than 32,767 variables in a data set. The metadata LIBNAME engines do not require knowing the details of each one. The engines allow for different options, behavior, and tuning requirements for access to various sources of data.
The new SASEDOC LIBNAME engine allows output objects to be bound that persist in an ODS document.
The new character variable packing (CVP) engine expands variable character lengths. This is designed to eliminate character data truncation when a file requires transcoding.


The file extensions are still the same as in Version 8.
|
File Extension |
SAS Member Type |
Description |
|
.cfg |
None |
Configuration File |
|
.log |
None |
Log |
|
.lst |
None |
Output |
|
.sas |
None |
SAS Program |
|
.sas7bacs |
Access |
Access descriptor |
|
.sas7baud |
Audit |
Audit file |
|
.sas7bbak |
None |
Backup |
|
.sas7bcat |
Catalog |
SAS catalog |
|
.sas7bdat |
Table |
Data set |
|
.sas7bdmd |
DMDB |
Data Mining Database |
|
.sas7bfdb |
FDB |
Consolidation Database |
|
.sas7bitm |
Itemstore |
Item store |
|
.sas7bmdb |
MDDB |
Multi-dimensional database |
|
.sas7bndx |
None |
Data set index. Indexes are stored as separate files but are treated by the SAS System as integral parts of the SAS data file. |
|
.sas7bods |
|
Output Delivery System file |
|
.sas7bpgm |
Program |
Stored DATA step program |
|
.sas7butl |
Utility |
Temporary utility |
|
.sas7bput |
Utility |
Permanent utility |
|
.sas7bvew |
View |
Data set view |
Note: Version 6 catalogs or Version 8 catalogs on 32 bit systems that are being upgraded to 64 bit systems must be updated from previous versions of SAS to Version 9 with the standing CPORT/CIMPORT procedures.


Migrate Procedure and Tools
A new procedure and set of tools has been created to allow for easy migration of older SAS libraries, starting from Version 6.
See the following web site for further details, syntax and options.
http://support.sas.com/rnd/migration/resources/procmigrate/index.html
The process is simple.
Go to the following web location,
http://support.sas.com/rnd/migration/resources/procmigrate/migrate_macros.txt
Copy the code and paste it into a SAS session. Submit it.
After executing Migrate_macros.sas, run code similar to the following. It will allow for setting up a pointer to

The %before macro analyzes the library and its contents prior to migration.
The %after macro analyzes the library after migration.
The %checkem macro runs several routines to compare the new files with the old files.
Several reports are created to show the process and the results.
This is a report showing the original libref and its members.

This is a report showing an original member (data set A) in the libref.

This is a report showing the new members created in lib2.

This report shows the new data set A.

This report shows all of the members of the new libref with their result column. OK means the migration was successful for that file.

Listed here are another set reports showing successful migration and the individual files.



This final set of reports shows the structure of each file.

This report shows the comparison results of the data found in the old and the new file.

Data Migration between SAS versions, especially between V8 and V9 can be done easily. Longer Format and Informat names are the only Data Set consideration in moving from V9 to V8. Converting from 32 bit to 64 bit systems requires the use of Proc Cport / Cimport or Proc Migrate on the same platform. However, remember when moving compiled objects, the original source code may be needed on the new operating system for recompiling under that environment. Compiled objects may not migrate to new platforms.
Proc Migrate and its tools are also very powerful for copying files from older versions of SAS, while creating migration and validation reports.