Oracle Applications開発者ガイド リリース12 E06048-01 | 目次 | 前へ | 次へ |
この項では、PL/SQLプロシージャから一部のOracle Applications APIをコールする方法について説明します。FNDSQFライブラリのほとんどのルーチンを、この項で説明します。一部のFNDSQFルーチンは、他の章で説明されています(たとえば、FND_KEY_FLEXルーチンは「フレックスフィールド」という章で説明されています)。この章で説明するルーチンは、次のとおりです。
FND_CURRENCY: 動的通貨API
FND_GLOBAL: WHO列のメンテナンス
FND_ORG: 組織API
FND_STANDARD: 標準API
FND_UTILITIES: ユーティリティ・ルーチン
この項では、クライアント側およびサーバー側PL/SQLプロシージャで使用可能な動的通貨APIについて説明します。動的通貨機能により、任意の通貨における様々な値を同じレポートまたはフォームに、適切な書式で表示できます。
変数 | 説明 |
---|---|
要約 |
|
説明 | このファンクションは、標準デフォルト値を使用して書式マスクを作成します。 |
変数 | 説明 |
---|---|
currency_code | デフォルト書式マスクを取得する通貨コード |
field_length | フォーマットされた値を保持できる最大文字数
重要: 書式マスクを受け取るvarchar2フィールドは、field_lengthより10文字長くする必要があります。 |
このルーチンは、次のプロファイルを使用して書式マスクを作成します。
CURRENCY:THOUSANDS_SEPARATOR
CURRENCY:NEGATIVE_FORMAT
CURRENCY:POSITIVE_FORMAT
マイナスの書式のプロファイルには3種類のカッコを使用できますが、このルーチンでは山カッコのみ使用します(< >)。
フォームのORDER_LINES.AMOUNTフィールドは、動的通貨書式を使用して表示する必要があります。書式マスクは作成され、APP_ITEM_PROPERTY.SET_PROPERTYコールに渡されます。
APP_ITEM_PROPERTY.SET_PROPERTY('ORDER_LINE.AMOUNT',
FORMAT_MASK,
FND_CURRENCY.GET_FORMAT_MASK(
:ORDER_CURRENCY_CODE,
GET_ITEM_PROPERTY(
'ORDER_LINE.AMOUNT',
MAX_LENGTH)));
表示グループ・セパレータ、プラスおよびマイナスの書式を使用するかどうかは、通常はユーザーが設定します。したがって、これらの設定はユーザー・プロファイル・システムによりデフォルト設定されます。精度は、オーダーの通貨コードの保存された情報によって決まります。
動的通貨サポートは、サーバー側PL/SQLからもアクセスできます。パッケージのインタフェースは同一です。次のコールは、実装の例です。
DISPLAYABLE_VALUE := TO_CHAR(AMOUNT,
FND_CURRENCY.GET_FORMAT_MASK(
DC_FORMAT_MASK, 30));
FND_DATEパッケージのルーチンは、APP_DATEパッケージの項で説明されています。
関連項目: APP_DATE: 日付変換API
アプリケーションにおける日付処理の説明は、日付に関する章を参照してください。関連項目: 日付の処理
この項では、サーバー側PL/SQLプロシージャで使用可能なグローバルAPIについて説明します。サーバー側パッケージFND_GLOBALは、login/signonまたはセッション・タイプの値など、システム・グローバルの値を返します。WHO列は、挿入および更新のためにストアド・プロシージャから設定する必要があります。FND_GLOBALパッケージは様々な用途で使用できますが、パッケージの主な用途はWHO列の設定です。
FND_GLOBALルーチンはデータベースのストアド・プロシージャであり、データベースに余分なラウンドトリップが発生する可能性があるため、フォーム(すなわちクライアント側のフォーム)ではFND_GLOBALルーチンを使用しないでください。クライアント側では、ほとんどのFND_GLOBALパッケージのプロシージャが同じ(または同様の)名前のユーザー・プロファイル・オプションで置き換えられます。フォームでは、かわりにFND_PROFILEルーチンを使用する必要があります。
関連項目: レコード履歴を使用したデータ変更の追跡(WHO)
変数 | 説明 |
---|---|
要約 |
|
説明 | ユーザーIDを戻します。 |
変数 | 説明 |
---|---|
要約 |
|
説明 | このプロシージャは、データベース・セッションのグローバル変数とプロファイルを設定します。データベース・セッションのグローバル・セキュリティ・コンテキストを初期化するために、このプロシージャをコールします。Java、PL/SQL、またはOracle Applicationsコンカレント処理機能とOracle Formsのどちらとも統合されていない(いずれもデータベース・セッションで同様の初期化を実行)他のプログラムなどのルーチンに使用します。通常、このルーチンは、確立されたOracle Applicationsフォーム・セッションとは別のForms以外のセッション(Javaプログラムなど)を起動するロジックの一部として使用します。さらに、このプロシージャを使用すると、SQL*Plusを使用してアプリケーション・コードの手動テストを行うようにデータベース・セッションを設定できます。このルーチンは、標準フォームまたはコンカレント・プログラム接続の外でセッションを確立する必要がある場合にのみ使用する必要があります。 プロファイル・オプション・ルーチンを使用することにより、既存のOracle Applicationsフォーム・セッションから、このプロシージャで使用する有効な値を取得できます。手動テストを行う場合、Oracle Applicationsフォーム・セッション中に「検査」を使用して、プロファイル・オプション値を取得できます。 |
変数 | 説明 |
---|---|
USER_ID | USER_ID番号 |
RESP_ID | 職責のID番号 |
RESP_APPL_ID | 職責が属するアプリケーションのID番号 |
例
fnd_global.APPS_INITIALIZE (1010, 20417, 201);
変数 | 説明 |
---|---|
要約 |
|
説明 | (サインオンごとに一意な)ログインIDを戻します。 |
変数 | 説明 |
---|---|
要約 |
|
説明 | コンカレント・プログラムのログインIDを戻します。 |
変数 | 説明 |
---|---|
要約 |
|
説明 | コンカレント・プログラムのアプリケーションIDを戻します。 |
変数 | 説明 |
---|---|
要約 |
|
説明 | コンカレント・プログラムIDを戻します。 |
変数 | 説明 |
---|---|
要約 |
|
説明 | コンカレント要求IDを戻します。 |
このパッケージは、組織を使用するフォームに正しい組織を設定するために使用します。
変数 | 説明 |
---|---|
要約 |
|
説明 | このファンクションは、現行フォームの組織の変更に使用します。変更が取り消されるか、失敗した場合はFALSEが戻されます。 |
変数 | 説明 |
---|---|
要約 |
|
説明 | このファンクションは、新しいフォームを開くときにグローバル組織のデフォルトを変更する場合に使用します。変更が取り消されるか、失敗した場合はFALSEが戻されます。 |
変数 | 説明 |
---|---|
要約 |
|
説明 | このプロシージャをPRE-FORMでコールして、組織パラメータが設定されていることを確認します。ローカル・フォームに渡された組織パラメータがない場合は、グローバル・デフォルトが使用されます。グローバル組織デフォルトが設定されていない場合、プロシージャは組織値リストを開いて強制的に組織を選択させます。 |
変数 | 説明 |
---|---|
allow_cancel | 選択を強制実行しない値リストの取消しを許可します。デフォルトはFALSEです。 |
この項では、フォームにおける標準機能を実現するユーティリティについて説明します。
変数 | 説明 |
---|---|
要約 |
|
変数 | 説明 |
---|---|
説明 | FND_STANDARD.FORM_INFOで、フォームに関する情報が提供されます。これは、WHEN-NEW-FORM-INSTANCEトリガーの最初のステップとしてコールします。TEMPLATEフォームには、修正して使用する、コールの骨組みが用意されています。 |
関連項目: TEMPLATEフォームでの特殊トリガー
変数 | 説明 |
---|---|
要約 |
|
説明 | SET_WHOは、正確なユーザー情報を含むWHOフィールドをロードします。WHOフィールドのブロックごとに、PRE-UPDATE、PRE-INSERTをコールします。SET_WHOを使用してWHOフィールドを移入する場合は、FND_GLOBALをコールする必要はありません。 |
関連項目: レコード履歴を使用したデータ変更の追跡(WHO)およびFND_GLOBAL: WHO列のメンテナンス
変数 | 説明 |
---|---|
要約 |
|
説明 | このファンクションの動作はビルトインのSYSDATEとまったく同じで、効率向上のためにキャッシュされます。Oracle Forms PL/SQLコードにおいて、ビルトインのSYSDATEのかわりに使用します。 |
変数 | 説明 |
---|---|
要約 |
|
説明 | このファンクションの動作はビルトインのUSERとまったく同じで、効率向上のためにキャッシュされます。Oracle Forms PL/SQLコードにおいて、ビルトインのUSERのかわりに使用します。 |
この項では、様々なユーティリティ・ルーチンについて説明します。
変数 | 説明 |
---|---|
要約 |
|
変数 | 説明 |
---|---|
URL | URL実際のURL文字列またはURL文字列を含むフィールドの:block.field参照を渡すことができます。 |
例1
FND_UTILITIES.OPEN_URL('http://www.oracle.com/index.html');
例2
FND_UTILITIES.OPEN_URL(:blockname.fieldname);
変数 | 説明 |
---|---|
要約 |
|
説明 | 現行フォームにパラメータが存在する場合、TRUEを戻します。 |
変数 | 説明 |
---|---|
name | 検索するパラメータの名前。 |
例
if fnd_utilities.param_exists('APP_TRACE_TRIGGER') then
execute_trigger(name_in('PARAMETER.APP_TRACE_TRIGGER'));
end if;