Exit

Oracle Database 10g Developer 6i Settings For Arabic Urdu Support Work Verified -

Bridging the Legacy Gap: Configuring Oracle 10g & Developer 6i for Arabic/Urdu Support

If you are reading this, you are likely wrestling with a specific, somewhat legacy challenge: getting a system running Oracle Database 10g on the backend and Oracle Developer 6i (Forms & Reports) on the frontend to play nice with Arabic or Urdu data.

It is a common scenario in many established enterprises. Developer 6i is a robust tool that refuses to die, but it was built in an era where Unicode support wasn't the standard default. Getting your forms to display Right-to-Left (RTL) text correctly—and ensuring that data stored in the database is retrievable without turning into "gibberish"—requires a specific set of configurations.

In this guide, we will walk through the essential settings to achieve seamless bi-directional (Bi-Di) support.

Step 2: Registry Settings (The NLS_LANG Key)

This is the most critical step. The Oracle Client (used by Developer 6i) needs to know how to interpret the bytes it receives from the database.

  1. Open the Windows Registry (regedit).
  2. Navigate to: HKEY_LOCAL_MACHINE -> SOFTWARE -> ORACLE -> KEY_DevSuiteHome (or your specific Oracle Home name for Developer 6i).
  3. Locate the string value NLS_LANG.

The Setting: For Arabic/Urdu support with Developer 6i, set the value to:

ARABIC_UNITED ARAB EMIRATES.AR8MSWIN1256

Why this specific string?


Check Current Database Character Set:

SELECT value FROM nls_database_parameters WHERE parameter = 'NLS_CHARACTERSET';

Step

To support Arabic and Urdu in a setup with Oracle Database 10g and Developer 6i, you must align the character set settings across the database, the client operating system, and the Developer 6i environment. 1. Database Configuration

The database must be created or altered to use a character set that supports Right-to-Left (RTL) scripts.

Recommended Character Sets: AR8MSWIN1256 (Windows Arabic) or AL32UTF8 (Unicode).

Check Current Settings: Run the query SELECT * FROM nls_database_parameters;.

Changing the Character Set: If the database was created with an incompatible set (like WE8MSWIN1252), it may need to be recreated or altered using:

SHUTDOWN IMMEDIATE; STARTUP MOUNT; ALTER SYSTEM ENABLE RESTRICTED SESSION; ALTER DATABASE OPEN; ALTER DATABASE CHARACTER SET AR8MSWIN1256; SHUTDOWN IMMEDIATE; STARTUP; Use code with caution. Copied to clipboard

Note: Changing the character set on an existing database with data can be complex and may require data migration. 2. Client Registry Settings (Developer 6i)

Oracle Developer 6i relies on the NLS_LANG parameter in the Windows Registry to determine how it interprets and displays data.

Registry Path: Open regedit and navigate to HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE (or HOME0 depending on your installation).

Value to Set: Change the NLS_LANG value to AMERICAN_AMERICA.AR8MSWIN1256.

Using AL32UTF8 is often recommended for modern setups, but legacy Developer 6i tools sometimes struggle with Unicode, making AR8MSWIN1256 a common stable choice for Arabic/Urdu. 3. Windows Operating System Settings

The local machine must have the appropriate language support installed to render characters correctly.

System Locale: Go to Control Panel > Region > Administrative > Change System Locale. Set this to Arabic or Urdu and restart.

Fonts: Ensure RTL-compatible fonts like Arabic Transparent, Times New Roman, or Urdu Typesetting are installed. 4. Forms and Reports 6i Specifics Forms 10g: Please help on Urdu Language Support

Configuring Oracle Database 10g and Developer 6i for Arabic and Urdu support requires synchronizing character sets across the database, the operating system, and the development tools. Because both languages are Right-to-Left (RTL) and use similar scripts, their configuration steps are largely identical. 1. Database Level Configuration Bridging the Legacy Gap: Configuring Oracle 10g &

To store and retrieve Arabic/Urdu data correctly, the database character set must support these scripts.

Preferred Character Set: AR8MSWIN1256 (standard for Arabic/Urdu on Windows) or AL32UTF8 (Unicode, for multi-language support).

Checking Current Settings: Run SELECT * FROM nls_database_parameters; to verify NLS_CHARACTERSET.

Changing Character Set: If the database is already created with a Western set (like WE8MSWIN1252), you may need to recreate it or use ALTER DATABASE commands in a restricted session, though migration is complex if data already exists. 2. Developer 6i (Forms & Reports) Client Settings

The client machine must be told how to interpret the data coming from the database.

Registry Key: Open regedit and navigate to HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE (or the specific Oracle Home for Dev 6i).

NLS_LANG Value: Change the NLS_LANG string to AMERICAN_AMERICA.AR8MSWIN1256 or ARABIC_SAUDI ARABIA.AR8MSWIN1256.

Urdu Specifics: While Arabic settings often work for Urdu, ensure the Windows System Locale is set to Urdu in the Control Panel (Region & Language settings) to enable proper keyboard input and font rendering. 3. Application Design Settings

Within the Oracle Forms 6i builder, you must adjust the layout to handle RTL text.

