Managing Application Globalization
This section describes how to translate an application built in Application Builder.This section contains the following topics:
-
About Translating an Application and Globalization Support
-
Specifying the Primary Language for an Application
-
Understanding the Translation Process
-
Translating Messages
-
Translating Data That Supports List of Values
-
About Supported Globalization Codes
See Also:
"Viewing Installed Translations"About Translating an Application and Globalization Support
You can develop applications in Application Builder that can run concurrently in different languages. A single Oracle database instance and Oracle Application Express can support multiple database sessions customized to support different languages.In general, translating an application built in Application Builder involves the following steps:
-
Map the primary and target application IDs
-
Seed and export the text to a file for translation
-
Translate the text in the file
-
Apply the translated file
-
Publish the translated file
See Also:
"Understanding the Translation Process"-
About Language Identification
-
Rules for Translating Applications Built in Application Builder
-
How Translated Applications Are Rendered
-
About Translatable Components
About Language Identification
After you create an application, you specify a language preference on the Edit Globalization Attributes page. Then you select a primary application language and determine how the Application Express engine determines the application language. You can specify to have the application language based on the user's browser language preference, an application preference, or an item preference.Rules for Translating Applications Built in Application Builder
Use the following rules to determine which translated version to use:-
Look for an exact match between the user language preference and the language code of the translated application.
-
Look for a truncated match. That is, see if the language and locale exist. For example, if the user language preference is
en-us
and the translated version ofen-us
does not exist, look for a translated application that has the language codeen
.
-
Use the primary application language.
de
, and you create a translated version of the application with a language code of en-us
. Users accessing this application with a browser language of en-us
execute the English en-us
version of the application. Users accessing the application with a browser language of en-gb
view the application in the application's primary language, that is, in
German. For this example, you should create the translated English
version using language code en
to encompass all variations of en
.How Translated Applications Are Rendered
After Oracle Application Express determines the language for an application, the Application Express engine alters the database language for a specific page request. It then looks for a translated application in the appropriate language. If the Application Express engine finds that language, it renders the application using that definition. Otherwise, it renders the application in the base (or primary) application language.Note that the text that displays within an application is not translated on the fly. Oracle Application Express dynamically collects page attributes from either a base language application definition or an alternative application definition.
About Translatable Components
When you build an application in Application Builder, you define a large number of declarative attributes such as field labels, region headings, page header text, and so on. Using the steps described in this section, you can make all the application definition attributes within your application translatable.About Shortcuts that Support Translatable Messages
Application Builder includes two shortcut types that enable you to reference translatable messages:-
Message. Use this shortcut to reference a
translatable message at run time. Note that the name of the shortcut
must match the corresponding message name. At run time, the name of the
shortcut expands to the text of the translatable message for the current
language.
-
Message with JavaScript Escaped Single Quotes.
Use this shortcut to reference a shortcut inside of a JavaScript
literal string and reference a translatable message at run time. This
shortcut defines a text string. When the shortcut is referenced, it
escapes the single quotation marks required for JavaScript.
See Also:
"Using Shortcuts"About Messages
If your application includes PL/SQL regions or PL/SQL processes, you may need to translate any generated HTML or text. You may also need to translate messages used in reports if your application uses a language that is not one of the ten languages into which Oracle Application Express is translated.
See Also:
"Translating Messages"About Dynamic Translation Text Strings
Dynamic translations are used for database data that needs to be translated at run time. For example, you might use a dynamic translation to translate a list of values based on a database query. A dynamic translation consists of a translate-from language string, a language code, and a translate-to string. You can also use theAPEX_LANG.LANG
API to retrieve dynamic translations programmatically.About Translating Region Titles
By default, page region titles are included in the generated translation file. However, you can mark a region title as not translatable.To mark a region title as not translatable:
-
Navigate to the Page Definition. See "Accessing a Page Definition".
-
On the Page Definition, select the region title.
The Edit Region page appears.
-
Select the exclude title from translation check box.
About Translating Templates
By default, templates are not translatable, and therefore are not included in the generated translation file. Generally, templates do not and should not contain translatable text. However, if you need to mark a template as translatable, select the Translatable check box on the Edit Page Template page.To identify a template as translatable:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
On the Application home page, click Shared Components.
-
Under User Interface, select Templates.
The Templates page appears.
-
Locate the template you want to edit and select the template name.
-
Under Name, select Translatable.
See Also:
Specifying the Primary Language for an Application
Globalization attributes specify how the Application Express engine determines the primary language of an application.To edit globalization attributes:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
Click Shared Components.
-
Under Globalization, click Edit Attributes.
-
From Application Primary Language, select the language in which the application is being developed.
-
From Application Language Derived From,
specify how the Application Express engine determines (or derives) the
application language. Available options are described in Table 14-1.
Table 14-1 Application Language Derived From OptionsOption Description No NLS (Application not translated) Select this option if the application will not be translated. Use Application Primary Language Determines the application's primary language based on the Application Primary Language attribute. (See step 5.) Browser (use browser language preference) Determines the application's primary language based on the user's browser language preference. Application Preference (use FSP_LANGUAGE_PREFERENCE) Determines the application's primary language based on a value defined using the APEX_UTIL
.SET_PREFERENCE
API. Select this option to maintain the selected language preference across multiple logins.
See Also: "SET_PREFERENCE Procedure"Item Preference (use item containing preference) Determines the application's primary language based on an application-level item called FSP_LANGUAGE_PREFERENCE
. Using this option requires Oracle Application Express to determine the appropriate language preference every time the user logs in.
See Also:
"Configuring the Application Definition", "Configuring Globalization Attributes", and "About Supported Globalization Codes"Using Format Masks for Items
The Application Express engine applies globalization settings for each rendered page. This default behavior can impact the display of certain items such as numbers and dates.For example, suppose your application determines the application language based on the user's browser language preference. If the Application Express engine determines the users's browser language preference is French, it displays dates and numbers in a format that conforms to French standards. You can override this default behavior and explicitly control how items display by applying a format mask. You apply a format mask by making a selection from the Display As list:
-
When you create the item
-
After you create the item by editing the item attributes
To edit item attributes:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
Select a page.
The Page Definition appears.
-
Under Items, select the item name.
The Edit Page Item page appears.
-
Under Name, make a selection from the Display As list.
-
Under source, select or enter a format mask.
See Also:
"Items" for information about item attributes.Translating Applications for Multibyte Languages
If your application needs to run in several languages simultaneously (such as Chinese and Japanese), consider configuring your database with a character set to support all of the languages. The same character set has to be configured in the corresponding database access descriptor (DAD) in mod_plsql.UTF8
and AL32UTF8
are the character sets you can use to support almost all languages around the world.Understanding the Translation Process
To translate an application developed in Application Builder, you must map the primary and target language, seed and export text to a translation file, translate the text, apply the translation file, and publish the translated application.Topics in this section include:
-
Step 1: Map the Target Language
-
Step 2: Seed and Export Text to a Translation File
-
Step 3: Translate the XLIFF File
-
Step 4: Upload and Apply a Translated XLIFF Document and Publish the Application
-
Manually Editing a Translation
Step 1: Map the Target Language
The first step in translating an application is to map the primary and target application language. The primary application is the application to be translated. The target application is the resulting translated application.To map the primary and target application language:
-
Navigate to the Translate Application page:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
Click Shared Components.
-
Under Globalization, click Translate Application.
The Translate Application page appears.
-
On the Workspace home page, click the Application Builder icon.
-
Click Map your primary language application to a translated application.
The Application Mappings page appears.
-
Click Create.
-
On the Translation Application Mapping page:
-
Translation Application - Enter a numeric application ID to identify
the target application. The translated application ID must be an integer
and cannot end in zero.
-
Translation Application Language Code - Select the language into which you are translating.
-
Image Directory - Enter the directory where the images currently reside.
This attribute determines the virtual path for translated images. For example, if your primary language application had an image prefix of/i/
, you could define additional virtual directories for other languages, such as/i/de/
for German or/i/es/
for Spanish.
Note that this language specific image directory is typically not needed for most translated applications.
-
Translation Application - Enter a numeric application ID to identify
the target application. The translated application ID must be an integer
and cannot end in zero.
-
Click Create.
Step 2: Seed and Export Text to a Translation File
The second step is to seed the translation table and then export the translation text to a translation file.Topics in this section include:
Seeding Translatable Text
Seeding the translation copies all translatable text into the Translation Text repository. After you specify the language and seed the Translation Text, you can then generate and export an XLIFF file for translation.The seeding process keeps your primary language application synchronized with the Translation Text repository. You should run the seed process any time your primary language application changes.
To seed translatable text:
-
Navigate to the Translate Application page:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
Click Shared Components.
-
Under Globalization, click Translate Application.
The Translate Application page appears.
-
On the Workspace home page, click the Application Builder icon.
-
On the Translate Application page, select Seed and export the translation text of your application into a translation file.
-
From Language Mapping, select the appropriate primary and target application ID map.
-
Click Seed Translatable Text.
The XLIFF Export page appears.
Note:XML Localization Interchange File Format (XLIFF) is an XML-based format for exchanging localization data. For information about the XLIFF or to view the XLIFF specification, see:
http://www.xliff.org
Exporting Text to a Translation File
After you have seeded translatable text, a status box displays at the top of the XLIFF Export page indicating the total number of attributes that may require translation, including the number of:-
Existing updated attributes that may require translation
-
New attributes that may require translation
-
Purged attributes that no longer require translation
The XLIFF Export page is divided into two sections. Use the upper section of the page to export translatable text for an entire application (that is, all pages, lists of values, messages, and so on). Use the lower section to export translatable text for a specific page.
Exporting Translatable Text for an Entire Application
To export translatable text for an entire application:-
Seed the translatable text. See "Seeding Translatable Text".
-
Under Step 2, Export XLIFF:
-
From Application, select the appropriate primary and target application ID map.
-
Specify whether or not to include XLIFF target elements.
-
Under Export, specify what translation text is included in your XLIFF file.
-
Click Export XLIFF for Application.
-
From Application, select the appropriate primary and target application ID map.
-
Follow the on-screen instructions.
Exporting Translatable Text for a Specific Page
To export translatable text for a specific page:-
Seed the translatable text as described in "Seeding Translatable Text".
-
Under Export XLIFF for specific Page:
-
From Application, select the appropriate primary and target application ID map.
-
Specify whether or not to include XLIFF target elements.
-
Under Export, specify what translation text is included in your XLIFF file.
-
Click Export XLIFF for Page.
-
From Application, select the appropriate primary and target application ID map.
-
Follow the on-screen instructions.
About Including XLIFF Target Elements
When Oracle Application Express generates an XLIFF document, each document contains multiple translation units. Each translation unit consists of a source element and a target element. The XLIFF document can be generated with both the source and target elements for each translation unit. You have the option of generating a file containing only source elements. The updated translations will be applied from the target elements of the translation units.About Export
Use the options under Export to specify what translation text is included in your XLIFF file. Select All translatable elements to include all translation text for an application. In contrast, select Only those elements requiring translation to include only new elements that have not yet been translated. Only those elements requiring translation produces an XLIFF file containing new or modified translation units. Also, if translation units were intentionally not previously translated (that is, the source of the translation element equals the target of the translation element), those translation units will also be included in the fileStep 3: Translate the XLIFF File
After you export a translatable file to XLIFF format, you can translate it into the appropriate languages. Because XLIFF is an open standard XML file for exchanging translations, most translation vendors should support it. Oracle Application Express only supports XLIFF files encoded in UTF-8 character sets. In other words, it exports XLIFF files for translation in UTF-8 and assumes that the translated XLIFF files will be in the same character set.Translation is a time-consuming task. Oracle Application Express supports incremental translation so that application development can be done in parallel with the translation. An XLIFF file can be translated and uploaded to Oracle Application Express even when only part of the XLIFF file is translated. For strings that have no translation in the corresponding translated application, Oracle Application Express uses the corresponding ones in the primary language.
See Also:
For more information about the XLIFF, or to view the XLIFF specification, see:
http://www.xliff.org
Step 4: Upload and Apply a Translated XLIFF Document and Publish the Application
After your XLIFF document has been translated, the next step is to upload and then apply it.Topics in this section include:
-
Uploading a Translated XLIFF Document
-
Applying an Uploaded XLIFF Document and Publishing an Application
-
Deleting an Uploaded XLIFF Document
Uploading a Translated XLIFF Document
To upload a translated XLIFF document:-
Navigate to the Translate Application page:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
Click Shared Components.
-
Under Globalization, click Translate Application.
The Translate Application page appears.
-
On the Workspace home page, click the Application Builder icon.
-
Click Apply your translation file and publish.
-
Click Upload XLIFF.
-
On the XLIFF Upload page:
-
Specify a title.
-
Enter a description.
-
Click Browse and locate the file to be uploaded.
-
Click Upload XLIFF File.
-
Specify a title.
Applying an Uploaded XLIFF Document and Publishing an Application
After you upload an XLIFF document, the next step is to apply the XLIFF document and then publish the translated application. When you apply an XLIFF document, the Application Express engine parses the file and then updates the translation tables with the new translatable text.Publishing your application creates a copy of the base language application, substituting the translated text strings from your translations table. This published application can then be used to render your application in alternate languages.
Remember that in order to run an application in an alternative language, you need to run it with globalization settings that will cause an alternative language version to display. For example, if the language is derived from the browser language, you must set the browser language to the same language as the translated application.
To apply a translated XLIFF document and publish the application:
-
Navigate to the Translate Application page:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
Click Shared Components.
-
Under Globalization, click Translate Application.
The Translate Application page appears.
-
On the Workspace home page, click the Application Builder icon.
-
Click Apply your translation file and publish.
-
In the XLIFF Files repository, click the View icon next to the document you want to publish.
-
From Apply to, select the appropriate primary and target application ID map.
-
Click Apply XLIFF Translation File.
-
Click Publish Application.
Deleting an Uploaded XLIFF Document
To delete an uploaded XLIFF document:-
Navigate to the Translate Application page:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
Click Shared Components.
-
Under Globalization, click Translate Application.
The Translate Application page appears.
-
On the Workspace home page, click the Application Builder icon.
-
On the Translate Application page, select Apply your translation file and publish.
-
In the XLIFF Files repository, select the check box to the left of the document title.
-
Click Delete Checked.
Note that in order for a translated application to appear in Application Builder, you need to make sure that you have correctly configured the application Globalization attributes.
Manually Editing a Translation
Once you have mapped the target language and seeded the translatable text, you manually edit a translation.To manually edit a translation:
-
Map the target language. See "Step 1: Map the Target Language".
-
Seed the translatable text. See "Seeding Translatable Text".
-
Navigate to the Translatable Text page:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
Click Shared Components.
-
Under Globalization, click Translate Application.
-
On the Workspace home page, click the Application Builder icon.
-
From the Translation Utilities list, click Manually Edit Translations.
The Translatable Text page appears. Use the Navigation bar at the top of the page to change the report display. Available options include:
-
Language Mappings - Select a language mapping and click Go.
-
Page - Enter a page number and click Go.
-
Translate - Enter a case insensitive query and click Go.
-
Display - Select the number of rows to display and click Go.
-
Language Mappings - Select a language mapping and click Go.
-
To edit translatable text, click the Edit icon.
The Translatable Text field appears.
-
Edit the appropriate text and click Apply Changes.
Translating Messages
You may need to translate messages if your application:-
Includes PL/SQL regions or PL/SQL processes or calls PL/SQL package,
procedures, or function. If it does, you may need to translate the
generated HTML.
-
Uses a language that is not one of the ten languages into which
Oracle Application Express is translated. If it does, you may need to
translate messages used in reports.
-
Translating Messages Used in PL/SQL Procedures
-
Translating Messages Used Internally by Application Express
Translating Messages Used in PL/SQL Procedures
If your application includes PL/SQL regions or PL/SQL processes or calls PL/SQL package, procedures, or functions, you may need to translate generated HTML. First, you define each message on the Translatable Messages page. Second, you use theAPEX_LANG
.MESSAGE
API to translate the messages from PL/SQL stored procedures, functions, triggers, or packaged procedures and functions.You create translatable messages on the Translate Messages page.
To define a new translation message:
-
Navigate to the Translate Application page:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
Click Shared Components.
-
Under Globalization, click Text Messages.
-
On the Workspace home page, click the Application Builder icon.
-
On the Translate Messages page, click Create.
-
On Identify Text Message, specify the following:
-
Name - Enter a name to identify the message.
-
Language - Select the language for which the message would be used.
-
Text - Enter the text to be returned when the text message is called.
For example, you could define the messageGREETING_MSG
in English as:
Good morning %0
Or, you could define the messageGREETING_MSG
in German as:
Guten Tag %0
-
Name - Enter a name to identify the message.
-
Click Create.
About the APEX_LANG.MESSAGE API
Use theAPEX_LANG
.MESSAGE
API to translate
text strings (or messages) generated from PL/SQL stored procedures,
functions, triggers, packaged procedures, and functions.
Syntax
APEX_LANG.MESSAGE ( p_name IN VARCHAR2 DEFAULT NULL, p0 IN VARCHAR2 DEFAULT NULL, p1 IN VARCHAR2 DEFAULT NULL, p2 IN VARCHAR2 DEFAULT NULL, ... p9 IN VARCHAR2 DEFAULT NULL, p_lang IN VARCHAR2 DEFAULT NULL) RETURN VARCHAR2;
Parameters
Table 14-2 describes the parameters available in the APEX_LANG
.MESSAGE API.
Table 14-2 APEX_LANG.MESSAGE Parameters
Parameter | Description |
---|---|
p_name |
Name of the message as defined in Oracle Application Express. |
p0 ... p9 |
Dynamic substitution value: p0 corresponds to 0% in the message; p1 corresponds to 1% in the message; p2 corresponds to 2% in the message, and so on. |
p_lang |
Language code for the message to be retrieved. If not specified,
Oracle Application Express uses the current language for the user as
defined in the Application Language Derived From attribute. See Also: "Specifying the Primary Language for an Application" |
Example
The following example assumes you have defined a message called GREETING_MSG
in your application in English as Good morning%0
and in German as Guten Tag%1
. The following example demonstrates how you could invoke this message from PL/SQL:BEGIN -- -- Print the greeting -- APEX_LANG.MESSAGE('GREETING_MSG', V('APP_USER')); END;How the
p_lang
attribute is defined depends on how the
Application Express engine derives the Application Primary Language. For
example, if you are running the application in German and the previous
call is made to the APEX_LANG
.MESSAGE
API, the Application Express engine first looks for a message called GREETING_MSG
with a LANG_CODE
of de
.
If it does not find anything, then it will revert to the Application
Primary Language attribute. If it still does not find anything, the
Application Express engine looks for a message by this name with a
language code of en-us
.
See Also:
"Specifying the Primary Language for an Application" for information about the Application Primary Language attributeTranslating Messages Used Internally by Application Express
Oracle Application Express is translated into German, Spanish, French, Italian, Japanese, Korean, Brazilian Portuguese, Simplified Chinese, and Traditional Chinese. If your application uses a language that is not among the ten languages into which Oracle Application Express is translated, you need to translate messages displayed by the Application Express reporting engine.For example, if you develop a Russian application and want to include report messages, such as pagination, in Russian, you need to translate the strings used in messages displayed in reports.
To translate messages:
-
Navigate to the Translate Application page:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
Click Shared Components.
-
Under Globalization, click Text Messages.
-
On the Workspace home page, click the Application Builder icon.
-
On the Translate Messages page, click Create.
-
On Identify Text Message, specify the following:
-
Name - Enter the name of each message that needs to be translated. See Table 14-3.
-
Language - Select the language for which the message would be used.
-
Text - Enter the text to be returned when the text message is called.
If the English text message contains positional substitution values
(for example,
%0
,%1
), ensure that your defined message also contains the same named and number of positional substitution values.
-
Name - Enter the name of each message that needs to be translated. See Table 14-3.
-
Click Create.
Table 14-3 Internal Messages Requiring Translation
Message Name | English Text |
---|---|
FLOW.SINGLE_VALIDATION_ERROR |
1 error has occurred |
FLOW.VALIDATION_ERROR |
%0 errors have occurred |
OUT_OF_RANGE |
Invalid set of rows requested, the source data of the report has been modified |
PAGINATION.NEXT |
Next |
PAGINATION.NEXT_SET |
Next Set |
PAGINATION.PREVIOUS |
Previous |
PAGINATION.PREVIOUS_SET |
Previous Set |
REPORT_TOTAL |
report total |
RESET |
reset pagination |
SINCE_DAYS_AGO |
%0 days ago |
SINCE_HOURS_AGO |
%0 hours ago |
SINCE_MINUTES_AGO |
%0 minutes ago |
SINCE_MONTHS_AGO |
%0 months ago |
SINCE_SECONDS_AGO |
%0 seconds ago |
SINCE_WEEKS_AGO |
%0 weeks ago |
SINCE_YEARS_AGO |
%0 years ago |
TOTAL |
Total |
WWV_FLOW_UTILITIES.CAL |
Calendar |
WWV_FLOW_UTILITIES.CLOSE |
Close |
WWV_FLOW_UTILITIES.OK |
Ok |
WWV_RENDER_REPORT3.FOUND_BUT_NOT_DISPLAYED |
Minimum row requested: %0, rows found but not displayed: %1 |
WWV_RENDER_REPORT3.SORT_BY_THIS_COLUMN |
Sort by this column |
WWV_RENDER_REPORT3.X_Y_OF_MORE_THAN_Z |
row(s) %0 - %1 of more than %2 |
WWV_RENDER_REPORT3.X_Y_OF_Z |
row(s)%0 - %1 of %2 |
WWV_RENDER_REPORT3.X_Y_OF_Z_2 |
%0 - %1 of %2 |
Translating Data That Supports List of Values
You create a dynamic translation to translate dynamic pieces of data. For example, you might use a dynamic translation on a list of values based on a database query.Dynamic translations differ from messages in that you query a specific string rather than a message name. You define dynamic translations on the Dynamic Translations page. You then use the
APEX_LANG
.LANG
API to return the dynamic translation string identified by the p_primary_text_string
parameter.Defining a Dynamic Translation
You define dynamic translations on the Dynamic Translations page. A dynamic translation consists of a translate-from language string, a language code, and a translate-to string.To define a dynamic translation:
-
Navigate to the Translate Application page:
-
On the Workspace home page, click the Application Builder icon.
-
Select an application.
-
Click Shared Components.
-
Under Globalization, click Translate Application.
-
On the Workspace home page, click the Application Builder icon.
-
On the Translate Application page, select Optionally identify any data that needs to be dynamically translated to support SQL based lists of values.
-
On the Dynamic Translations page, click Create and specify the following:
-
Language - Select a target language.
-
Translate From Text - Enter the source text to be translated.
-
Translate To - Enter the translated text.
-
Language - Select a target language.
-
Click Create.
APEX_LANG.LANG API
Syntax
APEX_LANG.LANG ( p_primary_text_string IN VARCHAR2 DEFAULT NULL, p0 IN VARCHAR2 DEFAULT NULL, p1 IN VARCHAR2 DEFAULT NULL, p2 IN VARCHAR2 DEFAULT NULL, ... p9 IN VARCHAR2 DEFAULT NULL, p_primary_language IN VARCHAR2 DEFAULT NULL) RETURN VARCHAR2;
Parameters
Table 14-4 describes the parameters available in the APEX_LANG
.LANG
API.
Table 14-4 APEX_LANG.LANG Parameters
Parameter | Description |
---|---|
p_primary_string |
Text string of the primary language. This will be the value of the Translate From Text in the dynamic translation. |
p0 ... p9 |
Dynamic substitution value: p0 corresponds to 0% in the in the translation string; p1 corresponds to 1% in the translation string; p2 corresponds to 2% in the translation string, and so on. |
p_primary_language |
Language code for the message to be retrieved. If not specified,
Oracle Application Express uses the current language for the user as
defined in the Application Language Derived From attribute. See Also: "Specifying the Primary Language for an Application" |
Example
Suppose you have a table that defines all primary colors. You could define a dynamic message for each color and then apply the LANG
function to the defined values in a query. For example:SELECT APEX_LANG.LANG(color) FROM my_colorsIf you were running the application in German,
RED
was a value for the color column in the my_colors
table, and you defined the German word for red, the previous example would return ROT
.About Supported Globalization Codes
If you are building a multilingual application, it is important to understand how globalization codes affect the way in which your application runs. These codes are set automatically based on the application-level Globalization attributes you select.NLS_LANGUAGE
and NLS_TERRITORY
determine the default presentation of numbers, dates, and currencies.Table 14-5 describes the globalization codes in Oracle Application Express.
Table 14-5 Oracle Application Express Globalization Codes
Language Name | Language Code | NLS_LANGUAGE | NLS_TERRITORY |
---|---|---|---|
Afrikaans | af |
ENGLISH | SOUTH AFRICA |
Arabic | ar |
ARABIC | UNITED ARAB EMIRATES |
Arabic (Algeria) | ar-dz |
ARABIC | ALGERIA |
Arabic (Bahrain) | ar-bh |
ARABIC | BAHRAIN |
Arabic (Egypt) | ar-eg |
EGYPTIAN | EGYPT |
Arabic (Iraq) | ar-iq |
ARABIC | IRAQ |
Arabic (Jordan) | ar-jo |
ARABIC | JORDAN |
Arabic (Kuwait) | ar-kw |
ARABIC | KUWAIT |
Arabic (Lebanon | ar-lb |
ARABIC | LEBANNON |
Arabic (Libya) | ar-ly |
ARABIC | LIBYA |
Arabic (Morocco) | ar-ma |
ARABIC | MOROCCO |
Arabic (Oman) | ar-om |
ARABIC | OMAN |
Arabic (Qatar) | ar-qa |
ARABIC | QATAR |
Arabic (Saudi Arabia) | ar-sa |
ARABIC | SAUDI ARABIA |
Arabic (Syria) | ar-sy |
ARABIC | SYRIA |
Arabic (Tunisia) | ar-tn |
ARABIC | TUNISIA |
Arabic (U.A.E.) | ar-ae |
ARABIC | UNITED ARAB EMIRATES |
Arabic (YEMEN) | ar-ye |
ARABIC | YEMEN |
Assamese | as |
ASSAMESE | INDIA |
Basque | eu |
FRENCH | FRANCE |
Belarusian | be |
RUSSIAN | RUSSIA |
Bengali | bn |
BANGLA | BANGLADESH |
Bulgarian | bg |
BULGARIAN | BULGARIA |
Catalan | ca |
CATALAN | CATALONIA |
Chinese | zh |
SIMPLIFIED CHINESE | CHINA |
Chinese (China) | zh-cn |
SIMPLIFIED CHINESE | CHINA |
Chinese (Hong Kong SAR) | zh-hk |
TRADITIONAL CHINESE | HONG KONG |
Chinese (Macau SAR) | zh-mo |
TRADITIONAL CHINESE | HONG KONG |
Chinese (Singapore) | zh-sg |
SIMPLIFIED CHINESE | SINGAPORE |
Chinese (Taiwan) | zh-tw |
TRADITIONAL CHINESE | TAIWAN |
Croatian | hr |
CROATIAN | CROATIA |
Czech | cs |
CZECH | CZECH REPUBLIC |
Danish | da |
DANISH | DENMARK |
Dutch (Belgium) | nl-be |
DUTCH | BELGIUM |
Dutch (Netherlands) | nl |
DUTCH | THE NETHERLANDS |
English | en |
AMERICAN | AMERICA |
English (Australia) | en-au |
ENGLISH | AUSTRALIA |
English (Belize) | en-bz |
ENGLISH | UNITED KINGDOM |
English (Canada) | en-ca |
ENGLISH | CANADA |
English (Ireland) | en-ie |
ENGLISH | IRELAND |
English (Jamaica) | en-jm |
ENGLISH | UNITED KINGDOM |
English (New Zealand) | en-nz |
ENGLISH | NEW ZEALAND |
English (Philippines) | en-ph |
ENGLISH | PHILIPPINES |
English (South Africa) | en-za |
ENGLISH | SOUTH AFRICA |
English (Trinidad) | en-tt |
ENGLISH | UNITED KINGDOM |
English (United Kingdom) | en-gb |
ENGLISH | UNITED KINGDOM |
English (United States) | en-us |
AMERICAN | AMERICA |
English (Zimbabwe) | en-zw |
ENGLISH | UNITED KINGDOM |
Estonian | et |
ESTONIAN | ESTONIA |
Faeroese | fo |
ENGLISH | UNITED KINGDOM |
Farsi | fa |
ENGLISH | UNITED KINGDOM |
Finnish | fi |
FINNISH | FINLAND |
French (Belgium) | fr-be |
FRENCH | BELGIUM |
French (Canada) | fr-ca |
CANADIAN FRENCH | CANADA |
French (France) | fr |
FRENCH | FRANCE |
French (Luxembourg) | fr-lu |
FRENCH | LUXEMBOURG |
French (Monaco) | fr-mc |
FRENCH | FRANCE |
French (Switzerland) | fr-ch |
FRANCH | SWITZERLAND |
FYRO Macedonian | mk |
MACEDONIAN | FYR MACEDONIA |
Gaelic | gd |
ENGLISH | UNITED KINGDOM |
Galician | gl |
SPANISH | SPAIN |
German (Austria) | de-at |
GERMAN | AUSTRIA |
German (Germany) | de |
GERMAN | GERMANY |
German (Liechtenstein) | de-li |
GERMAN | GERMANY |
German (Luxemgourg) | de-lu |
GERMAN | LUXEMBOURG |
German (Switzerland) | de-ch |
GERMAN | SWITZERLAND |
Greek | el |
GREEK | GREECE |
Gujarati | gu |
GUJARATI | INDIA |
Hebrew | he |
HEBREW | ISRAEL |
Hindi | hi |
HINDI | INDIA |
Hungarian | hu |
HUNGARIAN | HUNGARY |
Icelandic | is |
ICELANDIC | ICELAND |
Indonesian | id |
INDONESIAN | INDONESIA |
Italian (Italy) | it |
ITALIAN | ITALY |
Italian (Switzerland) | it-ch |
ITALIAN | SWITZERLAND |
Japanese | ja |
JAPANESE | JAPAN |
Kannada | kn |
KANNADA | INDIA |
Kazakh | kk |
CYRILLIC KAZAKH | KAZAKHSTAN |
Konkani | kok |
KOREAN | KOREA |
Korean | ko |
KOREAN | KOREA |
Kyrgyz | kz |
RUSSIAN | RUSSIA |
Latvian | lv |
LATVIAN | LATVIA |
Lithuanian | lt |
LITHUANIAN | LITHUANIANA |
Malay (Malaysia) | ms |
MALAY | MALAYSIA |
Malayalam | ml |
MALAYALAM | INDIA |
Maltese | mt |
ENGLISH | UNITED KINGDOM |
Marathi | mr |
ENGLISH | INDIA |
Nepali (India) | ne |
ENGLISH | UNITED KINGDOM |
Norwegian (Bokmal) | nb-no |
NORWEGIAN | NORWAY |
Norwegian (Bokmal) | no |
NORWEGIAN | NORWAY |
Norwegian (Nynorsk) | nn-no |
NORWEGIAN | NORWAY |
Oriya | or |
ORIYA | INDIA |
Polish | pl |
POLISH | POLAND |
Portuguese (Brazil) | pt-br |
BRAZILIAN PORTUGUESE | BRAZIL |
Portuguese (Portugal) | pt |
PORTUGUESE | PORTUGAL |
Punjabi | pa |
PUNJABI | INDIA |
Romanian | ro |
ROMANIAN | ROMANIA |
Russian | ru |
RUSSIAN | RUSSIA |
Russian (Moldova) | ru-md |
RUSSIAN | RUSSIA |
Serbia | sr |
CYRILLIC SERBIAN | SERBIA AND MONTENEGRO |
Slovak | sk |
SLOVAK | SLOVAKIA |
Slovenian | sl |
SLOVENIAN | SLOVENIA |
Spanish (Argentina) | es-ar |
LATIN AMERICAN SPANISH | ARGENTINA |
Spanish (Bolivia) | es-bo |
LATIN AMERICAN SPANISH | ARGENTINA |
Spanish (Chile) | es-cl |
LATIN AMERICAN SPANISH | CHILE |
Spanish (Columbia) | ec-co |
LATIN AMERICAN SPANISH | COLUMBIA |
Spanish (Costa Rica) | es-cr |
LATIN AMERICAN SPANISH | COSTA RICA |
Spanish (Dominican Republic) | es-do |
LATIN AMERICAN SPANISH | PUERTO RICO |
Spanish (Ecuador) | es-ec |
LATIN AMERICAN SPANISH | ECUDOR |
Spanish (El Salvador) | es-sv |
LATIN AMERICAN SPANISH | EL SALVADOR |
Spanish (Guatemala) | es-gt |
LATIN AMERICAN SPANISH | GUATEMALA |
Spanish (Honduras) | es-hn |
LATIN AMERICAN SPANISH | GUATEMALA |
Spanish (Mexico) | es-mx |
MEXICAN SPANISH | MEXICO |
Spanish (Nicaragua) | es-ni |
LATIN AMERICAN SPANISH | Nicaragua |
Spanish (Panama) | es-pa |
LATIN AMERICAN SPANISH | Panama |
Spanish (Paraguay) | es-py |
LATIN AMERICAN SPANISH | ARGENTINA |
Spanish (Peru) | es-pe |
LATIN AMERICAN SPANISH | PERU |
Spanish (Peurto Rico) | es-pr |
LATIN AMERICAN SPANISH | PEURTO RICO |
Spanish (Traditional Sort) | es |
LATIN AMERICAN SPANISH | SPAIN |
Spanish (United States) | es-us |
LATIN AMERICAN SPANISH | AMERICAN |
Spanish (Uruguay) | es-uy |
LATIN AMERICAN SPANISH | ARGENTINA |
Spanish (Venezuela) | es-ve |
LATIN AMERICAN SPANISH | VENEZUELA |
Swedish | sv |
SWEDISH | SWEDEN |
Swedish | sv-fi |
SWEDISH | FINLAND |
Tamil | ta |
TAMIL | INDIA |
Telugu | te |
TELUGU | INDIA |
Thai | th |
THAI | THAILAND |
Turkish | tr |
TURKISH | TURKEY |
Ukrainian | uk |
UKRAINIAN | UKRAINE |
Urdu | ur |
ENGLISH | UNITED KINGDOM |
Uzbek | uz |
LATIN UZBEK | UZBEKISTAN |
Vietnamese | vi |
VIETNAMESE | VIETNAM |
Zulu | zu |
ENGLISH | UNITED KINGDOM |
IQ Online Training Portal offers Oracle APEX Online training throughout the world and is specialists in online trainings.
ReplyDeleteOracle APEX online training in USA
I feel really happy to have seen your webpage and look forward to so
ReplyDeletemany more entertaining times reading here. Thanks once more for all
the details.
dot net classes in Chennai
core java training institutes in Chennai
Best Manual Testing Training in Chennai
oracle apps dba training in Chennai
Very Informative blog thank you for sharing. Keep sharing.
ReplyDeleteBest software training institute in Chennai. Make your career development the best by learning software courses.
best informatica training in chennai
cloud computing courses in chennai
rpa training in chennai
I wish to show thanks to you just for bailing me out of this particular
ReplyDeletetrouble.As a result of checking through the net and meeting
techniques that were not productive, I thought my life was done.
Best C# Course in Chennai
best hadoop training in chennai
software testing courses in chennai