Oracle Projects API, クライアント拡張およびオープン・インタフェース・リファレンス リリース12 E05609-01 | ![]() 目次 | ![]() 前へ | ![]() 次へ |
この章では、Oracle Project Management APIを実装する方法を説明します。
この章では、次のトピックを説明します。
プロジェクト成果物のAPIは、プロジェクトの成果物を作成、更新および削除するための外部システム用インタフェースを提供します。これには、タスクおよびタスク割当への成果物関連を作成または削除できるAPIも含まれています。
次の表に、プロジェクト成果物APIのパラメータ・データを提供するビューを示します。ビューの詳細は、OracleMetaLinkで入手可能なOracle eTRMを参照してください。
ビュー | 説明 |
---|---|
PA_DELIVERABLES_AMG_V | プロジェクトの成果物のリスト |
PA_DLVR_ACTIONS_AMG_V | プロジェクトの成果物処理のリスト |
PA_DELIVERABLE_TYPES_AMG_V | 成果物タイプのリスト |
PA_DELIVERABLE_STATUSES_AMG_V | 有効な成果物ステータスのリスト |
PA_ACTION_FUNCTIONS_AMG_V | 処理機能のリスト |
プロジェクト成果物用のAPIプロシージャを次に示します。これらのプロシージャは、パブリックAPIパッケージPA_PROJECT_PUB内にあります。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。
このAPIを使用すると、1つの成果物に対してPL/SQL表をロードできます。このプロシージャの必須パラメータは次のとおりです。
X_RETURN_STATUS
P_DELIVERABLE_NAME
P_DELIVERABLE_SHORT_NAME
PX_DELIVERABLE_ID
P_PM_DELIVERABLE_REFERENCE
このAPIを使用すると、成果物に対してPL/SQL表をロードできます。このプロシージャの必須パラメータは次のとおりです。
X_RETURN_STATUS
P_DELIVERABLE_NAME
P_DELIVERABLE_SHORT_NAME
PX_DELIVERABLE_ID
P_PM_DELIVERABLE_REFERENCE
このプロシージャを使用すると、成果物処理に対してPL/SQL表内に単一の成果物処理をロードできます。このプロシージャの必須パラメータは次のとおりです。
P_DELIVERABLE_ID
このプロシージャを使用すると、成果物処理に対してPL/SQL表をロードできます。このプロシージャの必須パラメータは次のとおりです。
P_DELIVERABLE_ID
パラメータP_EXPENDITURE_ORG_ID、P_EXPENDITURE_TYPEおよびP_EXPENDITURE_ITEM_DATEは、出力先タイプがEXPENSEである場合のみ必要です。
パラメータP_RECEIVING_ORG_IDは、非品目ベースの成果物にのみ必要です。
パラメータP_RECEIVING_ORGの値は、タイプ区分が「品目」ではない成果物にのみ必要です。
パラメータP_QUANTITYおよびP_UOM_CODEは、非品目成果物調達タイプにのみ必要です。これらのパラメータは「出荷」処理に適用されます。
パラメータP_SHIP_FROM_ORGANIZATION_IDは、タイプ区分が「品目」ではない成果物の「出荷」処理にのみ必要です。
このプロシージャを使用すると、プロジェクトに成果物を作成できます。このプロシージャの必須パラメータは次のとおりです。
X_RETURN_STATUS
P_DELIVERABLE_NAME
P_DELIVERABLE_SHORT_NAME
PX_DELIVERABLE_ID
P_PM_DELIVERABLE_REFERENCE
このプロシージャを使用すると、成果物の属性を更新できます。このプロシージャの必須パラメータは次のとおりです。
X_RETURN_STATUS
PX_DELIVERABLE_ID
P_PM_DELIVERABLE_REFERENCE
このプロシージャを使用すると、成果物に成果物処理を作成できます。このプロシージャの必須パラメータは次のとおりです。
P_DELIVERABLE_ID
成果物の区分タイプが「品目」である場合、次のルールが適用されます。
処理が「調達」である場合、P_RECEIVING_ORG_IDおよびP_QUANTITYに値が必須です。
処理が「出荷」である場合、P_SHIP_FROM_ORGANIZATION_IDに値が必須です。
出力先タイプがEXPENSEである場合、次のパラメータが必須です。
P_EXPENDITURE_TYP
P_EXPENDITURE_ITEM_DATE
成果物の区分タイプが「品目」ではない場合、次のルールが適用されます。
パラメータP_RECEIVING_ORG_IDは必須です。
処理が「調達」または「出荷」である場合、P_QUANTITYおよびP_UOMが必須です。
処理が「出荷」である場合、P_SHIP_FROM_ORGANIZATION_IDが必須です。
このプロシージャを使用すると、成果物処理の属性を更新できます。このプロシージャの必須パラメータは次のとおりです。
P_DELIVERABLE_ID
成果物の区分タイプが「品目」である場合、次のルールが適用されます。
処理が「調達」である場合、P_RECEIVING_ORG_IDおよびP_QUANTITYに値が必須です。
処理が「出荷」である場合、P_SHIP_FROM_ORGANIZATION_IDに値が必須です。
出力先タイプがEXPENSEである場合、次のパラメータが必須です。
P_EXPENDITURE_TYP
P_EXPENDITURE_ITEM_DATE
成果物の区分タイプが「品目」ではない場合、次のルールが適用されます。
パラメータP_RECEIVING_ORG_IDは必須です。
処理が「調達」または「出荷」である場合、P_QUANTITYおよびP_UOMが必須です。
処理が「出荷」である場合、P_SHIP_FROM_ORGANIZATION_IDが必須です。
このプロシージャを使用すると、プロジェクトの成果物を削除できます。
このプロシージャを使用すると、成果物に対する成果物処理を削除できます。このプロシージャの必須パラメータは次のとおりです。
P_PM_DELIVERABLE_REFERENCE
P_DELIVERABLE_ID
P_ACTION_ID
このプロシージャを使用すると、成果物をタスクに関連付けることができます。このプロシージャの必須パラメータは次のとおりです。
P_DELIVERABLE_REFERENCE
P_DELIVERABLE_ID
このプロシージャを使用すると、成果物をタスク割当に関連付けることができます。このプロシージャの必須パラメータは次のとおりです。
P_DELIVERABLE_ID
このプロシージャを使用すると、成果物とタスクの関連を削除できます。このプロシージャの必須パラメータは次のとおりです。
P_PM_DELIVERABLE_REFERENCE
P_DELIVERABLE_ID
このプロシージャを使用すると、成果物とタスク割当の関連を削除できます。このプロシージャの必須パラメータは次のとおりです。
P_DELIVERABLE_ID
P_PM_DELIVERABLE_REFERENCE
予算によって、プロジェクトまたはタスクを完了するために使用すると予想する時間と資源が追跡されます。外部システムを使用して予算を準備してから、予算APIを使用して、予算および予算明細をOracle Projectsにインターフェイスします。その後、Oracle Projectsによって、外部システムに格納された資源予算およびレートに基づいて予算が生成されます。複数の予算バージョンをOracle Projectsにインタフェースし、必要に応じて基本編成できます。
注意: プロジェクト識別子を必要とする予算APIを呼び出す場合は、プロジェクトを識別するためにP_PA_PROJECT_IDまたはP_PM_PROJECT_REFERENCEパラメータを渡す必要があります。資源リスト識別子を必要とする予算APIを呼び出す場合は、資源リストを識別するためにP_RESOURCE_LIST_NAMEまたはP_RESOURCE_LIST_IDパラメータを渡す必要があります。
予算APIのパラメータ・データを提供するビューを次に示します。ビューの詳細は、OracleMetaLinkで入手可能なOracle eTRMを参照してください。
この項で説明するプロシージャを次に示します。これらのプロシージャは、パブリックAPIパッケージPA_BUDGET_PUB内にあります。
予算および予算明細プロシージャ
以降のページに、APIで使用されるレコードおよび表のデータ型を定義します。
表タイプBUDGET_LINE_IN_TBL_TYPEは、BUDGET_LINE_IN_REC_TYPEの表です。次の表に、BUDGET_LINE_IN_REC_TYPEデータ型の属性を示します。
名称 | 使用 | タイプ | 必須であるか | 説明 |
---|---|---|---|---|
PA_TASK_ID | IN | NUMBER | No | Oracle Projects内のタスクを一意に識別する参照コード |
PM_TASK _REFERENCE | IN | VARCHAR2 (30) | No | 外部システム内のタスクを一意に識別する参照コード |
RESOURCE_ALIAS | IN | VARCHAR2 (80) | No | 資源の別名 |
RESOURCE_LIST _MEMBER_ID | IN | NUMBER | No | 資源の識別コード |
BUDGET_START _DATE | IN | DATE | No | 予算明細の開始日 |
BUDGET_END _DATE | IN | DATE | No | 予算明細の終了日 |
PERIOD_NAME | IN | VARCHAR2 (30) | No | GLまたはPA期間名 |
DESCRIPTION | IN | VARCHAR2 (255) | No | (現在使用不可) |
RAW_COST | IN | NUMBER | No | 予算直接費金額 |
BURDENED_COST | IN | NUMBER | No | 予算総原価金額 |
REVENUE | IN | NUMBER | No | 予算収益額 |
QUANTITY | IN | NUMBER | No | 予算数量 |
PM_PRODUCT_CODE | IN | VARCHAR2 (30) | No | 外部システムの仕入先の製品コード |
PM_BUDGET _LINE_REFERENCE | IN | VARCHAR2 (30) | No | クライアント側の予算明細を識別する参照コード |
ATTRIBUTE _CATEGORY | IN | VARCHAR2 (30) | No | 付加フレックスフィールド用 |
ATTRIBUTE1〜ATTRIBUTE15 | IN | VARCHAR2 (150) | No | 予算明細付加フレックスフィールド |
TXN_CURRENCY _CODE | IN | VARCHAR2 (15) | Yes | 予算明細の取引通貨コード |
PROJFUNC_COST _RATE_TYPE | IN | VARCHAR2 (30) | No | 取引通貨からプロジェクト機能通貨に原価金額を換算するためのレート・タイプ |
PROJFUNC_COST _RATE_DATE_TYPE | IN | VARCHAR2 (30) | No | 取引通貨からプロジェクト機能通貨に原価金額を換算するためのレート基準日タイプ |
PROJFUNC_COST _RATE_DATE | IN | DATE | No | 取引通貨からプロジェクト機能通貨に原価金額を換算するためのレート基準日 |
PROJFUNC_COST _EXCHANGE_RATE | IN | NUMBER | No | PROJFUNC_COST_RATE_TYPEが「ユーザー」の場合に、取引通貨からプロジェクト機能通貨に原価金額を換算するためのレート |
PROJFUNC_REV _RATE_TYPE | IN | VARCHAR2 (30) | No | 取引通貨からプロジェクト機能通貨に収益額を換算するためのレート・タイプ |
PROJFUNC_REV _RATE_DATE_TYPE | IN | VARCHAR2 (30) | No | 取引通貨からプロジェクト機能通貨に収益額を換算するためのレート基準日タイプ |
PROJFUNC_REV _RATE_DATE | IN | DATE | No | 取引通貨からプロジェクト機能通貨に収益額を換算するためのレート基準日 |
PROJFUNC_REV _EXCHANGE_RATE | IN | NUMBER | No | PROJFUNC_REV_RATE_TYPEが「ユーザー」の場合に、取引通貨からプロジェクト機能通貨に収益額を換算するためのレート |
PROJECT_COST _RATE_TYPE | IN | VARCHAR2 (30) | No | 取引通貨からプロジェクト通貨に原価金額を換算するためのレート・タイプ |
PROJECT_COST _RATE_DATE_TYPE | IN | VARCHAR2 (30) | No | 取引通貨からプロジェクト通貨に原価金額を換算するためのレート基準日タイプ |
PROJECT_COST _RATE_DATE | IN | DATE | No | 取引通貨からプロジェクト通貨に原価金額を換算するためのレート基準日 |
PROJECT_COST _EXCHANGE_RATE | IN | NUMBER | No | PROJECT_COST_RATE_TYPEが「ユーザー」の場合に、取引通貨からプロジェクト通貨に原価金額を換算するためのレート |
PROJECT_REV _RATE_TYPE | IN | VARCHAR2 (30) | No | 取引通貨からプロジェクト通貨に収益額を換算するためのレート・タイプ |
PROJECT_REV _RATE_DATE_TYPE | IN | VARCHAR2 (30) | No | 取引通貨からプロジェクト通貨に収益額を換算するためのレート基準日タイプ |
PROJECT_REV _RATE_DATE | IN | DATE | No | 取引通貨からプロジェクト通貨に収益額を換算するためのレート基準日 |
PROJECT_REV _EXCHANGE_RATE | IN | NUMBER | No | PROJECT_REV_RATE_TYPEが「ユーザー」の場合に、取引通貨からプロジェクト通貨に収益額を換算するためのレート |
CHANGE_REASON _CODE | IN | VARCHAR2 (30) | No | 変更事由を識別する参照コード |
表タイプBUDGET_LINE_OUT_TBL_TYPEは、BUDGET_LINE_OUT_REC_TYPEの表です。次の表に、BUDGET_LINE_OUT_REC_TYPEデータ型の属性を示します。
名称 | 使用 | タイプ | 必須であるか | 説明 |
---|---|---|---|---|
RETURN_STATUS | OUT NOCOPY | VARCHAR2(1) | 戻りステータス |
表タイプCALC_BUDGET_LINE_OUT_TBL_TYPEは、CALC_BUDGET_LINE_OUT_REC_TYPEの表です。次の表に、CALC_BUDGET_LINE_OUT_REC_TYPEデータ型の属性を示します。
名称 | 使用 | タイプ | 説明 |
---|---|---|---|
PA_TASK_ID | OUT NOCOPY | NUMBER | Oracle Projects内のタスクを一意に識別する参照コード |
PM_TASK _REFERENCE | OUT NOCOPY | VARCHAR2 (30) | 外部システム内のタスクを一意に識別する参照コード |
RESOURCE_ALIAS | OUT NOCOPY | VARCHAR2 (80) | 資源の別名 |
RESOURCE_LIST _MEMBER_ID | OUT NOCOPY | NUMBER | 資源の識別コード |
BUDGET_START _DATE | OUT NOCOPY | DATE | 予算の開始日 |
BUDGET_END_DATE | OUT NOCOPY | DATE | 予算の終了日 |
PERIOD_NAME | OUT NOCOPY | VARCHAR2 (30) | PAまたはGL期間名 |
CALCULATED _RAW_COST | OUT NOCOPY | NUMBER | 取引通貨での計算済直接費(P_TXN_CURRENCY_CODE) |
CALCULATED _BURDENED_COST | OUT NOCOPY | NUMBER | 取引通貨での計算済総原価(P_TXN_CURRENCY_CODE) |
CALCULATED _REVENUE | OUT NOCOPY | NUMBER | 取引通貨での計算済収益(P_TXN_CURRENCY_CODE) |
QUANTITY | OUT NOCOPY | NUMBER | 数量 |
RETURN_STATUS | OUT NOCOPY | VARCHAR2(1) | API標準 |
TXN_CURRENCY _CODE | OUT | VARCHAR2(30) | 予算明細の取引通貨コード。フォーム・ベース予算では、これは常にプロジェクト機能通貨です。 |
PROJECT_RAW _COST | OUT | NUMBER | プロジェクト通貨での計算済直接費金額。Webベースのユーザー・インタフェースを使用して作成された予算にのみ適用可能です。 |
PROJECT _BURDENED_COST | OUT | NUMBER | プロジェクト通貨での計算済総原価金額。Webベースのユーザー・インタフェースを使用して作成された予算にのみ適用可能です。 |
PROJECT_REVENUE | OUT | NUMBER | プロジェクト通貨での計算済収益額。Webベースのユーザー・インタフェースを使用して作成された予算にのみ適用可能です。 |
PROJFUNC_RAW _COST | OUT | NUMBER | プロジェクト機能通貨での計算済直接費金額。Webベースのユーザー・インタフェースを使用して作成された予算にのみ適用可能です。 |
PROJFUNC _BURDENED_COST | OUT | NUMBER | プロジェクト機能通貨での計算済総原価金額。Webベースのユーザー・インタフェースを使用して作成された予算にのみ適用可能です。 |
PROJFUNC _REVENUE | OUT | NUMBER | プロジェクト機能通貨での計算済収益額。Webベースのユーザー・インタフェースを使用して作成された予算にのみ適用可能です。 |
この項では、予算APIについて、ビジネス・ルールおよびパラメータも含めて説明します。
ADD_BUDGET_LINEは、プロジェクトおよび予算タイプ、またはプロジェクトおよび財務計画タイプのいずれかに対して、Oracle Projectsで草案または作業中バージョンに明細を追加するために使用するPL/SQLプロシージャです。
このセクションでは予算タイプのために作成されるバージョンと、このプロシージャを使用するためのルールおよび財務計画タイプのための一般ビジネス・ルールを説明します。
ADD_BUDGET_LINEを使用して草案または作業中バージョンに明細を追加した後、プロシージャBASELINE_BUDGETを呼び出す前にデータを保存します。(基本編成を作成するには、事前に作業中バージョンの承認が必要になる場合があります。)収益予算の基本編成を作成する前に、Oracle Projectsで資金を入力してください。
明細は草案または作業中バージョンにのみ追加できます。発行済または基本編成バージョンに明細を追加することはできません。自動基本編成機能が使用可能になっている場合、承認済収益予算作業中バージョンに明細を追加することはできません。
Oracle ProjectsはOracle Projectsのシステムに保存された情報と特定の情報間のリンクを次のように確立します。Oracle Projects識別コードのかわりに次のパラメータを使用できます。
P_PA_PROJECT_IDへのリンクはP_PM_PROJECT_REFERENCEです。
P_FIN_PLAN_TYPE_IDへのリンクはP_FIN_PLAN_TYPE_NAMEです。
P_PA_TASK_IDへのリンクはP_PM_TASK_REFERENCEです。
P_RESOURCE_LIST_MEMBER_IDへのリンクはP_RESOURCE_ALIASです。
予算APIを呼び出す製品では、個別に製品コードを指定する必要があります。Oracle Projectsは製品コードを事前定義し、これらのコードを適切な仕入先に提供します。
バージョンが資源別にカテゴリ化されていない場合、次のパラメータのペアに値を指定する必要はありません。
P_RESOURCE_ALIASとP_RESOURCE_LIST_MEMBER_ID
PAまたはGL期間で期間分割されているバージョンには、次のルールが適用されます。
パラメータP_PERIOD_NAMEに有効な値が指定されている場合、このプロシージャは指定期間のバージョンに明細を追加します。
バージョンがPA期間で期間分割されている場合、パラメータP_PERIOD_NAMEに指定された値をPA期間にマップする必要があります。同様に、バージョンがGL期間で期間分割されている場合、P_PERIOD_NAMEに指定された値をGL期間にマップする必要があります。
P_PERIOD_NAMEに指定された値が無効な場合、プロシージャは異常終了します。
パラメータP_BUDGET_START_DATEおよびパラメータP_PERIOD_NAMEに値が指定されている場合、Oracle ProjectsではP_PERIOD_NAMEを使用して期間を決定します。
パラメータP_PERIOD_NAMEに値が指定されていない場合、プロシージャはパラメータP_BUDGET_START_DATEを使用して期間を決定します。
バージョンがPA期間で期間分割されている場合、プロシージャはPAカレンダに基づいて期間を選択します。バージョンがGL期間で期間分割されている場合、プロシージャはGLカレンダに基づいて期間を選択します。
Oracle Projectsで有効な期間名を決定できない場合、プロシージャは異常終了します。
パラメータP_BUDGET_START_DATEおよびパラメータP_PERIOD_NAMEに値が指定されていない場合、プロシージャは異常終了します。
付加フレックスフィールドが定義されている場合、これらをINパラメータとして渡すことができます。
ユーザー・インタフェースで予算タイプまたは財務計画タイプに対してバージョンに明細を追加する際のビジネス・ルールはすべて、このプロシージャの使用時に適用できます。
次のパラメータは予算タイプの計画では使用されません。
P_FIN_PLAN_TYPE_ID
P_FIN_PLAN_TYPE_NAME
P_VERSION_NUMBER
P_VERSION_TYPE
P_CURRENCY_CODE
このプロシージャを使用して予測予算タイプの予算明細を追加することはできません。
予算入力方法での定義に従ってタスク別に計画する場合のみ、パラメータP_PA_TASK_IDまたはP_PM_TASK_REFERENCEに値を指定します。
予算入力方法での定義に従ってPAまたはGL期間別に計画する場合のみ、パラメータP_PERIOD_NAMEに値を指定します。
予算情報を指定するタスク・レベルは、予算入力方法で指定されたレベルに対応します。たとえば、予算を最下位タスク・レベルでのみ入力できるように予算入力方法で指定されている場合、このプロシージャは最下位タスクのみを渡します。
次の表に示すように、予算入力方法(BEM)によって特定のフィールドの入力が制限されている場合は、対応するパラメータに値を指定しないでください。
BEM設定 | 関連パラメータ |
---|---|
「原価数量」は入力不可 | p_quantity |
「直接費」は入力不可 | p_raw_cost |
「総原価」は入力不可 | p_burdened_cost |
「収益数量」は入力不可 | p_quantity |
「収益」は入力不可 | p_revenue |
プロジェクトおよび予算タイプの予算管理が使用可能になっている場合、そのプロジェクトに関連付けられた元帳で定義された直近の予算引当年度より後のGL期間に対して予算明細を追加することはできません。
次のパラメータは財務計画タイプの計画では使用されません。
P_BUDGET_TYPE_CODE
パラメータP_VERSION_NUMBERに値が指定されていない場合、このプロシージャは現行作業中バージョンに明細を追加します。
予算または予測の計画レベルでの定義に従ってタスク別に計画する場合のみ、パラメータP_PA_TASK_IDまたはP_PM_TASK_REFERENCEに値を指定できます。
計画情報を指定するタスク・レベルは、予算または予測バージョンの計画レベルで指定されたレベルに対応します。たとえば、予算または予測を最上位タスク・レベルで入力できるように計画レベルで指定されている場合、このプロシージャは最上位タスクおよびプロジェクト・レベルの予算および予測金額のみを渡します。
次の条件下では、このプロシージャを使用して明細を追加することはできません。
初期基本編成後の編集を許可するオプションが財務計画タイプで使用可能でない場合、基本編成作成後に作業中バージョンは変更できません。
予算または予測バージョンが他のユーザーによってロックされているか、処理のためにロックされている場合
予算または予測バージョンに処理エラーがある場合
変更文書バージョン
組織予測計画タイプに対するバージョン
作業計画バージョン
次の表に示すように、金額入力オプションによって特定のフィールドの入力が制限されている場合は、対応するパラメータに値を指定しないでください。このような場合、指定した金額入力オプションを使用して予算または予測が作成され、対応する数量と金額の編集は許可されません。
金額入力オプションの設定 | 関連パラメータ |
---|---|
「原価数量」は入力不可 | p_quantity(バージョンが原価専用の場合に使用) |
「収益数量」は入力不可 | p_quantity(バージョンが収益専用の場合に使用) |
「数量」は入力不可 | p_quantity(原価と収益が同じバージョンでまとめて計画されている場合に使用) |
「直接費」は入力不可 | p_raw_cost |
「総原価」は入力不可 | p_burdened_cost |
「収益」は入力不可 | p_revenue |
パラメータP_RAW_COSTおよびP_BURDENED_COSTの値は、財務計画タイプによって原価計画、あるいは同じバージョンにまとめた原価および収益計画が許可されている予算または予測に対してのみ指定できます。
パラメータP_REVENUE_AMOUNTの値は、財務計画タイプによって収益計画、あるいは同じバージョンにまとめた原価および収益計画が許可されている予算または予測に対してのみ指定できます。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。このプロシージャの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
BASELINE_BUDGETは、プロジェクトおよび予算タイプ、またはプロジェクトおよび財務計画タイプのいずれかに対して、Oracle Projectsで既存の予算に基本編成を作成するために使用するPL/SQLプロシージャです。
次のパラメータは、財務計画タイプでの計画に使用します。予算タイプでの計画には使用しません。
P_FIN_PLAN_TYPE_ID
P_FIN_PLAN_TYPE_NAME
P_VERSION_TYPE
予算をまだ発行していない場合は、基本編成の作成前にOracle Projectsで自動的に発行されます。
パラメータP_MARK_AS_ORIGINALに対して値が渡されていないか、または無効な値が渡されている場合、デフォルトはNになります。基本編成を初めて作成した場合、P_MARK_AS_ORIGINALはYに設定されます。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。このプロシージャの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
P_BUDGET_TYPE_CODE
CALCULATE_AMOUNTSは、プロジェクトおよび予算タイプ、またはプロジェクトおよび財務計画タイプのいずれかに対してOracle Projectsで草案または作業中バージョンの明細の直接費、総原価および収益額を再計算するために使用するPL/SQLプロシージャです。このプロシージャでは、「予算計算機能拡張」(PA_CLIENT_EXTN_BUDGET)を使用して計算を実行します。
このセクションでは予算タイプのために作成されるバージョンと、このプロシージャを使用するためのルールおよび財務計画タイプのための一般ビジネス・ルールを説明します。
金額の再計算は、草案または作業中バージョンに対してのみ行えます。発行済または基本編成バージョンの金額を再計算することはできません。自動基本編成機能が使用可能になっている場合、このプロシージャを使用して承認済収益予算バージョンの金額を再計算することはできません。
このプロシージャを呼び出すには、プロジェクト識別子(P_PA_PROJECT_IDまたはP_PM_PROJECT_REFERENCE)および次の予算または予測識別子の1つを指定する必要があります。
P_BUDGET_VERSION_ID
BUDGET_TYPE_CODE
P_FIN_PLAN_TYPE_IDまたはP_FIN_PLAN_TYPE_NAME
このプロシージャによって予算計算クライアント機能拡張(PA_CLIENT_EXTN_BUDGET)が呼び出されるため、必要な金額を計算するように機能拡張を変更する必要があります。
このプロシージャによって機能拡張プロシージャCALC_RAW_COSTが呼び出された後、Oracle Projectsでは数量とレート金額が次のように設定されます。
非レートベースの計画取引については、数量は返された直接費の値に設定されます。直接費レートは変わらず(値は1)、総原価レートは総原価を導出数量で割ったものに設定されます。
レートベースの計画取引については、直接費レートは返された直接費の値を数量で割ったものに設定されます。
このプロシージャによって機能拡張プロシージャCALC_BURDENED_COSTが呼び出された後、Oracle Projectsによって間接費レートは返された総原価を数量で割ったものに設定されます。
このプロシージャによって機能拡張プロシージャCALC_REVENUEが呼び出された後、Oracle Projectsでは数量とレート金額が次のように設定されます。
収益のみの計画からの非レートベースの計画取引については、数量は返された収益値に設定されます。
収益および原価計画からの非レートベースの計画取引については、請求レートは返された収益値を数量で割ったものに設定されます。
レートベースの計画取引については、請求レートは返された収益値を数量で割ったものに設定されます。
再計算する金額を指定するには、次のパラメータのうち1つ以上の値をYに設定します。
P_CALC_RAW_COST_YN
P_CALC_BURDENED_COST_YN
P_CALC_REVENUE_YN
CALCULATE_AMOUNTSが正常に実行された後、再計算された金額でバージョン明細を自動更新するには、パラメータP_UPDATE_DB_FLAGをYに設定します。
更新ステータスにかかわらず、CALCULATE_AMOUNTSは、読み取る明細ごとに1行の金額を返します。このプロシージャは、プロジェクト通貨およびプロジェクト機能通貨の金額を更新します。集計プロセスの実行時、更新された金額は資源割当レベルおよびバージョン・レベルに積み上げられます。
次のパラメータは予算タイプの計画では使用されません。
P_FIN_PLAN_TYPE_ID
P_FIN_PLAN_TYPE_NAME
P_VERSION_TYPE
P_BUDGET_VERSION_NUMBER
プロジェクトおよび予算タイプの予算管理が使用可能になっており、パラメータP_UPDATE_DB_FLAGの値がYに設定されている場合、Oracle Projectsでは、そのプロジェクトに関連付けられた元帳で定義された直近の予算引当年度より後のGL期間に対して予算明細は再計算されません。
次のパラメータは財務計画タイプの計画では使用されません。
P_BUDGET_TYPE_CODE
パラメータP_BUDGET_VERSION_NUMBERに値が指定されていない場合、このプロシージャは現行作業中バージョンの金額を再計算します。
原価と収益が別個に計画されている場合、パラメータP_VERSION_TYPEに値を指定する必要があります。
次の条件下では、このプロシージャを使用して作業中バージョンの金額を再計算することはできません。
初期基本編成後の編集を許可するオプションが財務計画タイプで使用可能でない場合、基本編成作成後に作業中バージョンは変更できません。
予算または予測バージョンが他のユーザーによってロックされているか、処理のためにロックされている場合
予算または予測バージョンに処理エラーがある場合
変更文書バージョン
組織予測計画タイプに対するバージョン
作業計画バージョン
期間で期間分割された予測バージョンについては、このプロシージャは、実績金額のない明細の金額を再計算します(パラメータP_BUDGET_START_DATEの値は完了見積開始日より後です)。予測バージョンが期間で期間分割されていない場合、このプロシージャは、実績金額のある明細を含む、すべての明細の金額を再計算します。
予算計算機能拡張プロシージャが値を計算できない場合、またはゼロの金額を計算した場合、プロシージャはエラーを報告します。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。このプロシージャの必須パラメータは次のとおりです。
P_PM_PRODUCT_CODE
CREATE_DRAFT_BUDGETは、選択した予算タイプおよび予算入力方法、または財務計画タイプを使用して、特定のプロジェクトに対してOracle Projectsで予算草案とその予算明細を作成するために使用するPL/SQLプロシージャです。
このAPIは複合データ型を使用します。詳細は、「複合データ型を使用するAPI」を参照してください。
次のパラメータは、財務計画タイプでの計画に使用します。予算タイプでの計画には使用しません。
計画タイプ識別子および計画タイプ名のパラメータ
バージョン・タイプのパラメータ
P_TIME_PHASED_CODE
P_PLAN_IN_MULTI_CURR_FLAG
通貨属性
直接費、総原価、収益、数量計画、現行作業中バージョンの作成、現行作業中バージョンの置換用のフラグ
P_USING_RESOURCE_LISTS_FLAG
基本編成を作成するには、事前に予算草案の承認が必要です。このAPIを使用して予算草案および予算明細を作成した後、API BASELINE_BUDGETを呼び出す前にデータをデータベースに保存します。収益予算については、基本編成を作成する前にOracle Projectsで資金を入力します。
Oracle Projectsではシステムに保存された情報と特定の情報間のリンクが次のように確立されます。これにより、対応するOracle Projects識別コードのかわりに、次のパラメータを渡すことができます。
予算では、P_PA_PROJECT_IDへのリンクはP_PM_PROJECT_REFERENCEです。P_RESOURCE_LIST_IDへのリンクはP_RESOURCE_LIST_NAMEです。
予算明細では、P_PA_TASK_IDへのリンクはP_PM_TASK_REFERENCEです。P_RESOURCE_LIST_MEMBER_IDへのリンクはP_RESOURCE_ALIASです。
予算APIを呼び出す製品では、個別に製品コードを指定する必要があります。Oracle Projectsは製品コードを事前定義し、これらのコードを適切な仕入先に提供します。
予算入力方法または財務計画オプションでの定義に従って予算が資源別にカテゴリ化されていない場合は、次のパラメータのペアの両方にNULL値を指定できます。
P_RESOURCE_LIST_NAMEとP_RESOURCE_LIST_ID
RESOURCE_ALIASとRESOURCE_LIST_MEMBER_ID
予算入力方法または財務計画オプションでの定義に従ってタスク別に予算編成する場合のみ、PA_TASK_IDまたはPM_TASK_REFERENCEパラメータに値を指定できます。
予算入力方法または財務計画オプションでの定義に従ってPAまたはGL期間別に予算編成する場合のみ、PERIOD_NAMEパラメータに値を指定できます。
PAまたはGL期間別に予算編成する場合に、期間名を指定しないと、Oracle Projectsでは予算開始日および終了日を使用してデータベースから有効な期間名が選択されます。Oracle Projectsが有効な期間名を取得できない場合、APIが異常終了します。
日付範囲別に予算編成する場合は、予算開始日および終了日を指定する必要があります。特定の資源割当では、これらの日付は重複できません。
注意: 財務計画タイプに作成する予算については、日付範囲別の予算編成は行えません。
予算情報を渡すタスク・レベルは、予算入力方法で指定されたレベルに対応します。たとえば、予算タイプに作成する予算については、予算を最下位タスク・レベルでのみ入力できるように予算入力方法で指定されている場合、このAPIは最下位タスクのみを渡します。
次の表に示す予算入力方法(BEM)フラグがNに設定されている場合は、関連パラメータを渡さないでください。
BEMフラグ | 関連パラメータ |
---|---|
cost_quantity_flag | quantity |
raw_cost_flag | raw_cost |
burdened_cost_flag | burdened_cost |
rev_quantity_flag | quantity |
revenue_flag | revenue |
予算入力方法は、外部システムのニーズを反映する必要があります。
予算タイプまたは財務計画タイプでの定義に従って、原価予算に対してのみパラメータP_RAW_COSTおよびP_BURDENED_COST金額に値を指定できます。
予算タイプまたは財務計画タイプでの定義に従って、収益予算に対してのみパラメータP_REVENUE_AMOUNTに値を指定できます。
PL/SQL表P_BUDGET_LINES_TBLの受渡しはオプションです。予算草案では、予算明細を同時に作成する必要はありません。
プロジェクトおよび予算タイプに予算草案がすでに存在する場合は、新規予算草案を作成すると、既存の予算および予算明細が削除されます。
プロジェクトおよび財務計画タイプに作業中予算または予測バージョンが存在する場合、P_CREATE_NEW_CURR_WORKING_FLAGをNに設定して新規の作業中予算または予測バージョンを作成すると、予算明細を持つ新規の作業中予算または予測バージョンが作成されます。
プロジェクトおよび財務計画タイプに現行作業中予算または予測バージョンが存在する場合、P_CREATE_NEW_CURR_WORKING_FLAGをYに設定して新規の作業中予算または予測バージョンを作成すると、新規作成された予算または予測バージョンが「現行作業」とマークされます。
プロジェクトおよび財務計画タイプに現行作業中予算または予測バージョンが存在する場合、P_REPLACE_CURRENT_WORKING_FLAGをYに設定して新規の作業中予算または予測バージョンを作成すると、既存の現行作業中予算または予測バージョンおよび予算明細が削除され、新規作成された予算または予測バージョンが「現行作業」とマークされます。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。このプロシージャの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
P_BUDGET_TYPE_CODE
P_ENTRY_METHOD_CODE
CREATE_DRAFT_FINPLANは、財務計画タイプに予算草案および予測を作成するプロシージャで、CREATE_DRAFT_BUDGETに類似しています。このプロシージャは、プロジェクト、タスク、資源および通貨レベルで要約データを受け入れます。PAまたはGL期間で期間分割された予算および予測バージョンについては、資源に関連付けられた分割曲線に基づいて、APIは全期間へのデータ(数量や金額を含む)の分割も行います。その他のデータ編集または変更は、このプロシージャでは行われません。このプロシージャの検証および機能セキュリティは、CREATE_DRAFT_BUDGETと同様です。
注意: このプロシージャは、予算計算クライアント機能拡張を呼び出します。予算計算クライアント機能拡張を使用可能にしている場合、クライアント機能拡張では、このAPIプロシージャで生成された次の金額を上書きできます。
直接費
総原価
収益
予算計算クライアント機能拡張の詳細は、「予算計算機能拡張」を参照してください。
基本編成を作成するには、事前に予算草案の承認が必要です。このAPIを使用して予算草案および予算明細を作成した後、API BASELINE_BUDGETを呼び出す前にデータをデータベースに保存します。収益予算については、予算の基本編成を作成する前にOracle Projectsで資金を入力する必要があります。
Oracle Projectsではシステムに保存された情報と特定の情報間のリンクが次のように確立されます。これにより、対応するOracle Projects識別コードのかわりに、次のパラメータを渡すことができます。
予算では、P_PA_PROJECT_IDへのリンクはP_PM_PROJECT_REFERENCEです。P_RESOURCE_LIST_IDへのリンクはP_RESOURCE_LIST_NAMEです。
予算明細では、P_PA_TASK_IDへのリンクはP_PM_TASK_REFERENCEです。P_RESOURCE_LIST_MEMBER_IDへのリンクはP_RESOURCE_ALIASです。
予算APIを呼び出す製品では、個別に製品コードを指定する必要があります。Oracle Projectsは製品コードを事前定義し、これらのコードを適切な仕入先に提供します。
予算が資源別にカテゴリ化されていない場合は、次のパラメータのペアの両方にNULL値を指定できます。
P_RESOURCE_LIST_NAMEとP_RESOURCE_LIST_ID
RESOURCE_ALIASとRESOURCE_LIST_MEMBER_ID
プロジェクトに関連付けられた財務計画タイプによって原価と収益を別個に計画するように指定されている場合は、予算または予測バージョンを原価バージョンまたは収益バージョンとして作成するかどうかを指定する必要があります。それ以外の場合は、P_VERSION_TYPEの値を渡す必要はありません。値を渡す場合は、財務計画タイプに定義された値に対応する値を渡す必要があります。
P_PLAN_IN_MULTI_CURR_FLAGを使用して、複数通貨での計画を予算または予測バージョンに対して使用可能にするかどうかを指定できます。このパラメータを渡さない場合、システムでは財務計画タイプに定義された値が使用されます。
予算または予測バージョンをGLまたはPA期間で期間分割するか、あるいは期間分割しないかを指定できます。このパラメータを渡さない場合、システムでは財務計画タイプに定義された値が使用されます。
予算または予測の計画レベルを指定できます。このパラメータを渡さない場合、システムでは財務計画タイプに定義された値が使用されます。
このAPIを使用して作成された計画金額が資源リストを使用して分類されていない場合は、P_USING_RESOURCE_LISTS_FLAGの値をNに設定する必要があります。
次の表に示す金額入力フィールドがNに設定されている場合は、関連パラメータを渡さないでください。この場合、予算または予測は対応する金額入力オプションを使用して作成され、これらの数量および金額の編集は行えません。
金額入力フィールド | 関連パラメータ |
---|---|
cost_quantity_flag | quantity(財務計画バージョンが原価専用の場合に使用) |
rev_quantity_flag | quantity(財務計画バージョンが収益専用の場合に使用) |
all_quantity_flag | quantity(原価と収益が同じ財務計画バージョンでまとめて計画されている場合に使用) |
raw_cost_flag | raw_cost |
burdened_cost_flag | burdened_cost |
revenue_flag | revenue |
パラメータP_RAW_COSTおよびP_BURDENED_COSTの値は、財務計画タイプによって原価計画、あるいは原価と収益をまとめた計画が許可されている予算または予測に対してのみ指定できます。
パラメータP_REVENUE_AMOUNTの値は、財務計画タイプによって収益計画、あるいは原価と収益をまとめた計画が許可されている予算または予測に対してのみ指定できます。
予算バージョンに付加フレックスフィールドが定義されている場合、これらをパラメータとして渡すことができます。
PL/SQL表P_FINPLAN_TRANS_TABの受渡しはオプションです。
予算または予測がPAまたはGL期間で期間分割されている場合、このAPIに渡された予算または予測金額は、P_FINPLAN_TRANS_TABコンポジットPL/SQL表パラメータで指定された開始日から終了日までの資源に関連付けられた分割曲線を使用して分割されます。
予算または予測の計画レベルでの定義に従ってタスク別に予算編成する場合のみ、PA_TASK_IDまたはPM_TASK_REFERENCEパラメータに値を指定できます。
予算情報を渡すタスク・レベルは、予算または予測の計画レベルで指定されたレベルに対応します。たとえば、予算を最上位タスク・レベルで入力できるように計画レベルで指定されている場合、このAPIは最上位タスクおよびプロジェクト・レベルの予算および予測金額を渡します。
資源割当に付加フレックスフィールドが定義されている場合、これらをパラメータとして渡すことができます。
予算草案では、予算明細を同時に作成する必要はありません。
財務計画タイプを使用して作成された予算または予測については、1つの現行作業中バージョンとともに複数の作業中バージョンが存在することがあります。P_CREATE_NEW_CURR_WORKING_FLAGおよびP_REPLACE_CURRENT_WORKING_FLAGパラメータは、新規予算バージョンが現行作業中バージョンとして作成されるか、および新規バージョンによって既存の現行作業中バージョンが置換(削除)されるかどうかを決定します。
プロジェクトおよび財務計画タイプに作業中予算または予測バージョンが存在する場合、P_CREATE_NEW_CURR_WORKING_FLAGをNに設定して新規の作業中予算または予測バージョンを作成すると、予算明細を持つ新規の作業中予算または予測バージョンが作成されます。
プロジェクトおよび財務計画タイプに現行作業中予算または予測バージョンが存在する場合、P_CREATE_NEW_CURR_WORKING_FLAGをYに設定して新規の作業中予算または予測バージョンを作成すると、新規作成された予算または予測バージョンが「現行作業」とマークされます。
プロジェクトおよび財務計画タイプに現行作業中予算または予測バージョンが存在する場合、P_REPLACE_CURRENT_WORKING_FLAGをYに設定して新規の作業中予算または予測バージョンを作成すると、既存の現行作業中予算または予測バージョンおよび予算明細が削除され、新規作成された予算または予測バージョンが「現行作業」とマークされます。
財務計画タイプに予算または予測バージョンを作成する際のビジネス・ルールはすべて、このAPIの使用時に適用できます。たとえば、現行作業中バージョンが別のユーザーによってロックされており、P_CREATE_NEW_CURR_WORKING_FLAGまたはP_REPLACE_CURRENT_WORKING_FLAGパラメータがYに設定されている場合は、現行作業中バージョンがロックされており、置換も削除もできないという旨のメッセージが返されます。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。このプロシージャの必須パラメータは次のとおりです。
P_PM_PRODUCT_CODE
P_BUDGET_VERSION_NAME
DELETE_BASELINE_BUDGETは、プロジェクトおよび予算タイプ、またはプロジェクトおよび財務計画タイプのいずれかに対して、Oracle Projectsで基本編成バージョンを削除するために使用するPL/SQLプロシージャです。
このセクションでは予算タイプのために作成されるバージョンと、このプロシージャを使用するためのルールおよび財務計画タイプのための一般ビジネス・ルールを説明します。
予算管理を使用しない予算については、このプロシージャを使用して、次の例外を除くすべての基本編成バージョンを削除できます。
現行(最新バージョン)
現行当初
予算管理を使用する予算については、このプロシージャを使用して、次の例外を除くすべての基本編成バージョンを削除できます。
現行(最新バージョン)
予算管理残高が存在する場合、現行バージョンより前のバージョン
現行当初
このプロシージャを使用して草案または作業中バージョンおよび発行済バージョンを削除することはできません。
Oracle ProjectsはOracle Projectsのシステムに保存された情報と特定の情報間のリンクを次のように確立します。Oracle Projects識別コードのかわりに次のパラメータを使用できます。
P_PA_PROJECT_IDへのリンクはP_PM_PROJECT_REFERENCEです。
P_FIN_PLAN_TYPE_IDへのリンクはP_FIN_PLAN_TYPE_NAMEです。
予算APIを呼び出す製品では、個別に製品コードを指定する必要があります。Oracle Projectsは製品コードを事前定義し、これらのコードを適切な仕入先に提供します。
基本編成バージョンとその対応明細を削除するには、パラメータP_VERSION_NUMBERに値を指定する必要があります。
現行当初または現行基本編成バージョンに値を指定した場合、プロシージャは異常終了します。
予算管理が使用可能になっており、予算管理残高がある以前の基本編成バージョンに値を指定した場合、プロシージャは異常終了します。
Oracle Projectsの機能セキュリティでは、次の区分の基本編成バージョンの削除が管理されます。これらの基本編成区分は、予算タイプおよび財務計画タイプのバージョンに適用されます。
承認済予算(原価または収益): 財務: プロジェクト: 承認済予算: 基本編成バージョンの削除
予算(未承認原価または収益): 財務: プロジェクト: 予算: 基本編成バージョンの削除
予測(財務計画にのみ適用可能): 財務: プロジェクト: 予測: 承認済バージョンの削除
次のパラメータは予算タイプの計画では使用されません。
P_FIN_PLAN_TYPE_ID
P_FIN_PLAN_TYPE_NAME
P_VERSION_TYPE
このプロシージャを使用して予測予算タイプの基本編成バージョンを削除することはできません。
ユーザー・インタフェースで財務計画タイプに対して基本編成バージョンを削除する際のビジネス・ルールはすべて、このプロシージャの使用時に適用されます。
次のパラメータは財務計画タイプの計画では使用されません。
P_BUDGET_TYPE_CODE
原価と収益が別個に計画されている場合、パラメータP_VERSION_TYPEに値を指定する必要があります。
次の条件下では、このプロシージャを使用して基本編成バージョンを削除することはできません。
組織予測計画タイプに対するバージョン
作業計画バージョン
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。このプロシージャの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
バージョンを識別するパラメータは次のとおりです。
P_PA_PROJECT_ID
P_BUDGET_TYPE_CODE
P_FIN_PLAN_TYPE_ID
P_VERSION_TYPE
P_VERSION_NUMBER
DELETE_BUDGET_LINEは、プロジェクトおよび予算タイプ、またはプロジェクトおよび財務計画タイプのいずれかに対して、Oracle Projectsで草案または作業中バージョンから明細を削除するために使用するPL/SQLプロシージャです。
このセクションでは予算タイプのために作成されるバージョンと、このプロシージャを使用するためのルールおよび財務計画タイプのための一般ビジネス・ルールを説明します。
DELETE_BUDGET_LINEを使用して草案または作業中バージョンから1つ以上の明細を削除したら、プロシージャBASELINE_BUDGETを呼び出す前にデータを保存します。(基本編成を作成するには、事前に作業中バージョンの承認が必要になる場合があります。)
明細は草案または作業中バージョンからのみ削除できます。発行済または基本編成バージョンから明細を削除することはできません。自動基本編成機能が使用可能になっている場合、承認済収益予算作業中バージョンから明細を削除することはできません。
Oracle ProjectsはOracle Projectsのシステムに保存された情報と特定の情報間のリンクを次のように確立します。Oracle Projects識別コードのかわりに次のパラメータを使用できます。
P_PA_PROJECT_IDへのリンクはP_PM_PROJECT_REFERENCEです。
P_FIN_PLAN_TYPE_IDへのリンクはP_FIN_PLAN_TYPE_NAMEです。
P_PA_TASK_IDへのリンクはP_PM_TASK_REFERENCEです。
P_RESOURCE_LIST_MEMBER_IDへのリンクはP_RESOURCE_ALIASです。
予算APIを呼び出す製品では、個別に製品コードを指定する必要があります。Oracle Projectsは製品コードを事前定義し、これらのコードを適切な仕入先に提供します。
バージョンが資源別にカテゴリ化されていない場合、次のパラメータのペアに値を指定する必要はありません。
P_RESOURCE_ALIASとP_RESOURCE_LIST_MEMBER_ID
Oracle Projectsでは、パラメータP_START_DATEに指定された日付値は検証されません。
バージョンがPA期間で期間分割されている場合、パラメータP_PERIOD_NAMEに指定された値をPA期間にマップする必要があります。同様に、バージョンがGL期間で期間分割されている場合、パラメータP_PERIOD_NAMEに指定された値をGL期間にマップする必要があります。P_PERIOD_NAMEに指定された値が無効な場合、プロシージャは異常終了します。
ユーザー・インタフェースで予算タイプまたは財務計画タイプに対してバージョンから明細を削除する際のビジネス・ルールはすべて、このプロシージャの使用時に適用できます。
次のパラメータは予算タイプの計画では使用されません。
P_FIN_PLAN_TYPE_ID
P_FIN_PLAN_TYPE_NAME
P_VERSION_NUMBER
P_VERSION_TYPE
P_CURRENCY_CODE
このプロシージャを使用して予測予算タイプの予算明細を削除することはできません。
パラメータP_START_DATEおよびP_PERIOD_NAMEに値が指定されていない場合、プロシージャはタスクと資源の組合せに対して予算明細をすべて削除します。
パラメータP_PERIOD_NAMEに値が指定されていない場合、プロシージャはパラメータP_START_DATEを使用して期間を決定します。
パラメータP_START_DATEおよびパラメータP_PERIOD_NAMEに値が指定されている場合、プロシージャはP_PERIOD_NAMEを使用して開始日を導出します。
予算入力方法によっては、このプロシージャでタスクおよび資源データを指定する必要があります。
タスク・データを指定しない場合、Oracle Projectsでは予算入力方法によって未カテゴリの予算編成(資源によって追跡されていない予算)およびプロジェクト・レベルの予算編成が指定されているものと想定されます。
バージョンの予算入力方法がPAまたはGL期間で期間分割されていない場合に、パラメータP_START_DATEまたはパラメータP_PERIOD_NAMEに値を指定すると、プロシージャは異常終了します。
日付範囲予算については、パラメータP_START_DATEは、予算明細日付範囲の開始日に対応します。PAまたはGL期間で期間分割された予算については、パラメータP_START_DATEは、予算明細が定義されている期間の開始日に対応します。
次のパラメータは財務計画タイプの計画では使用されません。
P_BUDGET_TYPE_CODE
パラメータP_VERSION_NUMBERに値が指定されていない場合、このプロシージャは現行作業中バージョンから明細を削除します。現行作業中バージョン以外のバージョンから明細を削除するには、このパラメータに値を指定する必要があります。
原価と収益が別個に計画されている場合、パラメータP_VERSION_TYPEに値を指定する必要があります。
次の条件下では、このプロシージャを使用して明細を削除することはできません。
初期基本編成後の編集を許可するオプションが財務計画タイプで使用可能でない場合、基本編成作成後に作業中バージョンは変更できません。
予算または予測バージョンが他のユーザーによってロックされているか、処理のためにロックされている場合
予算または予測バージョンに処理エラーがある場合
変更文書バージョン
組織予測計画タイプに対するバージョン
作業計画バージョン
このバージョンに定義された計画オプションによっては、このプロシージャでタスクおよび資源データを指定する必要があります。
複数の取引通貨を計画している場合は、パラメータP_CURRENCY_CODEに値を指定する必要があります。
パラメータP_CURRENCY_CODE、P_START_DATEおよびP_PERIOD_NAMEに値が指定されていない場合、プロシージャは指定のタスクと資源の組合せに対して明細をすべて削除します。
パラメータP_CURRENCY_CODEに値を指定し、パラメータP_START_DATEおよびP_PERIOD_NAMEに値を指定しない場合、プロシージャは指定の通貨コードおよびタスクと資源の組合せに対して明細をすべて削除します。
パラメータP_PERIOD_NAMEに値が指定されていない場合、プロシージャはパラメータP_START_DATEに指定された値を使用して期間を決定します。
パラメータP_START_DATEおよびP_PERIOD_NAMEに値が指定されている場合、プロシージャはP_PERIOD_NAMEを使用して開始日を導出します。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。このプロシージャの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
バージョンと明細を識別するパラメータは次のとおりです。
P_PA_PROJECT_ID
P_BUDGET_TYPE_CODE
P_FIN_PLAN_TYPE_ID
P_VERSION_TYPE
P_VERSION_NUMBER
P_PA_TASK_ID
P_RESOURCE_LIST_MEMBER_ID
P_CURRENCY_CODE
P_START_DATE
P_PERIOD_NAME
DELETE_DRAFT_BUDGETは、プロジェクトおよび予算タイプ、またはプロジェクトおよび財務計画タイプのいずれかに対して、Oracle Projectsで草案または作業中バージョンを削除するために使用するPL/SQLプロシージャです。
このセクションでは予算タイプのために作成されるバージョンと、このプロシージャを使用するためのルールおよび財務計画タイプのための一般ビジネス・ルールを説明します。
草案または作業中バージョンのみ削除できます。発行済または基本編成バージョンを削除することはできません。自動基本編成機能が使用可能になっている場合、承認済収益予算作業中バージョンを削除することはできません。
Oracle ProjectsはOracle Projectsのシステムに保存された情報と特定の情報間のリンクを次のように確立します。Oracle Projects識別コードのかわりに次のパラメータを使用できます。
P_PA_PROJECT_IDへのリンクはP_PM_PROJECT_REFERENCEです。
P_FIN_PLAN_TYPE_IDへのリンクはP_FIN_PLAN_TYPE_NAMEです。
予算APIを呼び出す製品では、個別に製品コードを指定する必要があります。Oracle Projectsは製品コードを事前定義し、これらのコードを適切な仕入先に提供します。
ユーザー・インタフェースで予算タイプまたは財務計画タイプに対して草案または作業中バージョンを削除する際のビジネス・ルールはすべて、このプロシージャの使用時に適用できます。
次のパラメータは予算タイプの計画では使用されません。
P_FIN_PLAN_TYPE_ID
P_FIN_PLAN_TYPE_NAME
P_VERSION_NUMBER
P_VERSION_TYPE
このプロシージャを使用して予測予算タイプの作業中バージョンを削除することはできません。
次のパラメータは財務計画タイプの計画では使用されません。
P_BUDGET_TYPE_CODE
パラメータP_VERSION_NUMBERに値が指定されていない場合、このプロシージャは現行作業中バージョンを削除します。現行作業中バージョン以外のバージョンを削除するには、このパラメータに値を指定する必要があります。
原価と収益が別個に計画されている場合、パラメータP_VERSION_TYPEに値を指定する必要があります。
次の条件下では、このプロシージャを使用して作業中バージョンを削除することはできません。
初期基本編成後の編集を許可するオプションが財務計画タイプで使用可能でない場合、基本編成作成後に作業中バージョンは削除できません。
予算または予測バージョンが他のユーザーによってロックされているか、処理のためにロックされている場合
予算または予測バージョンに処理エラーがある場合
変更文書バージョン
組織予測計画タイプに対するバージョン
作業計画バージョン
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。このプロシージャの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
バージョンを識別するパラメータは次のとおりです。
P_PA_PROJECT_ID
P_BUDGET_TYPE_CODE
P_FIN_PLAN_TYPE_ID
P_VERSION_TYPE
P_VERSION_NUMBER
プロジェクトに添付された財務計画タイプすべてに関する情報を取得するには、プロジェクト・コンテキストを設定する必要があります。GET_PROJECT_IDは、パブリック・ビューPA_FINPLAN_TYPES_Vで使用されるコンテキストのプロジェクトに対してPROJECT_IDを返します。このビューはOracle Project Connectで使用されます。
SET_PROJECT_IDは、パブリック・ビューPA_FINPLAN_TYPES_Vで使用されるパブリック変数G_PROJECT_IDを設定するために使用します。このビューはOracle Project Connectで使用されます。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。
SET_PROJECT_IDの必須パラメータは、次のとおりです。
P_PROJECT_ID
UPDATE_BUDGETは、プロジェクトおよび予算タイプ、またはプロジェクトおよび財務計画タイプのいずれかに対して、Oracle Projectsで草案または作業中バージョンを更新するために使用するPL/SQLプロシージャです。明細がすでに存在するかどうかに応じて、このプロシージャは既存の明細の更新や新規明細の挿入を行います。
このAPIは複合データ型を使用します。詳細は、「複合データ型を使用するAPI」を参照してください。
このセクションでは予算タイプのために作成されるバージョンと、このプロシージャを使用するためのルールおよび財務計画タイプのための一般ビジネス・ルールを説明します。
UPDATE_BUDGETを使用して草案または作業中バージョンを更新したら、プロシージャBASELINE_BUDGETを呼び出す前にデータを保存します。(基本編成を作成するには、事前に作業中バージョンの承認が必要になる場合があります。)
草案または作業中バージョンのみ更新できます。発行済または基本編成バージョンを更新することはできません。自動基本編成機能が使用可能になっている場合、承認済収益予算作業中バージョンを更新することはできません。
明細に関しては、既存の明細の更新または明細の追加を行う場合のみ、このプロシージャを使用できます。既存の明細を削除するには、プロシージャDELETE_BUDGET_LINEを使用します。
Oracle ProjectsはOracle Projectsのシステムに保存された情報と特定の情報間のリンクを次のように確立します。Oracle Projects識別コードのかわりに次のパラメータを使用できます。
P_PA_PROJECT_IDへのリンクはP_PM_PROJECT_REFERENCEです。
P_FIN_PLAN_TYPE_IDへのリンクはP_FIN_PLAN_TYPE_NAMEです。
PA_TASK_IDへのリンクはPM_TASK_REFERENCEです。
RESOURCE_LIST_MEMBER_IDへのリンクはRESOURCE_ALIASです。
予算APIを呼び出す製品では、個別に製品コードを指定する必要があります。Oracle Projectsは製品コードを事前定義し、これらのコードを適切な仕入先に提供します。
バージョンが資源別にカテゴリ化されていない場合、次のパラメータのペアに値を指定する必要はありません。
RESOURCE_ALIASとRESOURCE_LIST_MEMBER_ID
バージョンが期間で期間分割されている場合、Oracle Projectsでは開始日または期間名によって明細が識別されます。そのため、明細の開始日や期間名を変更することはできません。
PAまたはGL期間で期間分割されているバージョンには、次のルールが適用されます。
パラメータPERIOD_NAMEに有効な値が指定されている場合、このプロシージャは指定期間の明細を更新します。
バージョンがPA期間で期間分割されている場合、パラメータPERIOD_NAMEに指定された値をPA期間にマップする必要があります。同様に、バージョンがGL期間で期間分割されている場合、PERIOD_NAMEに指定された値をGL期間にマップする必要があります。
PERIOD_NAMEに指定された値が無効な場合、プロシージャは異常終了します。
パラメータBUDGET_START_DATEおよびパラメータPERIOD_NAMEに値が指定されている場合、プロシージャはPERIOD_NAMEを使用して期間を決定します。
パラメータPERIOD_NAMEに値が指定されていない場合、プロシージャはパラメータBUDGET_START_DATEを使用して期間を決定します。
バージョンがPA期間で期間分割されている場合、パラメータBUDGET_START_DATEの値をPA期間の開始日にマップする必要があります。同様に、バージョンがGL期間で期間分割されている場合、パラメータBUDGET_START_DATEの値をGL期間の開始日にマップする必要があります。
Oracle Projectsで有効な期間名を決定できない場合、プロシージャは異常終了します。
パラメータBUDGET_START_DATEおよびパラメータPERIOD_NAMEに値が指定されていない場合、プロシージャは異常終了します。
付加フレックスフィールドが定義されている場合、これらをINパラメータとして渡すことができます。
ユーザー・インタフェースで予算タイプまたは財務計画タイプに対してバージョンを更新する際のビジネス・ルールはすべて、このプロシージャの使用時に適用できます。
次のパラメータは予算タイプの計画では使用されません。
P_FIN_PLAN_TYPE_ID
P_FIN_PLAN_TYPE_NAME
P_BUDGET_VERSION_NUMBER
P_VERSION_TYPE
TXN_CURRENCY_CODE
すべての通貨換算属性
このプロシージャを使用して予測予算タイプの予算バージョンまたは予算明細を更新することはできません。
予算入力方法での定義に従ってタスク別に計画する場合のみ、パラメータPA_TASK_IDまたはPM_TASK_REFERENCEに値を指定します。
予算入力方法での定義に従ってPAまたはGL期間別に計画する場合のみ、パラメータPERIOD_NAMEに値を指定します。
予算情報を指定するタスク・レベルは、予算入力方法で指定されたレベルに対応します。たとえば、予算を最下位タスク・レベルでのみ入力できるように予算入力方法で指定されている場合、このプロシージャは最下位タスクのみを渡します。
次の表に示すように、予算入力方法(BEM)によって特定のフィールドの入力が制限されている場合は、対応するパラメータに値を指定しないでください。
BEM設定 | 関連パラメータ |
---|---|
「原価数量」は入力不可 | quantity |
「直接費」は入力不可 | raw_cost |
「総原価」は入力不可 | burdened_cost |
「収益数量」は入力不可 | quantity |
「収益」は入力不可 | revenue |
プロジェクトおよび予算タイプの予算管理が使用可能になっている場合、そのプロジェクトに関連付けられた元帳で定義された直近の予算引当年度より後のGL期間に対して予算明細の更新や追加は行えません。
次のパラメータは財務計画タイプの計画では使用されません。
P_BUDGET_TYPE_CODE
パラメータP_BUDGET_VERSION_NUMBERに値が指定されていない場合、このプロシージャは現行作業中バージョンの明細を更新します。
予算または予測の計画レベルでの定義に従ってタスク別に計画する場合のみ、パラメータPA_TASK_IDまたはPM_TASK_REFERENCEに値を指定できます。
計画情報を指定するタスク・レベルは、予算または予測バージョンの計画レベルで指定されたレベルに対応します。たとえば、予算または予測を最上位タスク・レベルで入力できるように計画レベルで指定されている場合、このプロシージャは最上位タスクおよびプロジェクト・レベルの予算および予測金額のみを渡します。
次の条件下では、このプロシージャを使用して作業中バージョンを更新することはできません。
初期基本編成後の編集を許可するオプションが財務計画タイプで使用可能でない場合、基本編成作成後に作業中バージョンは変更できません。
予算または予測バージョンが他のユーザーによってロックされているか、処理のためにロックされている場合
予算または予測バージョンに処理エラーがある場合
変更文書バージョン
組織予測計画タイプに対するバージョン
作業計画バージョン
次の表に示すように、金額入力オプションによって特定のフィールドの入力が制限されている場合は、対応するパラメータに値を指定しないでください。このような場合、指定した金額入力オプションを使用して予算または予測が作成され、対応する数量と金額の編集は許可されません。
金額入力オプションの設定 | 関連パラメータ |
---|---|
「原価数量」は入力不可 | quantity(バージョンが原価専用の場合に使用) |
「収益数量」は入力不可 | quantity(バージョンが収益専用の場合に使用) |
「数量」は入力不可 | quantity(原価と収益が同じバージョンでまとめて計画されている場合に使用) |
「直接費」は入力不可 | raw_cost |
「総原価」は入力不可 | burdened_cost |
「収益」は入力不可 | revenue |
パラメータRAW_COSTおよびBURDENED_COSTの値は、財務計画タイプによって原価計画、あるいは同じバージョンにまとめた原価および収益計画が許可されている予算または予測に対してのみ指定できます。
パラメータREVENUEの値は、財務計画タイプによって収益計画、あるいは同じバージョンにまとめた原価および収益計画が許可されている予算または予測に対してのみ指定できます。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。このプロシージャの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
このプロシージャでバージョンと明細を識別するパラメータは、次のとおりです。
P_PA_PROJECT_ID
P_BUDGET_TYPE_CODE
P_FINPLAN_TYPE_ID
P_VERSION_TYPE
P_BUDGET_VERSION_NUMBER
次の表に、パラメータ表に示されたパラメータP_BUDGET_LINES_INのデータ構造を説明します。
次の表内でアスタリスク(*)の付いたパラメータ名は、バージョンと明細を識別するものです。
名称 | 使用 | タイプ | 必須であるか | 説明 |
---|---|---|---|---|
PA_TASK_ID* | IN | NUMBER | No | Oracle Projects内のタスクの識別子 |
PM_TASK_REFERENCE* | IN | VARCHAR2 (30) | No | 外部システム内のタスクを一意に識別する参照コード |
RESOURCE_ALIAS* | IN | VARCHAR2 (80) | No | 外部システム内のタスクを一意に識別する資源の別名 |
RESOURCE_LIST _MEMBER_ID* | IN | NUMBER | No | 資源の識別コード |
TXN_CURRENCY_CODE* | IN | VARCHAR2 (15) | No | 財務計画通貨識別子。複数の取引通貨で計画する場合に必須 |
PERIOD_NAME* | IN | VARCHAR2 (30) | No | GLまたはPA期間名 |
BUDGET_START_DATE* | IN | DATE | No | 予算明細の開始日 |
BUDGET_END_DATE* | IN | DATE | No | 予算明細の終了日 |
QUANTITY | IN | NUMBER | No | 予算数量 |
RAW_COST | IN | NUMBER | No | 予算直接費金額 |
BURDENED_COST | IN | NUMBER | No | 予算総原価金額 |
REVENUE | IN | NUMBER | No | 予算収益額 |
CHANGE_REASON_CODE | IN | VARCHAR2 (30) | No | 明細の変更事由を識別するコード |
DESCRIPTION | IN | VARCHAR2 (255) | No | 明細摘要 |
PROJFUNC_COST_RATE_TYPE | IN | VARCHAR2 (30) | No | 財務計画タイプのプロジェクト機能通貨原価レート・タイプ |
PROJFUNC_COST_RATE_DATE_TYP | IN | VARCHAR2 (30) | No | 財務計画タイプのプロジェクト機能通貨原価レート基準日タイプ |
PROJFUNC_COST_RATE_DATE | IN | DATE | No | 財務計画タイプのプロジェクト機能通貨原価レート基準日 |
PROJFUNC_COST_EXCHANGE_RATE | IN | NUMBER | No | 財務計画タイプのプロジェクト機能通貨原価換算レート |
PROJFUNC_REV_RATE_TYPE | IN | VARCHAR2 (30) | No | 財務計画タイプのプロジェクト機能通貨収益レート・タイプ |
PROJFUNC_REV_RATE_DATE_TYP | IN | VARCHAR (30) | No | 財務計画タイプのプロジェクト機能通貨収益レート基準日タイプ |
PROJFUNC_REV_RATE_DATE | IN | DATE | No | 財務計画タイプのプロジェクト機能通貨収益レート基準日 |
PROJFUNC_REV_EXCHANGE_RATE | IN | NUMBER | No | 財務計画タイプのプロジェクト機能通貨収益換算レート |
PROJECT_COST_RATE_TYPE | IN | VARCHAR2 (30) | No | 財務計画タイプのプロジェクト通貨原価レート・タイプ |
PROJECT_COST_RATE_DATE_TYP | IN | VARCHAR2 (30) | No | 財務計画タイプのプロジェクト通貨原価レート基準日タイプ |
PROJECT_COST_RATE_DATE | IN | DATE | No | 財務計画タイプのプロジェクト通貨原価レート基準日 |
PROJECT_COST_EXCHANGE_RATE | IN | NUMBER | No | 財務計画タイプのプロジェクト通貨原価換算レート |
PROJECT_REV_RATE_TYPE | IN | VARCHAR2 (30) | No | 財務計画タイプのプロジェクト通貨収益レート・タイプ |
PROJECT_REV_RATE_DATE_TYP | IN | VARCHAR2 (30) | No | 財務計画タイプのプロジェクト通貨収益レート基準日タイプ |
PROJECT_REV_RATE_DATE | IN | DATE | No | 財務計画タイプのプロジェクト通貨収益レート基準日 |
PROJECT_REV_EXCHANGE_RATE | IN | NUMBER | No | 財務計画タイプのプロジェクト通貨収益換算レート |
PM_PRODUCT_CODE | IN | VARCHAR2 (30) | No | 外部システムの仕入先の製品コード |
PM_BUDGET_LINE_REFERENCE | IN | VARCHAR2 (30) | No | クライアント側の予算明細を識別する参照コード |
ATTRIBUTE_CATEGORY | IN | VARCHAR2 (30) | No | 付加フレックスフィールド用 |
ATTRIBUTE1〜ATTRIBUTE15 | IN | VARCHAR2 (150) | No | 予算明細付加フレックスフィールド |
次の表に、パラメータ表に示されたパラメータP_BUDGET_LINES_OUTのデータ構造を説明します。
名称 | 使用 | タイプ | 必須であるか | 説明 |
---|---|---|---|---|
RETURN_STATUS | IN | VARCHAR2(1) | No | 戻りステータス |
UPDATE_BUDGET_LINEは、プロジェクトおよび予算タイプ、またはプロジェクトおよび財務計画タイプのいずれかに対して、Oracle Projectsで草案または作業中バージョンの明細を更新するために使用するPL/SQLプロシージャです。
このセクションでは予算タイプのために作成されるバージョンと、このプロシージャを使用するためのルールおよび財務計画タイプのための一般ビジネス・ルールを説明します。
UPDATE_BUDGET_LINEを使用して草案または作業中バージョンの明細を更新したら、プロシージャBASELINE_BUDGETを呼び出す前にデータを保存します。(基本編成を作成するには、事前に作業中バージョンの承認が必要になる場合があります。)
草案または作業中バージョンの明細のみを更新できます。発行済または基本編成バージョンの明細を更新することはできません。自動基本編成機能が使用可能になっている場合、承認済収益予算作業中バージョンの明細を更新することはできません。
Oracle ProjectsはOracle Projectsのシステムに保存された情報と特定の情報間のリンクを次のように確立します。Oracle Projects識別コードのかわりに次のパラメータを使用できます。
P_PA_PROJECT_IDへのリンクはP_PM_PROJECT_REFERENCEです。
P_FIN_PLAN_TYPE_IDへのリンクはP_FIN_PLAN_TYPE_NAMEです。
P_PA_TASK_IDへのリンクはP_PM_TASK_REFERENCEです。
P_RESOURCE_LIST_MEMBER_IDへのリンクはP_RESOURCE_ALIASです。
予算APIを呼び出す製品では、個別に製品コードを指定する必要があります。Oracle Projectsは製品コードを事前定義し、これらのコードを適切な仕入先に提供します。
バージョンが資源別にカテゴリ化されていない場合、次のパラメータのペアに値を指定する必要はありません。
P_RESOURCE_ALIASとP_RESOURCE_LIST_MEMBER_ID
バージョンが期間で期間分割されている場合、Oracle Projectsでは開始日または期間名によって明細が識別されます。そのため、明細の開始日や期間名を変更することはできません。
PAまたはGL期間で期間分割されているバージョンには、次のルールが適用されます。
パラメータP_PERIOD_NAMEに有効な値が指定されている場合、このプロシージャは指定期間の明細を更新します。
バージョンがPA期間で期間分割されている場合、パラメータP_PERIOD_NAMEに指定された値をPA期間にマップする必要があります。同様に、バージョンがGL期間で期間分割されている場合、P_PERIOD_NAMEに指定された値をGL期間にマップする必要があります。
P_PERIOD_NAMEに指定された値が無効な場合、プロシージャは異常終了します。
パラメータP_BUDGET_START_DATEおよびパラメータP_PERIOD_NAMEに値が指定されている場合、プロシージャはP_PERIOD_NAMEを使用して期間を決定します。
パラメータP_PERIOD_NAMEに値が指定されていない場合、プロシージャはパラメータP_BUDGET_START_DATEを使用して期間を決定します。
バージョンがPA期間で期間分割されている場合、パラメータP_BUDGET_START_DATEの値をPA期間の開始日にマップする必要があります。同様に、バージョンがGL期間で期間分割されている場合、パラメータP_BUDGET_START_DATEの値をGL期間の開始日にマップする必要があります。
Oracle Projectsで有効な期間名を決定できない場合、プロシージャは異常終了します。
パラメータP_BUDGET_START_DATEおよびパラメータP_PERIOD_NAMEに値が指定されていない場合、プロシージャは異常終了します。
付加フレックスフィールドが定義されている場合、これらをINパラメータとして渡すことができます。
ユーザー・インタフェースで予算タイプまたは財務計画タイプに対して明細を更新する際のビジネス・ルールはすべて、このプロシージャの使用時に適用できます。
次のパラメータは予算タイプの計画では使用されません。
P_FIN_PLAN_TYPE_ID
P_FIN_PLAN_TYPE_NAME
P_VERSION_NUMBER
P_VERSION_TYPE
P_CURRENCY_CODE
すべての通貨換算属性
このプロシージャを使用して予測予算タイプの予算明細を更新することはできません。
予算入力方法での定義に従ってタスク別に計画する場合のみ、パラメータP_PA_TASK_IDまたはP_PM_TASK_REFERENCEに値を指定します。
予算入力方法での定義に従ってPAまたはGL期間別に計画する場合のみ、パラメータP_PERIOD_NAMEに値を指定します。
予算情報を指定するタスク・レベルは、予算入力方法で指定されたレベルに対応します。たとえば、予算を最下位タスク・レベルでのみ入力できるように予算入力方法で指定されている場合、このプロシージャは最下位タスクのみを渡します。
次の表に示すように、予算入力方法(BEM)によって特定のフィールドの入力が制限されている場合は、対応するパラメータに値を指定しないでください。
BEM設定 | 関連パラメータ |
---|---|
「原価数量」は入力不可 | p_quantity |
「直接費」は入力不可 | p_raw_cost |
「総原価」は入力不可 | p_burdened_cost |
「収益数量」は入力不可 | p_quantity |
「収益」は入力不可 | p_revenue |
プロジェクトおよび予算タイプの予算管理が使用可能になっている場合、そのプロジェクトに関連付けられた元帳で定義された直近の予算引当年度より後のGL期間に対して予算明細の更新や追加は行えません。
次のパラメータは財務計画タイプの計画では使用されません。
P_BUDGET_TYPE_CODE
パラメータP_VERSION_NUMBERに値が指定されていない場合、このプロシージャは現行作業中バージョンの明細を更新します。
予算または予測の計画レベルでの定義に従ってタスク別に計画する場合のみ、パラメータP_PA_TASK_IDまたはP_PM_TASK_REFERENCEに値を指定できます。
計画情報を指定するタスク・レベルは、予算または予測バージョンの計画レベルで指定されたレベルに対応します。たとえば、予算または予測を最上位タスク・レベルで入力できるように計画レベルで指定されている場合、このプロシージャは最上位タスクおよびプロジェクト・レベルの予算および予測金額のみを渡します。
次の条件下では、このプロシージャを使用して作業中バージョンを更新することはできません。
初期基本編成後の編集を許可するオプションが財務計画タイプで使用可能でない場合、基本編成作成後に作業中バージョンは変更できません。
予算または予測バージョンが他のユーザーによってロックされているか、処理のためにロックされている場合
予算または予測バージョンに処理エラーがある場合
変更文書バージョン
組織予測計画タイプに対するバージョン
作業計画バージョン
次の表に示すように、金額入力オプションによって特定のフィールドの入力が制限されている場合は、対応するパラメータに値を指定しないでください。このような場合、指定した金額入力オプションを使用して予算または予測が作成され、対応する数量と金額の編集は許可されません。
金額入力オプションの設定 | 関連パラメータ |
---|---|
「原価数量」は入力不可 | p_quantity(バージョンが原価専用の場合に使用) |
「収益数量」は入力不可 | p_quantity(バージョンが収益専用の場合に使用) |
「数量」は入力不可 | p_quantity(原価と収益が同じバージョンでまとめて計画されている場合に使用) |
「直接費」は入力不可 | p_raw_cost |
「総原価」は入力不可 | p_burdened_cost |
「収益」は入力不可 | p_revenue |
パラメータP_RAW_COSTおよびP_BURDENED_COSTの値は、財務計画タイプによって原価計画、あるいは同じバージョンにまとめた原価および収益計画が許可されている予算または予測に対してのみ指定できます。
パラメータP_REVENUEの値は、財務計画タイプによって収益計画、あるいは同じバージョンにまとめた原価および収益計画が許可されている予算または予測に対してのみ指定できます。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。このプロシージャの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
このプロシージャでバージョンと明細を識別するパラメータは、次のとおりです。
P_PA_PROJECT_ID
P_BUDGET_TYPE_CODE
P_FIN_PLAN_TYPE_ID
P_VERSION_TYPE
P_VERSION_NUMBER
P_PA_TASK_ID
P_RESOURCE_LIST_MEMBER_ID
P_CURRENCY_CODE
P_BUDGET_START_DATE
P_PERIOD_NAME
CLEAR_BUDGETは、初期化ステップ中に設定されたグローバル・データ構造を消去するために使用するロード-実行-フェッチ・プロシージャです。
CLEAR_CALCULATE_AMOUNTSは、ロード-実行-フェッチ・プロシージャCALCULATE_AMOUNTSで使用されるグローバル・データ構造をリセットするために使用するロード-実行-フェッチ・プロシージャです。プロシージャCALCULATE_AMOUNTSは、CLEAR_CALCULATE_AMOUNTSを呼び出して、計画バージョンの計算済金額をフェッチするために使用されるデータ構造を初期化します。
.
EXECUTE_CALCULATE_AMOUNTSは、特定のプロジェクトおよび予算タイプ、または財務計画タイプに対して既存の予算明細を使用して直接費、総原価および収益額を計算するために使用するロード-実行-フェッチ・プロシージャです。予算明細ごとに、このAPIはAPI FETCH_CALCULATE_AMOUNTSで読取り可能なグローバルに書き込みます。
次のパラメータは、財務計画タイプに作成された予算専用です。
P_BUDGET_VERSION_ID
P_FIN_PLAN_TYPE_ID
P_FIN_PLAN_TYPE_NAME
P_VERSION_TYPE
P_BUDGET_VERSION_NUMBER
このAPIによってPA_CLIENT_EXTN_BUDGET機能拡張が呼び出されるため、必要な金額を計算するように機能拡張を変更する必要があります。
対応する金額を再計算するには、計算フラグごとに大文字の「Y」を渡す必要があります。
更新ステータスにかかわらず、このAPIは読み取る予算明細ごとに1行の金額を返します。
プロジェクトの予算明細をこのAPIから生成された計算済金額で更新するには、P_UPDATE_DB_FLAGを大文字の「Y」に設定する必要があります。
このAPIは、OUTパラメータP_TOT_BUDGET_LINES_CALCULATEDで処理された予算明細の合計数を返します。この合計数により、ループ内でFETCH_CALCULATE_AMOUNTSを呼び出す回数が決まります。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。EXECUTE_CALCULATE_AMOUNTSの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
P_BUDGET_TYPE_CODE
EXECUTE_CREATE_DRAFT_BUDGETは、ロード・プロセス中にグローバル表に格納されたデータを使用して予算とその予算明細を作成するために使用します。
次のパラメータは、財務計画タイプでの計画に使用します。予算タイプでの計画には使用しません。
計画タイプ識別子および計画タイプ名のパラメータ
バージョン・タイプのパラメータ
P_TIME_PHASED_CODE
P_PLAN_IN_MULTI_CURR_FLAG
通貨属性
直接費、総原価、収益、数量計画、現行作業中バージョンの作成、現行作業中バージョンの置換用のフラグ
P_USING_RESOURCE_LISTS_FLAG
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。EXECUTE_CREATE_DRAFT_BUDGETの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
P_BUDGET_TYPE_CODE
P_ENTRY_METHOD_CODE
EXECUTE_CREATE_DRAFT_FINPLANは、ロード・プロセス中にグローバル表に格納されたデータを使用して予算および予測を作成します。このプロシージャを呼び出す前に、LOAD_RESOURCE_INFOを呼び出して、予算および予測明細の作成に必要な数量および金額とともに資源情報をロードする必要があります。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。EXECUTE_CREATE_DRAFT_FINPLANの必須パラメータは次のとおりです。
P_PM_PRODUCT_CODE
P_BUDGET_VERSION_NAME
EXECUTE_UPDATE_BUDGETは、ロード・プロセス中にグローバル表内に格納されたデータを使用して予算とその予算明細を更新するために使用するロード-実行-フェッチ・プロシージャです。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。EXECUTE_UPDATE_BUDGETの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
P_BUDGET_TYPE_CODE
FETCH_BUDGET_LINEは、グローバルPL/SQL表から予算明細の作成中に返された戻りステータスを取得するために使用するロード-実行-フェッチ・プロシージャです。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。FETCH_BUDGET_LINEの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_LINE_INDEX
FETCH_CALCULATE_AMOUNTSは、API EXECUTE_CALCULATE_AMOUNTSによって更新されたグローバル・レコードから予算明細別に直接費、総原価および収益額を取得するために使用するロード-実行-フェッチ・プロシージャです。
このAPIの呼出しは、API EXECUTE_CALCULATE_AMOUNTSを使用して計算済予算明細ごとにループ内で実行します。API EXECUTE_CALCULATE_AMOUNTSがP_TOT_BUDGET_LINES_CALCULATEDに対して返す値によって、このAPIを呼び出す回数が決まります。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。FETCH_CALCULATE_AMOUNTSの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
INIT_BUDGETは、他のロード-実行-フェッチ・プロシージャによってOracle Projectsで新規予算草案の作成または既存の予算草案の更新を行うために使用されるグローバル・データ構造を設定するために使用するロード-実行-フェッチ・プロシージャです。
INIT_CALCULATE_AMOUNTSは、ロード-実行-フェッチAPI CALCULATE_AMOUNTSで使用されるグローバル・データ構造を設定するために使用するロード-実行-フェッチ・プロシージャです。
LOAD_BUDGET_LINEは、グローバルPL/SQL表に予算明細をロードするために使用するロード-実行-フェッチ・プロシージャです。
次のパラメータは、財務計画タイプでの計画に使用します。予算タイプでの計画には使用しません。
P_TXN_CURRENCY_CODE
通貨属性
P_CHANGE_REASON_CODE
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。LOAD_BUDGET_LINEの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_TXN_CURRENCY_CODE
EXECUTE_CREATE_DRAFT_FINPLANを呼び出して予算または予測の作成に必要な資源情報をロードする前に、LOAD_RESOURCE_INFOを呼び出します。このプロシージャは、EXECUTE_CREATE_DRAFT_FINPLANで使用されるグローバルPL/SQL表に、資源情報を要約金額とともにロードします。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。LOAD_RESOURCE_INFOに必須パラメータはありません。
次の例では、Oracle Projectsと外部システム内の予算および予算明細情報との間にインタフェースを作成する方法を説明します。会社のビジネス・ニーズに応じて、予算APIの実装の複雑度は、ここに示す使用例とは若干異なる場合があります。
この例を参照する際には、このマニュアル内の他の情報も必要に応じて参照してください。
予算APIの詳細な説明は、「予算API」を参照してください。
Oracle Projects APIの大部分では、入出力パラメータの標準セットが使用されます。「標準APIパラメータ」を参照してください。
ロード-実行-フェッチAPIを使用して予算を作成するPL/SQLコードの例は、「ロード-実行-フェッチAPIを使用した予算の作成」を参照してください。
複合データ型を使用するAPIを使用して予算を作成するPL/SQLコードの例は、「複合データ型APIを使用した予算の作成」を参照してください。
Oracle Projectsデータへのアクセス時に正しいセキュリティを確保するには、「セキュリティ要件」のステップに従ってください。
Oracle Projectsデータベースに予算明細を送信する前に、予算および予算明細が他のOracle Projectsデータにリンクされる方法に影響する決定をいくつか行う必要があります。この項では、独自のモデリングに使用できるSQL SELECT文のサンプルを示します。以降のページでは、選択値と予算または予算明細情報との間の関係を説明します。この関係を理解すると、予算APIおよび予算明細APIに渡すパラメータ値を決定する際に役立ちます。
有効な予算タイプを選択します。Oracle Projectsでは、次の表に示す予算タイプが事前定義されています。
予算タイプ・コード | 予算タイプ |
---|---|
AC | 承認済原価予算 |
AR | 承認済収益予算 |
FC | 予測原価予算 |
FR | 予測収益予算 |
次のSQL文は、予算タイプ情報を取得します。
SELECT code,
name
FROM pa_budget_types_v
選択値CODEは、予算パラメータP_BUDGET_TYPE_CODEに関連しています。
原価予算と収益予算には異なる予算金額が含まれている場合があるため、予算タイプの予算金額コードを取得する必要があります。次のSQL文は、適切な予算金額コードを取得します。
SELECT budget_amount_code
FROM pa_budget_types
WHERE budget_type_code = &code
この文は、原価予算を選択している場合はC、収益予算を選択している場合はRを返します。次の表に、各予算タイプで保持可能な金額と、LOAD_BUDGET_LINEのパラメータとの関連を示します。
金額 | LOAD_BUDGET_LINEパラメータ |
---|---|
直接費 | P_RAW_COST |
総原価 | P_BURDENED_COST |
原価数量 | P_QUANTITY |
収益 | P_REVENUE |
収益数量 | P_QUANTITY |
Oracle Projectsでは、次の表に示す予算入力方法が事前定義されています。
予算入力方法コード | 予算入力方法 |
---|---|
PA_LOWEST_TASK_BY_PA_PERIOD | 資源別にカテゴリ化された、最下位タスクおよびPA期間ごと |
PA_LOWEST_TASK_BY_GL_PERIOD | 資源別にカテゴリ化された、最下位タスクおよびGL期間ごと |
PA_LOWEST_TASK_BY_DATE_RANGE | 資源別にカテゴリ化された、最下位タスクおよび日付範囲ごと |
次のSQL文は、予算入力方法を取得します。
SELECT code
, name
, categorization_code
, entry_level_code
, entry_level_name
, time_phased_type_code
, time_phased_type_name
FROM pa_budget_entry_methods_v
選択値CODEは、予算パラメータP_ENTRY_METHOD_CODEに関連しています。
後にその他の選択値を使用して、Oracle Projectsから他の予算関連データを取得できます。他の予算関連フィールドに可能な値は、次のとおりです。
CATEGORIZATION_CODE: R 資源別にカテゴリ化、N 未カテゴリ
ENTRY_LEVEL_CODE: P プロジェクト・レベルでの予算編成、T 最上位タスク・レベルでの予算編成、L 最下位タスク・レベルでの予算編成、M 最上位タスクと最下位タスク両方の(混合)レベルでの予算編成
TIME_PHASED_TYPE_CODE: P PA期間別予算明細、G GL期間別予算明細、R 日付範囲別予算明細、N 期間分割されていない予算明細
資源別にカテゴリ化された予算入力方法を選択した場合は、予算に対して資源リストを選択する必要があります。次のSQL文は資源リスト情報を取得します。
SELECT resource_list_id
, resource_list_name
, description
FROM pa_qry_resource_lists_v
次の表に、特定の選択値と予算パラメータとの間の関係を示します。2つの値のうち1つのみを渡してください。
選択された値 | 予算パラメータ |
---|---|
RESOURCE_LIST_ID | P_RESOURCE_LIST_ID |
RESOURCE_LIST_NAME | P_RESOURCE_LIST_NAME |
パラメータP_DESCRIPTIONは、予算の摘要を保持します。ビューPA_BUDGET_CHANGE_REASON_Vを使用して、予算に対する変更すべての説明を渡してください。次のSQL文は、予算変更の事由を取得します。
SELECT code,
name
FROM pa_budget_change_reason_v
次の表に、特定の選択値と予算パラメータとの間の関係を示します。
選択された値 | 予算パラメータ |
---|---|
CODE | P_CHANGE_REASON_CODE |
DESCRIPTION | P_DESCRIPTION |
予算データに対して行った選択は、予算明細データに大きく影響します。これらの影響について、以降のページに説明します。
前述のように、原価予算には直接費、総原価および原価数量金額を含めることができますが、収益予算には収益および収益数量金額のみを含めることができます。
予算入力レベルに応じて、予算明細には適切なTASK_IDまたはTASK_REFERENCEを含める必要があります。プロジェクト・レベルの予算編成では、タスク関連パラメータは渡しません。タスク・レベルの予算編成(最上位、最下位、または混合)では、次のSQL文を使用して有効なタスク値を取得できます。
最上位タスク・レベルでの予算
SELECT task_id
, pm_task_reference
, task_number
, task_name
FROM pa_tasks
WHERE project_id = &project_id
AND parent_task_id IS NULL
最下位タスク・レベルでの予算
SELECT task_id
, pm_task_reference
, task_number
, task_name
FROM pa_tasks tasks1
WHERE tasks1.project_id = &project_id
and not EXISTS (select NULL
from pa_tasks tasks2
where tasks1.project_id = tasks2.project_id
and tasks1.task_id = tasks2.parent_task_id)
最上位および最下位タスク・レベルでの予算
SELECT task_id
, pm_task_reference
, task_number
, task_name
, decode(nvl(parent_task_id,'1'),1,'Y','N') TOP_TASK
FROM pa_tasks tasks1
WHERE tasks1.project_id = &project_id
and not EXISTS (select NULL
from pa_tasks tasks2
where tasks1.project_id = tasks2.project_id
and tasks1.task_id = tasks2.parent_task_id)
or (tasks1.parent_task_id IS NULL
and tasks1.project_id = &project_id )
次の表に、特定の選択値と予算明細パラメータとの間の関係を示します。2つの値のうち1つのみを渡してください。
選択された値 | 予算明細パラメータ |
---|---|
TASK_ID | P_PA_TASK_ID |
PM_TASK_REFERENCE | P_PM_TASK_REFERENCE |
予算入力方法が資源別にカテゴリ化されており、資源リストを選択している場合、予算明細には資源リストに関連付けられた個々の資源を含める必要があります。次のSQL文を使用して資源リスト・メンバー情報を取得できます。
SELECT resource_list_member_id
, alias
, employee_first_name
, employee_last_name
FROM pa_query_res_list_members_v
WHERE resource_list_id = &resource_list_id
次の表に、特定の選択値と予算明細パラメータとの間の関係を示します。2つの値のうち1つのみを渡してください。
選択された値 | 予算明細パラメータ |
---|---|
RESOURCE_LIST_MEMBER_ID | P_RESOURCE_LIST_MEMBER_ID |
ALIAS | P_RESOURCE_ALIAS |
次の表に示すように、予算入力方法をどのように期間分割するかによって、どの予算明細パラメータが渡された値を受け入れるかが決まります。
期間分割単位 | 値を受け入れるパラメータ(START_DATE、END_DATEおよびPERIOD_NAME) |
---|---|
期間分割なし | なし |
日付範囲 | START_DATEおよびEND_DATE |
PAまたはGL期間 | START_DATEおよびEND_DATEまたはPERIOD_NAME |
期間分割予算編成を使用する場合は、次のSQL文を使用して適切な日付情報を取得できます。
期間名
SELECT period_name
FROM pa_budget_periods_v
WHERE period_type_code = &time_phased_type_code
開始日と終了日
SELECT period_start_date
, period_end_date
FROM pa_budget_periods_v
WHERE period_type_code = &time_phased_type_code
次の表に、特定の選択値と予算明細パラメータとの間の関係を示します。PERIOD_NAME、またはPERIOD_START_DATEとPERIOD_END_DATEの両方の値を渡せます。
選択された値 | 予算明細パラメータ |
---|---|
PERIOD_NAME | P_PERIOD_NAME |
PERIOD_START_DATE | P_BUDGET_START_DATE |
PERIOD_END_DATE | P_BUDGET_END_DATE |
予算明細の摘要を渡す必要はありません。
外部システムによって複合データ型パラメータがサポートされている場合(Oracle PL/SQLバージョン2.3以上など)、CREATE_DRAFT_BUDGETおよびUPDATE_BUDGET APIを直接呼び出せます。
外部システムによっては、複合データ型を使用するAPIを呼び出せないものもあります。複合データ型をサポートしないシステムは、補足的なロード-実行-フェッチAPIを呼び出す必要があります。ロード-実行-フェッチ・プロシージャには、初期化、ロード、実行、フェッチおよび消去カテゴリが含まれています。詳細は、「APIプロシージャ」を参照してください。
ロード・プロシージャによって予算および予算明細データがOracle Projectsデータベースに正常に移動されたら、プロシージャAPI EXECUTE_CREATE_DRAFT_BUDGETを呼び出して、グローバルPL/SQL表内の予算および予算明細データを処理します。
各Oracle Projects APIには、次の標準出力パラメータが含まれています。
P_RETURN_STATUSは、APIが正常に実行されたかどうかを示します。
P_MSG_COUNTは、APIの実行中に検出されたエラー数を示します。
APIで検出されたエラーが1つの場合、APIによってエラー・メッセージ・テキストが返されます。複数のエラーが検出された場合は、GET_MESSAGESを使用して、エラー・メッセージを取得します。詳細は、「GET_MESSAGES」を参照してください。
エラーが予算明細に関連する場合は、FETCH_BUDGET_LINEを使用してエラーの原因となっている明細を識別します。APIパラメータP_LINE_RETURN_STATUSは、その明細に対してE(ビジネス・ルール違反)またはU(予期せぬエラー)を返すことで明細を識別します。(戻りステータスの詳細は、「標準APIパラメータ」を参照してください。)その他の理由でFETCH_BUDGET_LINEを使用すると、エラーNO_DATA_FOUNDが返されます。
フェッチ・プロシージャを実行してエラー・メッセージを取得した後で、API CLEAR_BUDGETを呼び出してデータベースへの変更を保存するかロールバックすることで、ロード-実行-フェッチ・プロセスを終了します。
次のサンプルPL/SQLコードは、ロード-実行-フェッチAPIを使用して予算を作成するために使用できるスクリプトのサンプルです。
ロード-実行-フェッチAPIでは、標準データ型(VARCHAR2、NUMBERおよびDATE)のパラメータが使用されます。複合データ型は使用されません。複合データ型をサポートするツールまたは製品を使用して予算を作成する場合は、「複合データ型APIを使用した予算の作成」を参照してください。
DECLARE
––variables needed for API standard parameters
l_api_version_number NUMBER :=1.0;
l_commit VARCHAR2(1):= ’F’;
l_return_status VARCHAR2(1);
l_init_msg_list VARCHAR2(1);
l_msg_count NUMBER;
l_msg_data VARCHAR2(2000);
l_data VARCHAR2(2000);
l_msg_entity VARCHAR2(100);
l_msg_entity_index NUMBER;
l_msg_index NUMBER;
l_msg_index_out NUMBER;
l_encoded VARCHAR2(1);
i NUMBER;
a NUMBER;
––variables needed for Oracle Project specific parameters
l_pm_product_code VARCHAR2(10);
l_pa_project_id NUMBER;
l_pm_project_reference VARCHAR2(25);
l_budget_type_code VARCHAR2(30);
l_change_reason_code VARCHAR2(30);
l_description VARCHAR2(255);
l_entry_method_code VARCHAR2(30);
l_resource_list_name VARCHAR2(60);
l_resource_list_id NUMBER;
l_budget_lines_in pa_budget_pub.budget_line_in_tbl_type;
l_budget_lines_in_rec pa_budget_pub.budget_line_in_rec_type;
l_budget_lines_out pa_budget_pub.budget_line_out_tbl_type;
l_line_index NUMBER;
l_line_return_status VARCHAR2(1);
API_ERROR EXCEPTION;
BEGIN
––PRODUCT RELATED DATA
l_pm_product_code :=’SOMETHING’;
––BUDGET DATA
––l_pa_project_id:= 1138;
l_pm_project_reference := ’PROJECT_NAME’;
l_budget_type_code := ’AC’;
l_change_reason_code := ’ESTIMATING ERROR’;
l_description := ’New description –> 2’;
l_entry_method_code := ’PA_LOWEST_TASK_BY_DATE_RANGE’;
l_resource_list_id := 1014;
––BUDGET LINES DATA
a := 5;
FOR i IN 1..a LOOP
if i = 1 THEN
l_budget_lines_in_rec.pa_task_id := 2440;
l_budget_lines_in_rec.resource_list_member_id := 1401;
elsif i = 2 THEN
l_budget_lines_in_rec.resource_list_member_id := 1402;
l_budget_lines_in_rec.pa_task_id := 2443;
elsif i = 3 THEN
l_budget_lines_in_rec.resource_list_member_id := 1404;
l_budget_lines_in_rec.pa_task_id := 2446;
elsif i = 4 THEN
l_budget_lines_in_rec.resource_list_member_id := 1407;
l_budget_lines_in_rec.pa_task_id := 2449;
elsif i = 5 THEN
l_budget_lines_in_rec.resource_list_member_id := 1408;
l_budget_lines_in_rec.pa_task_id := 2452;
end if;
l_budget_lines_in_rec.quantity :=93;
l_budget_lines_in_rec.budget_start_date := ’05–MAY–95’;
l_budget_lines_in_rec.budget_end_date := ’09–MAY–95’;
l_budget_lines_in_rec.raw_cost :=300;
l_budget_lines_in(i) := l_budget_lines_in_rec;
END LOOP;
–––––––––––––––––––––––
––INIT_BUDGET
pa_budget_pub.init_budget;
–––––––––––––––––––––––
––LOAD_BUDGET_LINE
FOR i IN 1..a LOOP
pa_budget_pub.load_budget_line( p_api_version_number => l_api_version_number
,p_return_status => l_return_status
,p_pa_task_id => l_budget_lines_in(i).pa_task_id
,p_pm_task_reference => l_budget_lines_in(i).pm_task_reference
,p_resource_alias => l_budget_lines_in(i).resource_alias
,p_resource_list_member_id => l_budget_lines_in(i).resource_list_member_id
,p_budget_start_date => l_budget_lines_in(i).budget_start_date
,p_budget_end_date => l_budget_lines_in(i).budget_end_date
,p_period_name => l_budget_lines_in(i).period_name
,p_description => l_budget_lines_in(i).description
,p_raw_cost => l_budget_lines_in(i).raw_cost
,p_burdened_cost => l_budget_lines_in(i).burdened_cost
,p_revenue => l_budget_lines_in(i).revenue
,p_quantity => l_budget_lines_in(i).quantity );
END LOOP;
IF l_return_status != ’S’
THEN
RAISE API_ERROR;
END IF;
–––––––––––––––––––––––
––EXECUTE_CREATE_DRAFT_BUDGET
pa_budget_pub.execute_create_draft_budget
( p_api_version_number => l_api_version_number
,p_msg_count => l_msg_count
,p_msg_data => l_msg_data
,p_return_status => l_return_status
,p_pm_product_code => l_pm_product_code
,p_pa_project_id => l_pa_project_id
,p_pm_project_reference => l_pm_project_reference
,p_budget_type_code => l_budget_type_code
,p_change_reason_code => l_change_reason_code
,p_description => l_description
,p_entry_method_code => l_entry_method_code
,p_resource_list_name => l_resource_list_name
,p_resource_list_id => l_resource_list_id );
IF l_return_status != ’S’
THEN
null; ––RAISE API_ERROR;
END IF;
–––––––––––––––––––––––
––FETCH_LINE
FOR l_line_index in
1..PA_BUDGET_PUB.G_budget_lines_tbl_count LOOP
pa_budget_pub.fetch_budget_line( p_api_version_number => l_api_version_number
,p_return_status => l_return_status
,p_line_index => l_line_index
,p_line_return_status => l_line_return_status);
IF l_return_status != ’S’
OR l_line_return_status != ’S’
THEN
RAISE API_ERROR;
END IF;
END LOOP;
–––––––––––––––––––––––
––CLEAR_BUDGET
pa_budget_pub.clear_budget;
IF l_return_status != ’S’
THEN
RAISE API_ERROR;
END IF;
–––––––––––––––––––––––
––HANDLE EXCEPTIONS
EXCEPTION
WHEN API_ERROR THEN
for i in 1..l_msg_count loop
pa_interface_utils_pub.get_messages (p_msg_data => l_msg_data
,p_data => l_data
,p_msg_count => l_msg_count
,p_msg_index_out => l_msg_index_out );
dbms_output.put_line (’error mesg ’||l_data);
dbms_output.put_line (’error mesg ’||l_msg_data);
end loop;
WHEN OTHERS THEN
for i in 1..l_msg_count loop
pa_interface_utils_pub.get_messages (p_msg_data => l_msg_data
,p_data => l_data
,p_msg_count => l_msg_count
,p_msg_index_out => l_msg_index_out );
dbms_output.put_line (’error mesg ’||l_data);
end loop;
END;
/
次のサンプルPL/SQLコードは、複合データ型を使用するAPI CREATE_DRAFT_BUDGETを使用して予算を作成するスクリプトです。複合データ型をサポートしないツールまたは製品を使用して予算を作成する場合は、「ロード-実行-フェッチAPIを使用した予算の作成」を参照してください。
DECLARE
––variables needed for API standard parameters
l_api_version_number NUMBER :=1.0;
l_commit VARCHAR2(1):= ’F’;
l_return_status VARCHAR2(1);
l_init_msg_list VARCHAR2(1);
l_msg_count NUMBER;
l_msg_data VARCHAR2(2000);
l_data VARCHAR2(2000);
l_msg_entity VARCHAR2(100);
l_msg_entity_index NUMBER;
l_msg_index NUMBER;
l_msg_index_out NUMBER;
l_encoded VARCHAR2(1);
i NUMBER;
a NUMBER;
––variables needed for Oracle Projects–specific parameters
l_pm_product_codeVARCHAR2(10);
l_pa_project_id NUMBER;
l_pm_project_reference VARCHAR2(25);
l_budget_type_code VARCHAR2(30);
l_version_name VARCHAR2(30);
l_change_reason_code VARCHAR2(30);
l_description VARCHAR2(255);
l_entry_method_code VARCHAR2(30);
l_resource_list_name VARCHAR2(60);
l_resource_list_id NUMBER;
l_budget_lines_inpa_budget_pub.budget_line_in_tbl_type;
l_budget_lines_in_rec pa_budget_pub.budget_line_in_rec_type;
l_budget_lines_out pa_budget_pub.budget_line_out_tbl_type;
l_line_index NUMBER;
l_line_return_status VARCHAR2(1);
API_ERROR EXCEPTION;
BEGIN
––PRODUCT RELATED DATA
l_pm_product_code :=’SOMETHING’;
––BUDGET DATA
l_pm_project_reference := ’PROJECT_NAME’;
l_budget_type_code := ’AC’; ’––AR’; ––
l_change_reason_code := ’ESTIMATING ERROR’;
l_description := ’New description 2’;
l_version_name := ’New version ’;
l_entry_method_code := ’PA_LOWEST_TASK_BY_DATE_RANGE’;
l_resource_list_id := 1014;
––BUDGET LINES DATA
a := 5;
FOR i IN 1..a LOOP
if i = 1 THEN
l_budget_lines_in_rec.pa_task_id := 2440;
l_budget_lines_in_rec.resource_list_member_id := 1401;
elsif i = 2 THEN
l_budget_lines_in_rec.resource_list_member_id := 1402;
l_budget_lines_in_rec.pa_task_id := 2443;
elsif i = 3 THEN
l_budget_lines_in_rec.resource_list_member_id := 1404;
l_budget_lines_in_rec.pa_task_id := 2446;
elsif i = 4 THEN
l_budget_lines_in_rec.resource_list_member_id := 1407;
l_budget_lines_in_rec.pa_task_id := 2449;
elsif i = 5 THEN
l_budget_lines_in_rec.resource_list_member_id := 1408;
l_budget_lines_in_rec.pa_task_id := 2452;
end if;
l_budget_lines_in_rec.quantity :=93;
l_budget_lines_in_rec.budget_start_date := ’05–MAY–95’;
l_budget_lines_in_rec.budget_end_date := ’09–MAY–95’;
l_budget_lines_in_rec.raw_cost :=300;
l_budget_lines_in(i) := l_budget_lines_in_rec;
END LOOP;
–––––––––––––––––––––––
––INIT_BUDGET
pa_budget_pub.init_budget;
–––––––––––––––––––––––
––CREATE_DRAFT_BUDGET
pa_budget_pub.create_draft_budget
( p_api_version_number => l_api_version_number
,p_msg_count => l_msg_count
,p_msg_data => l_msg_data
,p_return_status => l_return_status
,p_pm_product_code => l_pm_product_code
,p_pa_project_id => l_pa_project_id
,p_pm_project_reference => l_pm_project_reference
,p_budget_type_code => l_budget_type_code
,p_change_reason_code => l_change_reason_code
,p_budget_version_name => l_version_name
,p_description => l_description
,p_entry_method_code => l_entry_method_code
,p_resource_list_name => l_resource_list_name
,p_resource_list_id => l_resource_list_id
,p_budget_lines_in => l_budget_lines_in
,p_budget_lines_out => l_budget_lines_out );
IF l_return_status != ’S’
THEN
RAISE API_ERROR;
END IF;
–––––––––––––––––––––––
––CLEAR_BUDGET
pa_budget_pub.clear_budget;
IF l_return_status != ’S’
THEN
RAISE API_ERROR;
END IF;
–––––––––––––––––––––––
––HANDLE EXCEPTIONS
EXCEPTION
WHEN API_ERROR THEN
for i in 1..l_msg_count loop
pa_interface_utils_pub.get_messages (
p_msg_data => l_msg_data
,p_data => l_data
,p_msg_count => l_msg_count
,p_msg_index_out => l_msg_index_out );
dbms_output.put_line (’error mesg ’||l_data);
end loop;
WHEN OTHERS THEN
for i in 1..l_msg_count loop
pa_interface_utils_pub.get_messages (
p_msg_data => l_msg_data
,p_data => l_data
,p_msg_count => l_msg_count
,p_msg_index_out => l_msg_index_out );
dbms_output.put_line (’error mesg ’||l_data);
end loop;
END;
/
計画金額のリフレッシュAPIを使用すると、予算バージョン全体、または特定の計画資源に対してプロジェクトの換算レートまたは原価レートの一括リフレッシュを実行できます。このAPIの使用例を次に示します。
資材品目と財務品目に対する換算レートのリフレッシュ: 会社が使用する通貨換算レート予定表を変更する場合は、このAPIを使用してプロジェクトの資材品目と財務品目に対する換算レートをリフレッシュすることで、すべてのプロジェクト現行の計画取引金額を維持できます。
個人情報と機材に対する原価および請求レートのリフレッシュ: 会社が原価および請求レート予定表を更新する場合は、このAPIを使用してプロジェクトの個人情報と機材に対する原価および請求レートをリフレッシュすることで、すべてのプロジェクト現行の計画取引金額を維持できます。
ソース・プロジェクトから作成されたプロジェクトのレートのリフレッシュ: 定義済作業計画体系を持つソース・プロジェクトからプロジェクトを作成する場合、原価レートと請求レートはソース・プロジェクトからコピーされます。新規プロジェクトでは異なる原価または請求レート予定表を使用する場合や、異なる通貨換算オプションを持つ場合があります。このAPIを使用すると、新規作成されたプロジェクトのレートをリフレッシュできます。
作業計画から生成された財務計画のレートのリフレッシュ: 作業計画から財務計画を生成する場合、財務計画のレートは、ソース作業計画のレートになります。財務計画のレート設定を使用するには、財務計画のレートをリフレッシュする必要があります。
レートのリフレッシュ・プロシージャを使用すると、作業計画と財務計画の両方で換算レート、原価レートおよび請求レートをリフレッシュできます。プロシージャの内部名はpa_fp_calc_plan_pub.refresh_ratesです。このプロシージャは、パブリックAPIパッケージPA_FP_CALC_PLAN_PUB内にあります。
P_PROJECT_IDまたはP_PM_PROJECT_REFERENCEのいずれかに値を指定する必要があります。(これらのパラメータについては、「必須であるか」の列に「条件付き」と記載されています。)
P_UPDATE_PLAN_TYPEの値がWORKPLANである場合、パラメータP_STRUCTURE_VERSION_IDに値を指定する必要があります。
P_UPDATE_PLAN_TYPEの値がFINPLANである場合、P_BUDGET_VERSION_IDに値を指定するか、または次の4つのパラメータのすべてに値を指定する必要があります。
P_VERSION_TYPE
P_BUDGET_VERSION_NUMBER
P_FINPLAN_TYPE_ID
P_FINPLAN_TYPE_NAME
P_BUDGET_VERSION_IDが移入されている場合、他の4つのパラメータは無視されます。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。このプロシージャの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PM_PRODUCT_CODE
P_PROJECT_ID(条件付き -- 「ビジネス・ルール」を参照)
P_PM_PROJECT_REFERENCE(条件付き -- 「ビジネス・ルール」を参照)
P_UPDATE_PLAN_TYPE
P_STRUCTURE_VERSION_ID(条件付き -- 「ビジネス・ルール」を参照)
P_BUDGET_VERSION_ID(条件付き -- 「ビジネス・ルール」を参照)
P_BUDGET_VERSION_NUMBER(条件付き -- 「ビジネス・ルール」を参照)
P_VERSION_TYPE(条件付き -- 「ビジネス・ルール」を参照)
P_FINPLAN_TYPE_ID(条件付き -- 「ビジネス・ルール」を参照)
P_FINPLAN_TYPE_NAME(条件付き -- 「ビジネス・ルール」を参照)
外部システムを使用して、出来高および完了率に関してプロジェクトの進捗を計算および監視します。その後、ステータスAPIを使用して、「プロジェクト・ステータス照会」(および必要に応じて請求)をOracle Projectsに報告します。
注意: 「プロジェクト・ステータス照会」では、財務計画タイプを使用して作成した予算は報告されません。したがって、次に示す予算編成および予測に関するステータスAPIおよびビューでは、予算タイプを使用して作成した予算および予測のみが報告および処理されます。
この項で説明するステータス・ビューを使用すると、実績金額および予算金額を様々な書式で表示できます。
GL期間
PA期間
作業分解構造
資源
間接費構成要素
資源レベルでは、労務として追跡される資源に対して(数量ではなく)作業時間が集計されます。資源によって数量ではなく作業時間が追跡されるかどうかを調べるには、TRACK_AS_LABOR_FLAG列に対してRESOURCE_LIST_MEMBER_IDをPA_RESOURCE_LIST_Vに結合します。TRACK_AS_LABOR_FLAGがYである場合、列では資源の作業時間のみが追跡されます。そうでない場合は数量が集計されます。
より上位レベルのプロジェクトおよびタスク・レベルのビューについても、前述の作業時間と数量の集計ルールが適用されます。たとえば、TRACK_AS_LABOR_FLAGがYであるプロジェクト・レベルの労務資源では、集計済開始来累計原価、収益、予算および作業時間が表示される場合がありますが、数量は表示されません。
この作業時間と数量の追跡方法は、Oracle Projectsで事前定義済資源が集計される方法に基づいています。Oracle Projects内の資源はすべて、1つ以上の事前定義済資源の組合せとして定義できます。事前定義済資源には、次の3つの集計属性があります。
単位
労務として追跡
実績数量の積上
集計属性の値は、実績を資源にマップするために使用されるビュー内でハードコーディングされています。クライアントはビューを変更することで値を変更できます。ビューの論理については、次の2つの表で概説します。次の表に、事前定義済資源タイプに関連したビューの論理を示します。
事前定義済資源タイプ | 労務として追跡 | 単位 | 実績数量の積上 |
---|---|---|---|
従業員 | Yes | 時間 | No |
役職 | Yes | 時間 | No |
組織 | Yes | 時間 | No |
支出タイプ | 労務として追跡の支出タイプ属性によって異なる | 「支出タイプ」に指定された単位 | Yes |
イベント・タイプ | No | ブランク | No |
仕入先 | No | ブランク | No |
支出カテゴリ | 「支出カテゴリ」に労務支出タイプが含まれるかどうかによって異なる | 資源タイプが労務として追跡されるかどうかによって異なる | No |
収益カテゴリ | 「収益カテゴリ」に労務支出タイプが含まれるかどうかによって異なる | 資源タイプが労務として追跡されるかどうかによって異なる | No |
次の表に、事前定義済資源に関連したビューの論理を示します。
事前定義済資源 | 労務として追跡 | 単位 | 実績数量の積上 |
---|---|---|---|
未カテゴリ | Yes | 時間 | No |
未分類 | No | ブランク | No |
未カテゴリ資源を労務追跡として定義することで、クライアントは未カテゴリ予算の入力時に作業時間を予算編成できます。
資源に対する条件付き作業時間および数量問合せを容易にするために、TRACK_AS_LABOR_FLAGは資源メンバー・リスト表でも保持されます。TRACK_AS_LABOR_FLAG列の問合せはPA_RESOURCE_LIST_Vビュー経由で行えます。
プロジェクト・レベルの資源ビューでSELECT文を記述するには、次のようなSQL文を記述して、資源別に作業時間または数量を条件付きで返すことができます。
SELECT rl.resource_alias List
, decode(rl.resource_track_as_labor_flag,’Y’,
ara.actuals_labor_hours_itd,
’N’, ara.actuals_quantity_itd, 0) Units
, ara.actuals_labor_hours_itd Hours
, ara.actuals_quantity_itd Qty
FROM pa_resource_list_v rl
, pa_accum_rsrc_act_v ara
WHERE ara.resource_list_member_id =
rl.resource_list_member_id
AND rl.resource_list_id = 1000
AND ara.project_id = 1043
AND ara.task_id = 0
資源リスト識別コード、プロジェクト識別コードおよび取得データはデータベースごとに異なりますが、前述のSELECT文は次の表に示すような値を返します。
リスト | 単位 | 時間 | 数量 |
---|---|---|---|
労務 | 406 | 406 | 0 |
Senior.Consultant | 40 | 40 | 0 |
Principal.Consultant | 122 | 122 | 0 |
Senior.Engineer | 164 | 164 | 0 |
Principal.Engineer | 80 | 80 | 0 |
出張 | 4372 | 0 | 4372 |
航空出張 | 3762 | 0 | 3762 |
個人自動使用 | 105 | 0 | 105 |
社内控除 | 222 | 0 | 222 |
コンピュータ・サービス | 62 | 0 | 62 |
自動車レンタル | 50 | 0 | 50 |
食事 | 125 | 0 | 125 |
その他資産 | 160 | 0 | 160 |
その他費用 | 225 | 0 | 225 |
宿泊施設 | 330 | 0 | 330 |
その他費用 | 225 | 0 | 225 |
次の表に、ステータスAPIのパラメータ・データを提供するビューを示します。ビューの詳細は、OracleMetaLinkで入手可能なOracle eTRMを参照してください。
この項で説明するプロシージャを次に示します。これらのプロシージャは、パブリックAPIパッケージPA_STATUS_PUB内にあります。
更新プロシージャ
ロード-実行-フェッチ・プロシージャ
以降のページに、APIで使用されるレコードおよび表のデータ型を定義します。
次の表に、PA_TASK_PROGRESS_LIST_REC_TYPEデータ型を示します。
名称 | タイプ | 必須であるか | 説明 |
---|---|---|---|
TASK_ID | NUMBER | Yes(PM_TASK_REFERENCEが指定されていない場合) | Oracle Projectsでプロジェクト内のタスクを一意に識別する参照コード |
TASK_NAME | VARCHAR2 (20) | No | タスク名 |
TASK_NUMBER | VARCHAR2(25) | No | タスクの要素番号またはタスク番号 |
PM_TASK_REFERENCE | VARCHAR2 (250) | Yes(TASK_IDが指定されていない場合) | 外部システム内の体系またはタスクを一意に識別する参照コード |
PERCENT_COMPLETE | NUMBER | Yes | オブジェクトの完了率 |
DESCRIPTION | VARCHAR2 (250) | No | 進捗概要または摘要 |
OBJECT_ID | NUMBER | Yes | 体系、タスクまたは成果物のプロジェクト要素ID、あるいはOracle Projects内の割当の資源リスト・メンバーID |
OBJECT_VERSION_ID | NUMBER | Yes | タスクまたは成果物の要素バージョンID |
OBJECT_TYPE | VARCHAR2 (30) | Yes | オブジェクト・タイプ: プロジェクト・レベルの進捗ではPA_STRUCTURES、タスク・レベルの進捗ではPA_TASKS、割当レベルの進捗ではPA_ASSIGNMENTS、成果物レベルの進捗ではPA_DELIVERABLES |
PROGRESS_STATUS_CODE | VARCHAR2 (150) | Yes | 進捗ステータス・コード |
PROGRESS_COMMENT | VARCHAR2 (4000) | No | 進捗コメント |
ACTUAL_START_DATE | DATE | No | 実績開始日 |
ACTUAL_FINISH_DATE | DATE | No | 実績終了日 |
ESTIMATED_START_DATE | DATE | No | 見積開始日 |
ESTIMATED_FINISH_DATE | DATE | No | 見積終了日 |
SCHEDULED_START_DATE | DATE | No | 予定開始日 |
SCHEDULED_FINISH_DATE | DATE | No | 予定終了日 |
TASK_STATUS | VARCHAR2 (150) | Yes | タスク・ステータス・コードまたは成果物ステータス・コード |
EST_REMAINING_EFFORT | NUMBER | No | 完了見積従事 |
ACTUAL_WORK_QUANTITY | NUMBER | No | 実績作業数量(最下位レベルのタスクにのみ適用) |
LOWEST_LEVEL_TASK | VARCHAR2(1) | 内部専用 | |
PROGRESS_MODE | VARCHAR2 (30) | 内部専用 | |
ETC_COST | NUMBER | No | 完了見積原価 |
PM_DELIVERABLE_REFERENCE | VARCHAR2 (150) | No | 成果物参照 |
PM_TASK_ASSIGN_REFERENCE | VARCHAR2 (150) | No | タスク割当参照 |
ACTUAL_COST_TO_DATE | NUMBER | No | 取引通貨での累積実績原価 |
ACTUAL_EFFORT_TO_DATE | NUMBER | No | 累積実績従事 |
次の表に、UPDATE_PROGRESSおよびLOAD_TASK PROGRESS APIを使用してプロジェクト、タスク、割当および成果物の進捗情報を更新する際に必要なパラメータを示します。
次の表に、UPDATE_PROGRESSおよびLOAD_TASK PROGRESS APIを使用してプロジェクトの進捗情報を更新する際に必要なパラメータを示します。
パラメータ名 | コメント |
---|---|
P_PROJECT_ID | P_PM_PROJECT_REFERENCEを指定しない場合に必須 |
P_PM_PROJECT_REFERENCE | P_PM_PROJECT_IDを指定しない場合に必須 |
P_PM_PRODUCT_CODE | |
P_PM_STRUCTURE_TYPE | |
P_AS_OF_DATE | |
P_TASK_ID | 値= 0 |
P_PM_TASK_REFERENCE | P_TASK_IDを指定しない場合に必須 |
P_OBJECT_ID | 値= STRUCTURE ID |
P_OBJECT_VERSION_ID | 値= STRUCTURE VERSION ID |
P_OBJECT_TYPE | 値= PA_STRUCTURES |
P_PROGRESS_STATUS_CODE | |
P_TASK_STATUS |
次の表に、UPDATE_PROGRESSおよびLOAD_TASK PROGRESS APIを使用してタスクの進捗情報を更新する際に必要なパラメータを示します。
パラメータ名 | コメント |
---|---|
P_PROJECT_ID | P_PM_PROJECT_REFERENCEを指定しない場合に必須 |
P_PM_PROJECT_REFERENCE | P_PM_PROJECT_IDを指定しない場合に必須 |
P_PM_PRODUCT_CODE | |
P_PM_STRUCTURE_TYPE | |
P_AS_OF_DATE | |
P_TASK_ID | P_PM_TASK_REFERENCEを指定しない場合に必須 |
P_PM_TASK_REFERENCE | P_TASK_IDを指定しない場合に必須 |
P_OBJECT_ID | 値= TASK ID |
P_OBJECT_VERSION_ID | 値= TASK VERSION ID |
P_OBJECT_TYPE | 値= PA_TASKS |
P_PROGRESS_STATUS_CODE | |
P_TASK_STATUS |
次の表に、UPDATE_PROGRESSおよびLOAD_TASK PROGRESS APIを使用して割当の進捗情報を更新する際に必要なパラメータを示します。
パラメータ名 | コメント |
---|---|
P_PROJECT_ID | P_PM_PROJECT_REFERENCEを指定しない場合に必須 |
P_PM_PROJECT_REFERENCE | P_PM_PROJECT_IDを指定しない場合に必須 |
P_PM_PRODUCT_CODE | |
P_PM_STRUCTURE_TYPE | |
P_AS_OF_DATE | |
P_TASK_ID | P_PM_TASK_REFERENCEを指定しない場合に必須 |
P_PM_TASK_REFERENCE | P_TASK_IDを指定しない場合に必須 |
P_OBJECT_ID | 値= RESOURCE LIST MEMBER ID |
P_OBJECT_VERSION_ID | 値= RESOURCE LIST MEMBER VERSION ID |
P_OBJECT_TYPE | 値= PA_ASSIGNMENTS |
P_PROGRESS_STATUS_CODE | |
P_TASK_STATUS |
次の表に、UPDATE_PROGRESSおよびLOAD_TASK PROGRESS APIを使用して成果物の進捗情報を更新する際に必要なパラメータを示します。
パラメータ名 | コメント |
---|---|
P_PROJECT_ID | P_PM_PROJECT_REFERENCEを指定しない場合に必須 |
P_PM_PROJECT_REFERENCE | P_PM_PROJECT_IDを指定しない場合に必須 |
P_PM_PRODUCT_CODE | |
P_PM_STRUCTURE_TYPE | |
P_AS_OF_DATE | |
P_TASK_ID | P_PM_TASK_REFERENCEを指定しない場合に必須 |
P_PM_TASK_REFERENCE | P_TASK_IDを指定しない場合に必須 |
P_OBJECT_ID | 値= DELIVERABLE ID |
P_OBJECT_VERSION_ID | 値= DELIVERABLE VERSION ID |
P_OBJECT_TYPE | 値= PA_DELIVERABLES |
P_PROGRESS_STATUS_CODE | |
P_TASK_STATUS |
関連トピック
この項では、ステータスAPIを説明します。
UPDATE_EARNED_VALUEは、最下位タスクと資源の組合せに対してPA_EARNED_VALUES表の出来高情報を更新するPL/SQLプロシージャです。このプロシージャを使用すると、プロジェクト/タスク行を更新することもできます。
このプロシージャは、表PA_EARNED_VALUES内に新規の行を作成します。プロジェクト、タスクおよび資源の組合せごとに最後に挿入された行に対して、CURRENT_FLAGは常にYに設定されます。他のすべての行については、CURRENT_FLAGはNに設定されます。
プロジェクト/タスク行を作成するには、RESOURCE_LIST_MEMBER_IDパラメータに対してゼロを渡します。プロジェクト行を作成するには、TASK_IDとRESOURCE_LIST_MEMBER_IDの両方のパラメータに対してゼロを渡します。
注意: このAPIでは、外部システムの仕入先がどのプロジェクトでもすべてのレベルに対して適切な出来高データを保持しているものと想定します。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。UPDATE_EARNED_VALUEの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PROJECT_ID
P_TASK_ID
P_RESOURCE_LIST_MEMBER_ID
P_AS_OF_DATE
P_BCWS_ITD
P_ACWP_ITD
P_BCWP_ITD
P_BAC_ITD ITD
P_BQWS_ITD
P_AQWP_ITD
P_BQWP_ITD
P_BAQ_ITD
UPDATE_PROGRESSは、作業分解構造のすべてのレベルに対して特定の日付の時点でPA_PERCENT_COMPLETES表内の進捗情報を更新するPL/SQLプロシージャです。
特定のプロジェクトについては、タスク識別子がゼロの場合、パラメータはプロジェクト・レベルの行に適用されます。タスク識別子がゼロより大きい場合、パラメータはタスク・レベルの行に適用されます。
プロジェクトの作業分解構造からタスクを追加しても、PA_PERCENT_COMPLETES表内の対応する行には影響しません。プロジェクトとタスクの組合せに対する行がまだ存在しない場合、このAPIを実行するとPA_PERCENT_COMPLETES表内に新規の行が挿入されます。
このプロシージャは、表PA_PERCENT_COMPLETES内に新規の行を作成します。プロジェクト、タスクおよび資源の組合せごとに最後に挿入された行に対して、CURRENT_FLAGは常にYに設定されます。他のすべての行については、CURRENT_FLAGはNに設定されます。
プロジェクト行を作成するには、TASK_IDでゼロを渡す必要があります。
注意: このAPIでは、外部システムの仕入先がどのプロジェクトでも作業分解構造のレベルごとに適切な進捗データの積上を保持しているものと想定します。ただし、進捗情報の入力はオプションです。
注意: プロジェクト、タスク、割当または成果物の進捗情報を更新する際にパラメータが必要かどうかの詳細は、「ステータスAPIパラメータ」を参照してください。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。UPDATE_PROGRESSの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PROJECT_ID(P_PM_PROJECT_REFERENCEを指定しない場合)
P_PM_PROJECT_REFERENCE(P_PM_PROJECT_IDを指定しない場合)
P_PM_PRODUCT_CODE
P_PM_STRUCTURE_TYPE
P_AS_OF_DATE
P_TASK_ID(P_PM_TASK_REFERENCEを指定しない場合)
P_PM_TASK_REFERENCE(P_TASK_IDを指定しない場合)
P_PERCENT_COMPLETE
P_OBJECT_ID
P_OBJECT_VERSION_ID
P_OBJECT_TYPE
P_PROGRESS_STATUS_CODE
P_TASK_STATUS
LOAD_TASK_PROGRESSは、PL/SQLデータ構造内に進捗情報をロードするために使用するロード-実行-フェッチPL/SQLプロシージャです。
注意: プロジェクト、タスク、割当または成果物の進捗情報を更新する際にパラメータが必要かどうかの詳細は、「ステータスAPIパラメータ」を参照してください。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。LOAD_TASK_PROGRESSの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
P_PROJECT_ID(P_PM_PROJECT_REFERENCEを指定しない場合)
P_PM_PROJECT_REFERENCE(P_PM_PROJECT_IDを指定しない場合)
P_PM_PRODUCT_CODE
P_PM_STRUCTURE_TYPE
P_AS_OF_DATE
P_TASK_ID(P_PM_TASK_REFERENCEを指定しない場合)
P_PM_TASK_REFERENCE(P_TASK_IDを指定しない場合)
P_PERCENT_COMPLETE
P_OBJECT_ID
P_OBJECT_VERSION_ID
P_OBJECT_TYPE
P_PROGRESS_STATUS_CODE
P_TASK_STATUS
EXECUTE_UPDATE_TASK_PROGRESSは、Oracle Projectsで進捗情報を更新するために使用するロード-実行-フェッチPL/SQLプロシージャです。
このプロシージャは、表PA_PERCENT_COMPLETES内に新規の行を作成します。プロジェクト、タスクおよび資源の組合せごとに最後に挿入された行に対して、CURRENT_FLAGは常にYに設定されます。他のすべての行については、CURRENT_FLAGはNに設定されます。
プロジェクト行を作成するには、TASK_IDでゼロを渡す必要があります。
注意: このAPIでは、外部システムの仕入先がどのプロジェクトでも作業分解構造のレベルごとに適切な進捗データの積上を保持しているものと想定します。ただし、進捗情報の入力はオプションです。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。EXECUTE_UPDATE_TASK_PROGRESSの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
INIT_UPDATE_TASK_PROGRESSは、内部PL/SQL表を初期化するために使用するユーティリティです。EXECUTE_UPDATE_TASK_PROGRESS APIへの各呼出し前にこのAPIを呼び出すことをお薦めします。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。INIT_UPDATE_TASK_PROGRESSの必須パラメータは次のとおりです。
P_API_VERSION_NUMBER
カスタム集計レポートAPIを使用すると、カスタム集計レポートをより的確に管理できます。
実績集計APIを使用すると、Oracle ProjectsまたはOracle General Ledger期間の単一期間または一連の期間に対して金額を取得できます。実績原価、収益および取引約定金額を取得できます。
このAPIをレポート作成に使用する方法を理解するには、『Oracle Projects基礎』マニュアルで次のOracle Projectsレポートに関する説明を参照してください。
資源別収益、原価、予算(プロジェクト・レベル)
タスク - 資源別収益、原価、予算
実績集計APIのパッケージ名はpa_accum_apiです。対応するファイル名は次のとおりです。
本体ファイル: PAAAPIB.pls
仕様ファイル: PAAAPIS.pls
実績集計APIには、次のプロシージャが含まれています。
次のプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。
これは、プロジェクト・レベルで実績原価、収益および取引約定金額を取得するためのプライマリ・プロシージャです。
GET_PROJECT_ACCUM_ACTUALSの必須パラメータは、次のとおりです。
x_project_id
x_from_period_name
重要: 集計プロジェクトまたはタスク金額の取得中にパラメータx_resource_list_member_idに対してこのプロシージャに値を渡すと、このプロシージャによってGET_PROJ_RES_ACCUMプロシージャが呼び出されます。パラメータx_resource_list_member_idに対して値を渡さない場合は、このプロシージャによってGET_PROJ_TXN_ACCUMプロシージャが呼び出されます。
このプロシージャは、プロシージャGET_PROJECT_ACCUM_ACTUALSに対してパラメータx_resource_list_member_idで指定された資源の実績原価、収益および取引約定金額を取得します。
このプロシージャの必須パラメータは次のとおりです。
x_project_id
x_from_period_name
x_resource_list_member_id
このプロシージャは、原価、収益、取引約定など、様々な取引タイプの集計金額を取得します。
このプロシージャの必須パラメータは次のとおりです。
x_project_id
x_from_period_name
予算集計APIはカスタム・レポートに使用できます。このAPIは、任意の予算基本編成用に予算データを取得します。プロジェクト要約の更新プロセスを実行せずに予算データを取得できます。
注意: 予算集計APIでは、財務計画タイプを使用して作成した予算はサポートされません。
このAPIは、次の項目別に予算金額を返します。
プロジェクト、タスクおよび資源の組合せ
プロジェクト作業分解構造のすべてのレベル
資源分解構造のすべてのレベル
Oracle ProjectsまたはOracle General Ledger期間
Oracle ProjectsまたはOracle General Ledger期間範囲
予算タイプ
予算レベルに対応するTASK_IDを渡すかぎり、予算集計APIでは、プロジェクトおよびタスク作業分解構造の任意のレベルに割り当てられた予算に対して集計金額を返すことができます。たとえば、プロジェクトが最上位タスクで予算編成されている場合に、予算集計APIに最下位タスクを渡すと、APIによってゼロの予算金額が返されます。
集計パッケージの名称はpa_accum_api、予算プロシージャの名称はget_proj_accum_budgetsです。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。
プロジェクト実績レポートAPIを使用すると、プロジェクトごとに「資源要約」ページまたは「資源分析」ページにナビゲートしなくても、プロジェクト間で資源のベース要約データを集計できます。その後、複数プロジェクトの資源要約金額を分析して、独自のカスタム・レポートを作成できます。データが不要になった場合は、プロジェクト実績レポートAPIを使用して、作成した資源積上要約金額を削除し、システム・パフォーマンスを向上させることをお薦めします。
プロジェクト実績レポートAPIのパッケージ名はpji_perf_rptg_pubです。対応するファイル名は次のとおりです。
本体ファイル: PJIPRFPB.pls
仕様ファイル: PJIPRFPS.pls
プロジェクト実績レポートAPIには、次のプロシージャが含まれています。
このプロシージャのすべてのパラメータの説明は、Oracle Integration Repositoryで参照できます。Oracle Integration Repositoryは、このマニュアルの「はじめに」で説明されています。
このプロシージャは、PJI_ROLLUP_LEVEL_STATUS表内の指定プロジェクトおよび体系と、PJI_FP_XBS_ACCUM_F表内の対応する積上資源要約金額詳細に対してヘッダー情報を挿入します。
次のCREATE_RESOURCE_ROLLUPパラメータが必須です。
P_API_VERSION_NUMBER
P_COMMIT
P_INIT_MSG_LIST
P_PROJECT_ID
P_PLAN_VERSION_ID_TBL
P_RBS_VERSION_ID_TBL
P_PRG_ROLLUP_FLAG
X_MSG_COUNT
X_MSG_DATA
X_RETURN_STATUS
このプロシージャは、PJI_ROLLUP_LEVEL_STATUS表内の指定プロジェクトおよび体系と、PJI_FP_XBS_ACCUM_F表内の対応する積上資源要約金額詳細に対してヘッダー情報を削除します。
次のDELETE_RESOURCE_ROLLUPパラメータが必須です。
P_API_VERSION_NUMBER
P_COMMIT
P_INIT_MSG_LIST
P_PROJECT_ID
X_MSG_COUNT
X_MSG_DATA
X_RETURN_STATUS