ヘッダーをスキップ

Oracle Projects API, クライアント拡張およびオープン・インタフェース・リファレンス
リリース12
E05609-01
目次へ
目次
前のページへ
前へ
次のページへ
次へ

Oracle Project Costing API

この章では、外部システムから資産をインタフェースして割り当てるAPIを実装する方法を説明します。

この章では、次のトピックを説明します。

資産API

資産APIは、資産の挿入、更新、割当および削除を行うための外部システム用オープン・インタフェースを提供します。

資産APIのビュー

資産APIのパラメータ・データを提供するビューを次に示します。ビューの詳細は、OracleMetaLinkで入手可能なOracle eTRMを参照してください。

変数 説明
PA_PROJECT_ASSET_TYPE_LOV_V このビューを使用すると、Oracle Projectsから有効なプロジェクト資産タイプを取得して、外部システムで表示できます。
PA_ASSET_BOOKS_LOV_V このビューを使用すると、Oracle Projectsから有効な資産台帳を取得して、外部システムで表示できます。
PA_PARENT_ASSET_LOV_V このビューを使用すると、Oracle Projectsから有効な親資産を取得して、外部システムで表示できます。
PA_RET_TARGET_ASSET_LOV_V このビューを使用すると、Oracle Projectsから有効な除・売却ターゲット資産を取得して、外部システムで表示できます。
PA_PROJECT_ASSETS_AMG_V このビューを使用すると、Oracle Projectsから有効なプロジェクト資産を取得して、外部システムで表示できます。

資産APIのプロシージャとファンクション

この項で説明するプロシージャとファンクションを次に示します。これらのプロシージャとファンクションは、パブリックAPIパッケージPA_PROJECT_ASSETS_PUB内にあります。

資産APIのプロシージャとファンクションの定義

この項では、資産APIについて詳しく説明します。

ADD_PROJECT_ASSET

このプロシージャは、指定プロジェクトにプロジェクト資産を追加します。検証が正常に完了した場合、新規のPA_PROJECT_ASSETS_ALL行が作成されます。

このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。

このプロシージャの必須パラメータは次のとおりです。

UPDATE_PROJECT_ASSET

このプロシージャは、指定プロジェクトのプロジェクト資産を更新します。検証が正常に完了した場合、PA_PROJECT_ASSETS_ALL行は指定した新規の値で更新されます。

このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。

このプロシージャの必須パラメータは次のとおりです。

DELETE_PROJECT_ASSET

このプロシージャは、プロジェクト資産および関連資産割当をすべてプロジェクトから削除します。

このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。

このプロシージャの必須パラメータは次のとおりです。

ADD_ASSET_ASSIGNMENT

このプロシージャは、指定プロジェクトに資産割当を追加します。検証が正常に完了した場合、PA_PROJECT_ASSET_ASSIGNMENTS行が作成されます。

このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。

このプロシージャの必須パラメータは次のとおりです。

DELETE_ASSET_ASSIGNMENT

このプロシージャは、プロジェクトから資産割当を削除します。

このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。

このプロシージャの必須パラメータは次のとおりです。

LOAD_PROJECT_ASSET

このプロシージャは、グローバルPL/SQL表G_ASSETS_IN_TBLにプロジェクト資産行を追加します。プロジェクトに資産がすでに存在する場合、このプロシージャはUPDATE_PROJECT_ASSETプロシージャを呼び出します。

このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。

このプロシージャの必須パラメータは次のとおりです。

LOAD_ASSET_ASSIGNMENT

このプロシージャは、グローバルPL/SQL表G_ASSET_ASSIGNMENTS_IN_TBLに資産割当行を追加します。その後、PL/SQL表内の行ごとにADD_ASSET_ASSIGNMENTプロシージャを呼び出すEXECUTE_ADD_PROJECT_ASSETプロシージャを使用して、この表内の行を現行プロジェクトに一括で追加できます。

このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。

このプロシージャの必須パラメータは次のとおりです。

EXECUTE_ADD_PROJECT_ASSET

