拡張機能を使用してOracle Applicationsからデータを取得するためのガイドライン
オーダー管理拡張でパブリック・ビュー・オブジェクト(PVO)を使用して、Oracleアプリケーションからデータを取得します。
各パブリック・ビュー・オブジェクトは次のパスを使用します:
 
 ノート
- 
            getViewObjectメソッドを使用します。 
- 
            必要なビュー・オブジェクトのほとんどは、oracle.apps.scmパスにあります。 場合によっては、oracle.apps.scmの外部に移動する必要があります。 たとえば、oracle.apps.prcを使用して、Oracle Purchasingから購買オーダー・データにアクセスします。 
- 
            たとえば、公開ビュー・オブジェクトを使用して、製品情報管理作業領域で品目カテゴリを参照したり、Oracle Purchasingで購買オーダーを検索できます。 この例では、 oracle.apps.scm.productModel.items.publicView.ItemPVOを使用して、Product Information Managementから品目に関する詳細を取得します。
- 
            publicは、ビュー・オブジェクトがそのデータを他のOracle Applicationsで使用できるようにすることを意味します。
オーダー管理拡張でパブリック・ビュー・オブジェクトを使用してOracleアプリケーションからデータを取得できますが、Oracleがサポートするパブリック・ビュー・オブジェクトのみを使用する必要があります。 それらの完全なリストを取得するには、「Oracle Applications Cloudのパブリック・ビュー・オブジェクト(ドキュメントID 2386411.1)」を参照してください。
PVOのフィルタ
ダウンロードするXLSファイルで検索をフィルタします。
オーダー・ヘッダーの顧客名に従ってデータをフィルタするPVOが必要であるとします。
- 
               XLSファイルをダウンロードして開きます。 
- Excelの拡張フィルタを使用して、XLSファイルの列をフィルタします。パス 属性 foundation.parties.publicViewを含む顧客名はパーティ・データであるため、Order Managementはパーティ・データを foundation.partiesから取得するため、このフィルタを使用します。 パーティ・データの詳細は、「販売オーダーに関する顧客詳細の表示の概要」を参照してください。PartyNameと等しい
- 
               これらの結果を取得するとします。 パス 属性 oracle.apps.cdm.foundation.parties.publicView.analytics.CustomerFactPVO PartyName oracle.apps.cdm.foundation.parties.publicView.analytics.PartyPersonPVO PartyName oracle.apps.cdm.foundation.parties.publicView.analytics.PartyOrganizationPVO PartyName oracle.apps.cdm.foundation.parties.publicView.analytics.CustomerContactPVO PartyName oracle.apps.cdm.foundation.parties.publicView.analytics.CustomerSecuredPVO PartyName oracle.apps.cdm.foundation.parties.publicView.analytics.CustomerPVO PartyName oracle.apps.cdm.foundation.parties.publicView.analytics.PartyGroupPVO PartyName oracle.apps.cdm.foundation.parties.publicView.analytics.PartyUsagePVO PartyName oracle.apps.cdm.foundation.parties.publicView.bicc.PartyExtractPVO PartyName oracle.apps.cdm.foundation.parties.publicView.bicc.AdditionalPartyNameExtractPVO PartyName oracle.apps.cdm.foundation.parties.publicView.relationships.OrganizationContactPVO PartyName oracle.apps.cdm.foundation.parties.publicView.core.PartyPVO PartyName oracle.apps.cdm.foundation.parties.publicModel.export.view.core.AdditionalPartyNameExpPVO PartyName oracle.apps.cdm.foundation.parties.publicModel.export.view.core.PartyExpPVO PartyName 
- 
               最も可能性の高いパスを探します。 結果には、アナリティクス、bicc、関係、エクスポート、コアなどの様々な使用方法が含まれます。 コアの使用方法については、 coreを含むパスを参照してください。
- 
               次に、この例で使用する内容を示します。 パス 属性 oracle.apps.cdm.foundation.parties.publicView.core.PartyPVOPartyName
