ABAP Keyword Documentation → ABAP - Reference → Program Parameters → Language Environment → Text Pools
SET LANGUAGE
Other versions: 7.31 | 7.40 | 7.54
Syntax
SET LANGUAGE lang.
Effect
This statement loads the list headers and
text symbols from the
text pool in the language
specified in lang
. lang
must be a character-like
data object that contains a language key with the length 1. The possible language keys are contained in the SPRAS column of the database table T002. The loaded
text elements are only
valid for the current program and not for the programs called within it. If lang
contains a space, the behavior is undefined.
If there is no text pool for the specified language, the system loads the text pool in the secondary language which is specified in the
profile parameter
zcsa/second_language. If a secondary language is not set, no new text pool
is loaded and sy-subrc
is set to 4. In this case, the program continues to use the text elements of the previous text pool.
If list headers and text symbols are missing in a text pool loaded using SET LANGUAGE
but existed in the previously loaded text pool, these are initialized.
System Fields
sy-subrc | Meaning |
---|---|
0 | The text pool of the specified language or secondary language was loaded. |
4 | Neither the text pool of the specified language nor the secondary language could be loaded. |
Notes
- When calling a program, the system loads the text pool in the logon language by default. If this text pool does not exist, the system loads the text pool in the secondary language. If this text pool also does not exist, all text elements remain initialized.
-
The
SET LANGUAGE
statement does not load the selection texts of the language specified. If this is necessary, the statement READ TEXTPOOL can be used. The selection texts read in can then be displayed on the selection screen using the function modules SELECTION_TEXTS_MODIFY and SELECTION_TEXTS_DTEL. -
Do not confuse the statement
SET LANGUAGE
with the statementSET LOCALE LANGUAGE
, used for setting the text environment. In particular, it does not have a correspondingGET LANGUAGE
statement.
Example
Displays the text symbol text-010
in different languages. Output is produced for all languages for which the text pool exists in the specified language, or in the secondary language.
DATA langu LIKE sy-langu.
SELECT spras FROM t002
INTO @langu.
SET LANGUAGE langu.
IF sy-subrc = 0.
cl_demo_output=>write( |{ langu } { text-010 }| ).
ENDIF.
ENDSELECT.
cl_demo_output=>display( ).