Right-to-Left Alignment: For text items, set the Direction property to "Right to Left" and Alignment to "Right".

Font Selection: Use fonts that natively support Arabic/Urdu scripts, such as Arabic Transparent, Simplified Arabic, or Times New Roman.

Reports 6i: In the UIFONT.ALI file, ensure proper font mapping if reports are generated as PDFs or printed to ensure characters do not appear as junk or question marks. 4. Summary of Key Parameters Recommended Value NLS_LANG AMERICAN_AMERICA.AR8MSWIN1256 Client-side interpretation NLS_CHARACTERSET AR8MSWIN1256 or UTF8 Database-side storage Direction Right to Left Forms item property for RTL languages

Are you facing a specific issue, such as junk characters appearing in reports or keyboard input not switching to Urdu? Writing Urdu or Arabic in Oracle Forms 6i

Introduction

Oracle Database 10g Developer 6i is a popular integrated development environment (IDE) for building database applications. To support Arabic and Urdu languages, specific settings need to be configured in the Oracle 10g database and Developer 6i. This write-up provides a step-by-step guide on how to enable Arabic and Urdu support in Oracle Database 10g Developer 6i.

Database Settings

To support Arabic and Urdu languages, the Oracle 10g database needs to be configured with the following settings:

  1. Character Set: Set the character set to AL32UTF8 or AR8MSWIN1256 to support Arabic and Urdu characters. You can check the current character set using the following SQL command:
SELECT * FROM V$NLS_PARAMETERS WHERE PARAMETER = 'NLS_CHARACTERSET';

If the character set is not set to AL32UTF8 or AR8MSWIN1256, you can change it by executing the following SQL command:

ALTER DATABASE CHARACTER SET AL32UTF8;
  1. National Character Set: Set the national character set to NCHAR_CS to support Unicode characters.
SELECT * FROM V$NLS_PARAMETERS WHERE PARAMETER = 'NLS_NCHAR_CHARACTERSET';

If the national character set is not set to NCHAR_CS, you can change it by executing the following SQL command:

ALTER DATABASE NATIONAL CHARACTER SET NCHAR_CS;
  1. Language and Territory: Set the language and territory to support Arabic and Urdu languages. You can check the current language and territory using the following SQL command:
SELECT * FROM V$NLS_PARAMETERS WHERE PARAMETER IN ('NLS_LANGUAGE', 'NLS_TERRITORY');

If the language and territory are not set to Arabic or Urdu, you can change them by executing the following SQL commands:

ALTER SESSION SET NLS_LANGUAGE = 'ARABIC';
ALTER SESSION SET NLS_TERRITORY = 'SAUDI ARABIA';

or

ALTER SESSION SET NLS_LANGUAGE = 'URDU';
ALTER SESSION SET NLS_TERRITORY = 'PAKISTAN';

Developer 6i Settings

To support Arabic and Urdu languages in Developer 6i, follow these steps:

  1. Install the Arabic or Urdu Font: Install the Arabic or Urdu font on your system. You can download the font from the Oracle website or other reliable sources.
  2. Configure the Font in Developer 6i: Configure the font in Developer 6i by following these steps:
    • Open Developer 6i and navigate to Tools > Preferences.
    • In the Preferences window, navigate to Fonts > ** Font Settings**.
    • Select the Arabic or Urdu font you installed earlier.
  3. Set the Language and Territory in Developer 6i: Set the language and territory in Developer 6i by following these steps:
    • Open Developer 6i and navigate to Tools > Preferences.
    • In the Preferences window, navigate to International > Language and Territory.
    • Select the language and territory you set earlier in the database.

Form and Report Settings

To support Arabic and Unicode characters in Forms and Reports, follow these steps:

  1. Set the Form and Report Properties: Set the form and report properties to support Arabic and Unicode characters. You can do this by setting the following properties:
    • FORM_LAYOUT rtl (right-to-left) for Arabic and Urdu languages.
    • FORM_FONT to the Arabic or Urdu font you installed earlier.
  2. Configure the Unicode Support: Configure Unicode support in Forms and Reports by setting the following parameters:
    • IC_LOCALE to ar or ur for Arabic and Urdu languages, respectively.
    • IC_ CHARACTERSET to UTF-8 or AL32UTF8.

Testing and Verification

After configuring the settings, test and verify that Arabic and Urdu languages are supported correctly:

  1. Enter Arabic or Urdu Text: Enter Arabic or Urdu text in a form or report to verify that the characters are displayed correctly.
  2. Run a Report: Run a report with Arabic or Urdu text to verify that the report is generated correctly.

Conclusion

In conclusion, to support Arabic and Urdu languages in Oracle Database 10g Developer 6i, you need to configure the database character set, national character set, language, and territory. Additionally, you need to configure the font, language, and territory in Developer 6i, and set the form and report properties to support Arabic and Unicode characters. By following these steps, you can ensure that your Oracle Database 10g Developer 6i applications support Arabic and Urdu languages correctly.

Oracle Database 10g Developer 6i Settings for Arabic and Urdu Support