その他のフィルタ
Oracle Applicationsでは、略称FOM (Fusion Order Management)またはDOO (分散オーダー・オーケストレーション)を使用してOracle Order Managementを参照できます。 Oracle Order Managementに関連するオブジェクトを検索するには、fomまたはdooを含む行の「パス」列をフィルタ処理することもできます。 
パスの指定
パスは、パブリック・ビュー・オブジェクトを識別します。 各PVOの命名法は異なる場合があります。 次に例を示します:
productFamily.functionalArea.publicView.「使用状況」.PVOname
使用例を考えてみます:
oracle.apps.scm.maintenanceManagement.maintProgram.publicView.analytics.MaintenanceForecastFactPVO
説明
- oracle.apps.scmは、Supply Chain Management製品ファミリを識別します。
- maintenanceManagementは、Maintenance Managementの機能領域を識別します。
- maintProgramは、Maintenance Management機能領域内のコンポーネントを識別します。
- MaintenanceForecastFactPVOは、パブリック・ビュー・オブジェクトの名前を識別します。
- analyticsは、このPVOの使用方法を示します。
使用法は次のとおりです。
| 使用方法 | 説明 | 
|---|---|
| analytics | レポートとともに使用します。 | 
| bicc | Business Intelligence Cloud Connectorとともに使用します。 | 
| core | コアOracle Applicationsからのデータを管理します。 | 
| export | データをインポートまたはエクスポートします。 | 
| relationships | オブジェクト間の関係を管理します。 | 
一般的なビュー・オブジェクト
オーダー管理の実装で通常使用するパブリック・ビュー・オブジェクトの一部を次に示します。
| データ | ビュー・オブジェクト名 | 
|---|---|
| 販売オーダー | HeaderPVO FulfillLinePVO | 
| 項目 | ItemPVO ItemCategoryPVO | 
| Customer | PartyPVO PartySitePVO LocationPVO | 
| 顧客アカウント | CustomerAccountPVO CustomerAccountSitePVO CustomerAccountSiteUsePVO | 
| 売掛/未収金 | TransactionTypePVO | 
アクセスする必要がある様々なアプリケーションへのより一般的なパスのいくつかを次に示します。
| アプリケーションまたは作業領域 | パス | 
|---|---|
| 製品情報管理 | oracle.apps.scm.productModel | 
| オーダー管理 | oracle.apps.scm.doo | 
| 価格設定管理 | oracle.apps.scm.pricing | 
| 在庫管理 | oracle.apps.scm.inventory | 
| 作業実行 | oracle.apps.scm.commonWorkExecution | 
| 出荷 | oracle.apps.scm.shipping | 
| 購買 | oracle.apps.prc | 
コード化
 
 ノート
| コード | 摘要 | 
|---|---|
|  | コードがコールできるローカル・オブジェクトを定義します。 このオブジェクトには、パブリック・ビュー・オブジェクトからのデータが含まれます。 
 | 
|  | 品目のパブリック・ビュー・オブジェクトのインスタンスを作成し、itemPVO変数に格納します。 次の書式を使用します: 
 たとえば、ItemPVOパブリック・ビュー・オブジェクトを参照します: 説明 
 | 
|  | パブリック・ビュー・オブジェクトの詳細を格納する変数を定義します。 
 | 
|  | 行の変数を定義します。 
 | 
|  | 
 
 | 
|  | 
 
 | 
|  | 基準を満たす行数を含むイテレータを取得し、それを 
 | 
|  | 
 | 
|  | 
 | 
コメントのないコード全体を次に示します。
Object getItem(Long itemId, Long orgId) {
 def itemPVO = context.getViewObject(
  "oracle.apps.scm.productModel.items.publicView.ItemPVO");
 def vc = itemPVO.createViewCriteria();
 def vcrow = vc.createViewCriteriaRow();
 vcrow.setAttribute("InventoryItemId", itemId);
 vcrow.setAttribute("OrganizationId", orgId);
 def rowset = itemPVO.findByViewCriteria(vc, -1);
 def item = rowset.first();
 return item;
}ビュー・オブジェクトからの付加フレックスフィールドの取得
Oracle Trading Community Architecture (TCA)の顧客マスターには、付加フレックスフィールドが含まれる場合があります。 ただし、顧客アカウントのサイト詳細を含むパブリック・ビュー・オブジェクト(PartyPVOなど)には、これらの付加フレックスフィールドが含まれない場合があります。 この手法を使用して取得します。
 
 ノート
- 
               「顧客アカウント・サイト付加フレックスフィールドの管理」ページに移動し、アクセスする必要がある付加フレックスフィールドを見つけて、「フレックスフィールド・アーカイブのダウンロード」をクリックし、使用する構造を確認します。 
