Symptom You want to use language code 'Z1' in an SAP system. Other Terms Installed languages, TCP0C, TCP09, customer reserve Reason and Prerequisites You want to use Language code 'Z1' (internal representation: 'Z') alongside the other language codes allocated by SAP in an SAP system. This SAP Note describes the required changes in SAP system tables. This SAP Note applies to Language 'Z1' only, not to the "Correspondence languages" 'Z2' to 'Z9'. These are described in SAP Note 302063. Solution Limitations and disadvantages
- The customer language 'Z1' as well as the Correspondence Languages 'Z2' to 'Z9' are SAP proprietary and only known to ABAP based components.They are not understood in Java or Web based environments. It is therefore no longer recommended to use these language codes.
- The customer language is defined within one system. When data is exchanged between systems in a system landscape, the definition of the customer language must be identical in each system.
- Once 'Z1' or a Correspondence Language has been introduced, there is no migration tool available to automatically migrate the data to a regular language code.
Customer language 'Z1' in Unicode systems In case you still have a non-Unicode system, we strongly recommend to convert it to Unicode before introducing any new languages. In Unicode systems all ISO 639 language codes are supported, as well as many combinations of language and country or region or script. Please see SAP Note 42305 on how to activate them. Therefore, it is generally not necessary to set up the language 'Z1' in a Unicode system. Exceptions are the following cases:
- The language exists in a non-Unicode system, and you want to continue using it after the upgrade to Unicode.
- You need to exchange data in a system landscape between Unicode and non-Unicode systems. The language code used for the data is a Correspondence Language code (see SAP Note 871945).
In these cases, set up Z1 as described here. If you do not want to use Z1 as a logon language in the Unicode system, you can omit the 'Edit profiles' and 'Language supplementation' steps below.
Language-dependent sorting is not supported for the Z1 language in the Unicode system. The Unicode default sorting is used instead. This gives correct results for many languages, but not for Chinese and Japanese.
Setting up the 'Z1' language
- Determine the language most similar to Z1.
You must define which character set (code page) and which locale is to be used for language Z1. This depends on the (natural) language which is to be used to process language code Z1. Define the SAP language which is most similar to the language used in Z1. If you plan, for example, to fill Z1 with English, use 'EN' to determine the character set and the locale for Z1. If you want to store Japanese texts under Z1, select the settings for 'JA'.However, this SAP language must be active in your system already, that is, you must already have installed it correctly on the operating system. - Edit table TCP0C
Use transaction SM30 to edit table TCP0C. In TCP0C, search for the lines relating to your operating system for the language most similar to Z1. You can determine which lines are currently active in TCP0C in your system with the ABAP program RSCP0018 (table 4). Create a new line in TCP0C with the same entries but with the Z1 language key.
Example: Operating system AIX, 'Z1' should behave like 'EN':
Existing entry | AIX | EN | | | 1100 | 1100 | en_US.ISO8859-1 | New entry | AIX | Z1 | | | 1100 | 1100 | en_US.ISO8859-1 |
If - as is the case with English - there are several entries for the same operating system, select the one with the country specified in the column 'Country' that is entered in table TCP0D. In the above example, this entry is a blank. Note that you need to add one line into TCP0C for each operating system you use. A warning message may be displayed in the status bar of the SAP GUI during entry ("Select the key from the permitted namespace"). You can ignore this warning by pressing ENTER. - Edit table TCP09
Table TCP09 defines which language may be used in which character set. In the above example 'Z1' would be used with the SAP character set 1100. Enter an appropriate line in TCP09 with transaction SM30. - Execute program RSCPINST
Execute the ABAP program RSCPINST to activate the language 'Z1'. Follow the steps described in SAP Note 42305, section "Solution", for 'Z1'. - Edit TCP0F if required
If you have R/3 basis Release 4.6C or higher, the GUI code page is set up automatically. The GUI code page that belongs to the active character set of Table TCP0C is set by default. If you do not want this to happen, then you need to edit table TCP0F (see SAP Note 195490). - Editing profiles
This step is only necessary if you want to use Z1 as a logon language on an SAP_BASIS Release <=7.40. Enter the language 'Z' in the profile for installed languages (here, installed means: installed on the operating system, so that the language code can be used in the SAP System). The internal one-digit representation of 'Z' must be used here instead of 'Z1'. Example:
zcsa/installed_languages = DEFKZ - Language supplementation
This step is only necessary if you want to use Z1 as the logon language. Before the first logon in language Z1, you need to install the language by supplementation using transaction SMLT. For a description, see the SMLT online documentation: "Post Import Actions -> Starting Language Supplementation". Before that, you need to classify the language which is also explained in the documentation.
If language Z1 is not installed this way, the following error message appears during logon: I:TL:126 selected language not installed (or the same message in another language). - Translating table T002T manually if necessary
Language supplementation using transaction SMLT has problems with tables containing two language codes. It cannot decide which language code refers to the translation language. This means that in such tables there is no language supplementation. You can see this in the supplementation overview of transaction SMLT. The system displays return code 004 for the affected tables.
Table T002T is such a table: It contains the names of all existing language codes in every language installed on the system. The problem is explained in detail in SAP Note 759755. In releases that are not covered by SAP Note 759755 enter the missing entries manually if necessary, using for example the translation transaction SE63. - Editing T002X if necessary
In some system configurations a Java locale name is determined for each active language. This is for example the case for the SAP portal. The locale name is derived from the fields 'ISO2' and 'COUNTRY' of table T002X. These values are empty by default and must be maintained. You can use transaction SM30 to edit table T002X. For Language 'Z1', set the fields 'ISO2' and 'COUNTRY' to a value appropriate for the language Z1 in your system. You can copy the respective entries of the language which is most similar to Z1, as determined above.
Example: Z1 should behave like English.
| LAISO | ... | COUNTRY | ... | ISO2 | Existing entry in T002X | EN | | US | | en | New entry for Z1 | Z1 | | US | | en |
- Caution during the upgrade
TCP0C, T002X, and TCP09 are overwritten during an upgrade. The modifications of the content of these tables must be regenerated after the upgrade, before language Z1 is used
|