National Language Support (NLS), sometimes called software globalization, enables SAS to function properly outside the United States. This topic covers a few enhancements and migration issues. For full details, read the SAS National Language Support (NLS): Reference Guide.
Here are a few possible problems and their solutions.
SAS 9.1.3 customers who use transport files to migrate from a previous release with an incompatible encoding will encounter an error. For more details, see SAS Note 20578.
Under OS/390 or z/OS, when the default NONLSCOMPATMODE is in effect, SAS does not support substitution characters in SAS syntax. If you run SAS with NONLSCOMPATMODE, you will have to update existing programs to use national characters in place of those substitutions. For example, Danish customers who have substituted the Å for the $ character in existing SAS programs will have to update the SAS syntax to use the $ in their environments.
In SAS 9 and later, data sets are stamped with an encoding attribute when they are output, replaced, or updated. SAS uses the encoding attribute to determine whether CEDA transcoding is required.
If you have SAS 8 data sets, they are probably not stamped with an encoding attribute. (The attribute was supported in SAS 8 in China, Korea, and Japan only.) When there is no encoding attribute on a data set, PROC CONTENTS output shows the encoding as DEFAULT. If you replace or update such a data set, then be aware that the session encoding is stamped on the data set by default. If that behavior is not desired, you can override the data set's encoding by using the DATA step option ENCODING= or the LIBNAME options INENCODING= and OUTENCODING=.
If this behavior causes the session encoding to be stamped on the data set incorrectly, and you are certain of the correct encoding, then you can set it with the CORRECTENCODING= option on the MODIFY statement of the DATASETS procedure.
Starting with SAS 9.1, enhancements to the LOCALE= system option have made the Locale Setup Window unnecessary, and therefore it is no longer provided. For compatibility with servers that are running an earlier relase of SAS, use the %LS macro. This macro replaces the functionality of the Locale Setup Window and sets up the remote SAS environment for data transfer. If you are running SAS®9 on both your client and server sessions, the %LS macro is not necessary.
When a data set uses the ASCII-OEM character set, the MIGRATE procedure does not correctly transcode any non-English characters. This issue is very uncommon. Currently, only the ASCII-OEM character set is known to have this issue. To migrate a SAS data set with ASCII-OEM characters, use the CPORT and CIMPORT procedures with the TRANTAB option. Specify the appropriate TRANTAB values for the source and target data sets.