Oracle Database 10g is a robust and feature-rich relational database management system that supports a wide range of languages, including Arabic and Urdu. Oracle Developer 6i, a comprehensive development environment, provides a set of tools for building, deploying, and managing database applications. To support Arabic and Urdu languages in Oracle Database 10g using Developer 6i, specific settings and configurations are required. In this article, we will guide you through the process of configuring Oracle Database 10g and Developer 6i to support Arabic and Urdu languages.

Understanding Oracle Database 10g and Developer 6i

Before diving into the configuration process, it's essential to understand the basics of Oracle Database 10g and Developer 6i. Oracle Database 10g is a relational database management system that provides a robust platform for storing, managing, and retrieving data. Oracle Developer 6i, on the other hand, is a comprehensive development environment that includes tools such as Forms, Reports, and Designer.

Configuring Oracle Database 10g for Arabic and Urdu Support

To support Arabic and Urdu languages in Oracle Database 10g, you need to configure the database to use the Unicode character set. Unicode is a character encoding standard that supports a wide range of languages, including Arabic and Urdu.

Step 1: Create a New Database with Unicode Character Set

To create a new database with Unicode character set, follow these steps:

  1. Open the Oracle Enterprise Manager 10g console and navigate to the "Database" tab.
  2. Click on "Create" to create a new database.
  3. Select "Oracle Database 10g" as the database type.
  4. Choose "Unicode" as the character set.
  5. Select "AL32UTF8" as the Unicode character set.

Step 2: Configure National Character Set

To configure the national character set, follow these steps:

  1. Connect to the database using SQL*Plus or Oracle Enterprise Manager 10g.
  2. Execute the following command to set the national character set to Unicode:
ALTER DATABASE SET NATIONAL CHARACTER SET AL16UTF16;

Step 3: Set the Language and Territory

To set the language and territory, follow these steps:

  1. Connect to the database using SQL*Plus or Oracle Enterprise Manager 10g.
  2. Execute the following command to set the language and territory:
ALTER SESSION SET LANGUAGE=AR; // for Arabic
ALTER SESSION SET TERRITORY=EG; // for Egypt

For Urdu, use the following commands:

ALTER SESSION SET LANGUAGE=UR;
ALTER SESSION SET TERRITORY=PK;

Configuring Oracle Developer 6i for Arabic and Urdu Support

To configure Oracle Developer 6i for Arabic and Urdu support, you need to set the character set and font settings.

Step 1: Set the Character Set

To set the character set in Oracle Developer 6i, follow these steps:

  1. Open Oracle Developer 6i and navigate to the "Tools" menu.
  2. Select "Preferences" and then click on "Fonts".
  3. Set the font to a Unicode font, such as "Arial Unicode MS" or "Tahoma".
  4. Set the character set to "Unicode (UTF-8)".

Step 2: Set the Font Settings

To set the font settings, follow these steps:

  1. Open Oracle Developer 6i and navigate to the "Tools" menu.
  2. Select "Preferences" and then click on "Fonts".
  3. Set the font size and style according to your requirements.

Step 3: Configure Forms and Reports for Arabic and Urdu Support

To configure Forms and Reports for Arabic and Urdu support, follow these steps:

  1. Open Oracle Developer 6i and create a new form or report.
  2. Set the layout to "Right-to-Left" (RTL) for Arabic and Urdu languages.
  3. Use a Unicode font, such as "Arial Unicode MS" or "Tahoma", in the form or report.

Testing Arabic and Urdu Support

To test Arabic and Urdu support in Oracle Database 10g and Developer 6i, follow these steps:

  1. Create a sample form or report with Arabic or Urdu text.
  2. Run the form or report and verify that the text is displayed correctly.
  3. Test data entry and verify that Arabic and Urdu characters are accepted correctly.

Conclusion

In this article, we have provided a comprehensive guide on configuring Oracle Database 10g and Developer 6i to support Arabic and Urdu languages. By following the steps outlined in this article, you can create a robust and scalable database application that supports multiple languages, including Arabic and Urdu.

Best Practices

Here are some best practices to keep in mind when configuring Oracle Database 10g and Developer 6i for Arabic and Urdu support:

Troubleshooting Tips

Here are some common issues and troubleshooting tips:

By following these best practices and troubleshooting tips, you can ensure that your Oracle Database 10g and Developer 6i application supports Arabic and Urdu languages correctly and efficiently.

Important Note: Oracle Developer 6i is very old (circa 2000s) and was not fully Unicode-compliant. Oracle Database 10g is also desupported. The settings below represent the best possible legacy configuration for Arabic/Urdu support.


1. Direction (Right-to-Left)

Developer 6i forms default to Left-to-Right (LTR). You must change this property for your data blocks and items.

This ensures that when the user types, the cursor moves from right to left.

4) Forms 6i specific settings

1. Understanding the Challenge

Critical: Developer 6i’s underlying Oracle Toolkit (Forms/Reports) expects the database character set to be compatible with the client’s NLS_LANG. For Arabic/Urdu, you must avoid AL32UTF8 if using 6i unless carefully configured; instead, use AR8MSWIN1256 (Arabic Windows) as the database character set. Open the Windows Registry ( regedit )