このプロシージャは、CREATE_PROJECTプロシージャから呼び出されます。PL/SQL表の入力パラメータでプロシージャに送信されたプロジェクト資産およびプロジェクト資産割当を処理します。

P_ASSETS_IN表内のプロジェクト資産行ごとに、このプロシージャは資産がすでに存在しているかどうかを調べます。存在する場合、このプロシージャは該当行に対してUPDATE_PROJECT_ASSETプロシージャを呼び出します。存在しない場合、該当行に対してADD_PROJECT_ASSETプロシージャを呼び出します。

P_ASSET_ASSIGNMENTS_IN表内のプロジェクト資産割当行ごとに、このプロシージャは資産割当がすでに存在しているかどうかを調べます。割当が存在しない場合、このプロシージャは該当行に対してADD_ASSET_ASSIGNMENTプロシージャを呼び出します。割当が存在する場合、このプロシージャは何も行いません。

このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。

このプロシージャの必須パラメータは次のとおりです。

CONVERT_PM_ASSETREF_TO_ID

このプロシージャは、入力された資産参照をプロジェクト資産IDに変換します。

このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。

このプロシージャの必須パラメータは次のとおりです。

FETCH_PROJECT_ASSET_ID

このファンクションは、ASSET_REFERENCEおよびPROJECT_IDに基づいてPROJECT_ASSET_IDを返します。

このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。

このプロシージャの必須パラメータは次のとおりです。

原価加算API

Oracle Projectsには、原価加算APIを呼び出すために使用できるプロシージャが用意されています。このプロシージャは、間接費設定に基づいて金額を取得します。間接費予定表、有効日、支出タイプおよび組織を指定して、指定基準に基づいて間接費金額を取得できます。

たとえば、このプロシージャを使用すると、レートの特定の間接費予定表やプロジェクト組織を入力として使用して、関連取引の直接費金額を導出できます。

注意: APIを使用して計算した金額は、間接費分解を表示する原価加算詳細ビューには表示されません。また、間接費予定表のレートを更新する場合は、レートの変更によって影響を受ける項目をすべて手動でマークする必要があります。

間接費金額の取得

原価加算APIのプロシージャは、PA_COST_PLUS.GET_BURDEN_AMOUNTです。

このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。

エラー処理

プロシージャが失敗した場合には、ステータスおよびステージ・パラメータを使用するとエラー状態の解決に役立ちます。

ステータス・パラメータは、プロシージャの処理ステータスを次のように示します。

変数 説明
status = 0 プロシージャは正常に実行されました。
status < 0 Oracleエラーが発生し、プロセスは完了しませんでした。

ヒント: エラー状態の解決に役立てるには、原価加算APIの呼出し元プロシージャに原価加算プロシージャのステータスを返すようにしてください。

status > 0 ステージ・パラメータを参照してください。

ステージ・パラメータは、原価加算APIの処理のどの箇所でプロシージャが失敗したかを示します。ステージ・パラメータを使用して、プロシージャが失敗する原因となった特定の問題を解決します。次の表に、各ステージとその意味を示します。

ステージ 意味
100 指定された間接費予定表および有効日のリビジョンが見つかりません。
200 間接費体系が見つかりません。
300 支出タイプは間接費体系の原価ベース内にありません。
400 指定された間接費予定表および組織に対して有効なコンパイル済セットがありません。
500 指定された適格性に対してコンパイル済の乗数がありません。

関連トピック

労務取引機能拡張

原価加算APIの使用例

この項では、APIを使用して特定のビジネス要件に従って間接費金額を計算する方法の例を示します。

このビジネス要件では、次の基準に基づいて間接費金額を決定します。

次のPL/SQLプロシージャを使用すると、このビジネス要件に対して原価加算APIを使用して間接費金額を取得できます。

pa_cost_plus.get_burden_amount(60,
'03-MAR-94',
'Professional',
18,
1000,
burden_amount,
burden_sch_rev_id,
compiled_set_id,
status,
stage);
if (status = 0) then
-- use the calculated burden_amount to implement your
-- business requirement
end if;