2016-08-22 23 views
0

Oracleフォーム6iに関する要件があります。私はフォーム6iで表形式のデータブロックを持っており、ユーザーのログイン資格情報に基づいてテーブルのヘッダーを変更したいと思っています。例えば、ユーザーがアラビア語を使用してログインした場合、テーブルヘッダーはアラビア語に動的に変更するか、英語などに動的に変更する必要があります。フォーム6iの多言語サポート

基本的に、列見出しの言語は動的に変更/設定する必要があります。

これを達成した場合は、この点で私を助けてください。

私はフォーム6iを使用しており、データベースのバージョンは10gです。

おかげで、につきまして、簡単に行われていない何をしたい Laxya

答えて

0

。 Formsの列ヘッダーを動的にする場合は、見出しを表示フィールドとしてペイントし、サポートする言語で列名を格納するメタデータテーブルにリンクする必要があります。言い換えれば、カラム名など、表示する必要があるものをすべて格納する必要があります。実行時に検索され、画面に渡される実行時パラメータに基づいて画面上に表示されるテーブル内のスクリーンメッセージ。 LANGCODE =英語のためのENGやメタデータテーブルのアラビア語

例のためのARB:

LANGCODE FORMNAME TABLENAME COLUMNNAME COLUMNNAME_TO_DISPLAY 
-------- -------- --------- ---------- --------------------- 
ENG  ABC123 TABLEA  COLUMN1  COLUMN1 
ENG  ABC123 TABLEA  COLUMN2  COLUMN2 
ARB  ABC123 TABLEA  COLUMN2  ??????? 
ARB  ABC123 TABLEA  COLUMN2  ??????? 

あなたは単にあなたがどんな言語で上記の表の最後の列に画面に表示する値を入力します。バックエンドデータベースがサポートしています。

これは、新しいフォームインスタンスのトリガーで実行時にダイナミックにフェッチされる見出しとフィールド名を持つことができますが、画面に表示されるものはすべてどこかのテーブルにマップされます。このため、多言語対応のアプリケーションはごくわずかしか見つかりません。

+0

表示見出しとして列見出しを設定する必要はありません。 'SET_ITEM_PROPERTY( 'BLOCK.FIELD'、PROMPT_TEXT、 '新しいプロンプト値')'を使うことができます。 – AndyDan