- 
               付加フレックスフィールドを参照するには、publicFlexビュー・オブジェクトを参照します。 この例では、custAccountSiteのpublicFlexを参照します。 oracle.apps.cdm.foundation.parties.publicFlex.custAccountSite.view.CustAccountSiteInformationVO
- 
               アーカイブをダウンロードしたときに調べた構造を使用して、ビュー基準の指定方法を決定します。 
コード全体を次に示します。
def siteFlexPVO = context.getViewObject 
 ("oracle.apps.cdm.foundation.parties.publicFlex.
 custAccountSite.view.CustAccountSiteInformationVO"); 
def vc = siteFlexPVO.createViewCriteria(); 
def vcrow = vc.createViewCriteriaRow(); 
vc.add(vcrow); 
def rowset = siteFlexPVO.findByViewCriteriaWithBindVars 
 (vc, -1, new String [0], new String [0]); 
def custDFF = rowset.first(); 
String values = custDFF.getAttribute("Salesperson")現在の販売オーダーにない販売オーダーからデータを取得
HeaderPVOを使用してオーダー・ヘッダー・データにアクセスし、FulfillLinePVOを使用してオーダー明細または履行明細データにアクセスできます。 たとえば、オーダー入力スペシャリストが販売オーダーに購買オーダー番号を設定する場合は、他の販売オーダーがこの購買オーダー番号をまだ使用していないことを確認してください。 この検証は、オーダー入力スペシャリストが販売オーダーを発行するときに実行します。
 
 その他の例を次に示します。
- 
               新しい販売オーダーに返品ラインが含まれている場合は、元の販売オーダーから注文のタイプを取得し、それを使用して各返品ラインの注文のタイプを設定します。 
- 
               オーダー改訂2によって、オーダー改訂1の合計価格よりも販売オーダーの合計価格が10%以上増加する場合は、改訂を許可しないでください。 たとえば、販売オーダーxのバージョン1は、販売オーダーxのバージョン2と完全に分離された販売オーダーです。 パブリック・ビュー・オブジェクトを使用して、現在のバージョンではないバージョンからデータを取得します。 
表、ビューおよびパブリック・ビュー・オブジェクトの詳細の取得
販売オーダー・ヘッダーおよびオーダー明細の詳細を含むパブリック・ビュー・オブジェクトを使用する必要がある場合は、ドキュメントを参照してください。 「Oracle Fusion Cloud SCM: SCMの表およびビュー」に移動し、「オーダー管理」>「表」を展開して、次のいずれかをクリックします:
- 
               DOO_HEADERS_ALL 
- 
               DOO_LINES_ALL 
- 
               DOO_FULFILL_LINES_ALL 
料金の詳細の取得
販売オーダー・レポートを作成し、運送費をレポートに含める必要があるとします。 出荷待ちステータスまたは請求待ちステータスの販売オーダーがあります。 オーダーを履行ビューで表示します。 履行明細の価格列に販売価格属性の値が含まれていますが、運送費属性が空です。 Oracle Shippingでも空です。
SQLを使用してDOO_LINES_ALL表およびDOO_FULLFILL_LINES_ALL表を調べますが、幸運にもありません。
ドキュメントを使用して、運送費がある表および列を識別できます。
 
 演習
- 
               「Oracle SCM Cloudの表およびビュー」に移動します。 
- 
               目次の「オーダー管理」をクリックします。 
- 
               CTRL+Fを押して freightという単語を入力し、「入力」を押します。オーダー管理の章の最初から始まるすべての結果が返されます。 
- 
               探しているものを見つけるまで、「下向き矢印」をクリックします。 この例では、目次のDOO_ORDER_CHARGESリンクが緑色に変わり、CHARGE_SUBTYPE_CODE列に関連する説明が含まれるまでクリックを続けます。 Subtype of a given charge type. Examples could include, within Shipping Related Charges: Freight Charge, Shipping Insurance, within Special Charges: Suspend Charge, Resumption Charge)DOO_FS_CHARGES_INTなどの他の表にCHARGE_SUBTYPE_CODEが表示される場合がありますが、ほとんどの場合はDOO_ORDER_CHARGES表を使用します。 
- 
               SQLを実行して運送費を取得します。