Oracle Database 10g Developer 6i Settings For Arabic Urdu Support Work
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. Bridging the Legacy Gap: Configuring Oracle 10g &
Check Current Database Character Set:
SELECT value FROM nls_database_parameters WHERE parameter = 'NLS_CHARACTERSET';
4.3 Display Issues (Garbled Text – “????” or boxes)
If you see ???? or squares:
- Check NLS_LANG client–server mismatch.
- Verify font supports Arabic glyphs.
- Ensure the column’s character set is not
US7ASCIIorWE8ISO8859P1.
Diagnostic query:
SELECT DUMP(column_name, 1016) FROM table_name;
Check if byte values correspond to Arabic code points (0xC7, 0xC8 etc. in AR8MSWIN1256).
4.3 Canvas and Window Layout
- Direction: In the property palette of the Canvas, check for a
Directionproperty. If available, set it toRight to Left. - Layout Adjustments: Manually adjust the layout. Labels for Right-to-Left items should be placed to the right of the text box, consistent with Arabic UI standards.
Step 2: Registry Configuration (Critical)
Navigate to (for Developer 6i on Windows 10/7/XP): Check NLS_LANG client–server mismatch
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_Dev6i_Home
Add or modify these string values:
| Value Name | Value Data |
|------------|-------------|
| NLS_LANG | ARABIC_BAHRAIN.AL32UTF8 (or ARABIC_UAE.AL32UTF8) |
| FORMS60_CHARACTER_SET | AL32UTF8 |
| FORMS60_FONT | Arial Unicode MS |
| FORMS60_FONT_SIZE | 10 | Crucial : Without FORMS60_CHARACTER_SET=AL32UTF8
Crucial: Without
FORMS60_CHARACTER_SET=AL32UTF8, Forms 6i will strip the high-order byte from Urdu characters, turningےinto gibberish.



