Step 2


Best Practices Migration with PROC MIGRATE: Migrate Files

Special Topic: Migrating Data Sets that Contain ASCII-OEM Characters

When a data set uses the ASCII-OEM character set, the MIGRATE procedure does not translate any non-English characters. Only the ASCII-OEM character set is known to have this issue. The DBCS character set has been tested and does not have this issue. You can determine whether characters are translated correctly by simply comparing PRINT procedure output from the source and target libraries.

To migrate a data set with ASCII-OEM characters, do not use PROC MIGRATE. Instead, use the CPORT and CIMPORT procedures with the TRANTAB option. Specify the appropriate TRANTAB values for the source and target data sets.

The following example specifies p850wlt1 and wlt1wlt1 for the old and new translation tables, respectively. Run the PRINT procedure to check whether the characters translate correctly.

   options trantab =(p850wlt1,wlt1wlt1) ;
   libname source v6 "source-library-pathname" ;
   libname target base "target-library-pathname" ;

   proc cport lib=source file="source-library-pathname\filename" ;
   run ;
   proc cimport lib=target infile="target-library-pathname\filename" ;
   run ;

   proc print data=target.filename ;
   run ;

See the SAS online documentation for information about using the TRANTAB option, using PROC CPORT and PROC CIMPORT, and working with national characters. See also the national language support topic for known migration issues.

Return to Step 2.