ヘッダーをスキップ

Oracle E-Business Suite開発者ガイド
リリース12.2
E53035-01
目次へ
目次
前のページへ
前へ
次のページへ
次へ

XML定義ファイル・ユーティリティ

概要

XML定義ファイル(XDF)ユーティリティは、現在のオブジェクト定義ファイル(ODF)ユーティリティの次世代バージョンで、オブジェクト定義を伝播するために使用されます。

XDFでは、現在、ネストされた表に対する「変更」はサポートされていないことに注意してください。ネストされた表に対しては「作成」シナリオのみサポートされています。リリース12.1以降、XDFでは、ネストされた表の情報をXDFファイルに取得し、表オブジェクトの伝播時にこの情報を読み取り、このネストされた表の列を含めるように実表を変更できます。

Oracle E-Business Suiteの標準に従って、主キー・タイプが「D」の2つの主キーが同じ表に存在することはできません。リリース12.1以降は、指定したパラメータ値に応じて、XDFアプリケーションによって古い主キーが上書きされ、新しい主キーがXDFファイルに作成されます。

XDFへのオブジェクト格納

ADODFGENユーティリティは、ODFを生成するためにビルディング・ブロックの概念に依存していました。XDFでは、ビルディング・ブロックの概念がサポートされておらず、かわりに主オブジェクトとその依存オブジェクトをグループ化して、各種の粒度、容易なメンテナンス、および効率的な比較を実現します。次の表に、オブジェクト格納の詳細を示します。

主オブジェクト・タイプ 詳細 依存オブジェクト XDFへの格納
これには、グローバル一時表、索引構成表(IOT)、キュー表、標準の表、タイプを持つ表(例: VARRAYSやネストされた表タイプ、オブジェクト・タイプ、空間データ型など)、パーティション表が含まれます。 索引、トリガー(オプション)、タイプ、制約、順序、ポリシー 各XDFに1つの表とその依存オブジェクト定義
マテリアライズド・ビュー上のマテリアライズド・ビュー(MV)   索引、トリガー(オプション)、マテリアライズド・ビュー・ログ 各XDFに1つのMVとその依存オブジェクト定義
実表上のマテリアライズド・ビュー   索引、トリガー(オプション) 各XDFに1つのMVとその依存オブジェクト定義
実表上のマテリアライズド・ビュー・ログ   索引、トリガー(オプション)、制約 各XDFに1つのMVログとその依存オブジェクト定義
ビュー     各XDFに1つのビュー定義
アドバンスト・キュー     各XDFに1つのキュー定義
トリガー トリガーは表定義とともに、または別個に生成できます。   各XDFに1つ以上のトリガー定義
ADT (オブジェクトまたは抽出データ型)     各XDFに1つのADT定義

XDF生成ユーティリティ

XDF (XML定義ファイル)生成ユーティリティは、スキーマ・オブジェクト定義をXDF形式(.xdfファイル)に抽出する際に使用します。

.xdf拡張子によって、オブジェクト定義を含むXMLファイルと、データを含む他のXMLファイルが区別されます。XMLで定義を生成するにはメタデータAPI (dbms_metadata)に依存するため、XDF生成ユーティリティはOracle 9iリリース2以上(バージョン9.2.0.3以上)のデータベースに対して実行する必要があります。XDFファイルの標準的な場所は、$PROD_TOP/admin/xdfまたは$PROD_TOP/patch/115/xdfです。

XDFファイルの形式は、主オブジェクトとその依存オブジェクトが1つのファイル内で関連付けられている形式です。たとえば、表の定義とそのすべての索引、制約、トリガーが1つのXDFファイル内で関連付けられます。

オブジェクト・タイプに基づくXDFファイル構造に関する項を参照してください。XDF生成ユーティリティは、Perl()およびJava (FndXdfGen)で使用できます。XDF生成Perlユーティリティは、中央ツール領域の$FND_TOP/binの下にあります。

機能

XDF生成ユーティリティは、メタデータAPIで生成された基本定義を補強し、次の機能を備えています。

XDF生成

本文の説明内容に関するイメージ

開発者は、SQLを使用してデータベース・オブジェクトを作成または変更し、次にXDFGENユーティリティを起動してオブジェクト定義ファイルをXMLで作成します。

XDFファイルには常に、主オブジェクトと依存オブジェクトの定義全体が含まれます。最初にXDFファイルが生成された後に変更が行われた場合、その変更の対象が主オブジェクトか依存オブジェクトか(またはその両方)に関係なく、常に主オブジェクトと依存オブジェクトの定義全体が生成されます。現在、メタデータAPIでは定義全体のみが生成され、増分定義はサポートされていません。

XDFへのオブジェクト格納

ADODFGENユーティリティは、ODFを生成するためにビルディング・ブロックの概念に依存していました。XDFでは、ビルディング・ブロックの概念がサポートされていません。かわりに主オブジェクトとその依存オブジェクトをグループ化して、各種の粒度、容易なメンテナンス、および効率的な比較を実現します。

主オブジェクト・タイプ 詳細 依存オブジェクト XDFへの格納
これには、グローバル一時表、IOT、キュー表、標準の表、タイプを持つ表(例: VARRAYSやネストされた表タイプ、オブジェクト・タイプ、空間データ型など)、パーティション表が含まれます。 索引、トリガー(オプション)、タイプ、制約、順序、ポリシー 各XDFに1つの表とその依存オブジェクト定義
マテリアライズド・ビュー上のマテリアライズド・ビュー(MV)   索引、トリガー(オプション)、マテリアライズド・ビュー・ログ 各XDFに1つのMVとその依存オブジェクト定義
実表上のマテリアライズド・ビュー   索引、トリガー(オプション) 各XDFに1つのMVとその依存オブジェクト定義
実表上のマテリアライズド・ビュー・ログ   索引、トリガー(オプション)、制約 各XDFに1つのMVログとその依存オブジェクト定義
ビュー     各XDFに1つのビュー定義
アドバンスト・キュー     各XDFに1つのキュー定義
トリガー トリガーは表定義とともに、または別個に生成できます。   各XDFに1つ以上のトリガー定義
ADT (オブジェクトまたは抽出データ型)     各XDFに1つのADT定義

使用方法

XDF生成ユーティリティと比較ユーティリティは、Javaスタンドアロン・コマンドライン・ユーティリティとして使用できます。これらは、開発者がより使いやすいように、Java FndXdfGenおよびFndXdfCmpユーティリティに対して、それぞれPerlラッパーのxdfgenおよびxdfcmp (後続の「使用方法」を参照)としても使用できます。

開発者はリリース12.2環境を使用して、データベース・オブジェクトの最新スキーマ定義をXDFファイルに抽出できます。

XDFを生成する前に、使用している環境に最新の生成パッチが適用され、この環境を指すように必要な環境変数($FND_TOP、$CLASSPATHなど)が設定されていることを確認してください。

XDFファイルの生成後は、xdfcmpを起動してこのアップロードをテストできます(変更をテストする場合は「使用方法」の説明を参照)。

Perlラッパー・ユーティリティ

次のパラメータは、Javaユーティリティでは必須ですが、Perlラッパー・ユーティリティのxdfgenおよびxdfcmpではオプションです。

Javaラッパー・ユーティリティ

次のパラメータは、Javaユーティリティでオプションになりました。

JDeveloper起動

XDF生成ユーティリティおよび比較ユーティリティは、JDeveloperからも起動できます。

  1. Oracle JDeveloper 10g (バージョン9.0.5.2、ビルド1618)をダウンロードします。このバージョンは、XMLパーサーとの互換性を維持するために必要です。

  2. XMLパーサーxmlparserv2-904.zipを<jdev-dir>\jdev\lib\patchesにコピーします。

  3. XDFGen.jarおよびXDFCmp.jarを<jdev-dir>\jdev\lib\extにダウンロードします(マウスを右クリックし、「対象をファイルに保存」リンクを使用)。

  4. JDeveloperを起動します。アプリケーション・ワークスペースおよびプロジェクトを作成または開き(空のプロジェクトも許容されます)、ソースおよびターゲット・データベースのデータベース接続を定義します。プロジェクトを選択します。「ツール」メニューからXDF生成ウィザードおよびXDF比較ウィザードを選択できます。

XDF比較ユーティリティ

XDF (XML定義ファイル)比較ユーティリティ(PerlおよびJava)は、XDFに含まれるデータベース・オブジェクト定義をターゲット・データベース内の実際のデータベース・オブジェクト定義と比較し、それに従ってターゲット・データベース内のオブジェクトに変更を適用します。

XDF比較ユーティリティは、バージョン8.1.7以上のデータベースに対して実行できます。XDF比較ユーティリティはPerl (xdfcmp)およびJava (FndXdfCmp)で使用できます。XDF比較Perlユーティリティは、中央ツール領域の$FND_TOP/binの下にあります。

機能

XDF比較ユーティリティには次の機能も含まれています。

XDF比較ユーティリティによって更新されるFND/AOLデータ・ディクショナリ表は次のとおりです。

サポートされているオブジェクト

次に、XDFでサポートされているデータベース・オブジェクトのリストを示します。

使用方法

次の説明は、XDF比較ユーティリティを使用する場合に該当します。

XDF比較PERLユーティリティ(xdfcmp)

xdfcmp <owner_schema>/<owner_password>@<oracle_sid> <xdf_filename>           
[<apps_schema_name>/<apps_password>]  
[logfile=<filename>]           
[changedb=<y|n>]  
[deferred=<list>]  
[dropCr=<list>]  
[Data_Sec_Vpd=<y|Y>]  
[Standalone=<y|Y>]          

必須の引数は次のとおりです。

オプションのパラメータは次のとおりです。

次に、xdfcmpの使用例をいくつか示します。

XDF比較Javaユーティリティ(FndXdfCmp)

java oracle.apps.fnd.odf2.FndXdfCmp 
<schemaId> 
<schemaPassword> 
<appId>
<appPassword> 
<jdbc driver type> 
<jdbc tns info> 
<object_type> 
<xdf file name> 
<xsl file directory> 
[deferred=<list> ] 
[dropCr=<list>] 
[logfile=<filename>] 
[Data_Sec_Vpd=<y|Y>] 
[Standalone=<y|Y>] 
[changedb=<y|n>] 

注意: XDF比較プログラムを実行する前に、JDKおよびJDBCの正しいバージョン(少なくともjdk118およびjdbc111)を使用してCLASSPATH環境変数が設定される必要があります。

必須の引数は次のとおりです。

オプションのパラメータは次のとおりです。

例:

グローバル一時表 - 次のコマンドを使用して、XDFファイルwf_local_users_temp.xdf内の表定義をデータベースdb_name内の定義と比較し、データベース内のオブジェクト定義とXDFファイル内の定義が一致するように差異を削除するSQL文を実行します。

java oracle.apps.fnd.odf2.FndXdfCmp applsys apps apps apps thin ap105fam:1521:db_name table /home/sbrahman/wf_local_users_temp.xdf /fnddev/fnd/11.5/patch/115/xdf/xsl     

表 - 次のコマンドを使用して、XDFファイルjtasyncmap.xdf内の表定義をデータベースdb_name内の定義と比較し、データベース内のオブジェクト定義とXDFファイル内の定義が一致するように差異を削除するSQL文を実行します。この例では、表の索引JTA_SYNC_CONTACT_MAPPING_U1が遅延されます。

java oracle.apps.fnd.odf2.FndXdfCmp jtf jtf apps apps thin ap112fam:1521:db_name table jta_sync_contact_mapping.xdf /fnddev/fnd/11.5/patch/115/xdf/xsl deferred=JTA_SYNC_CONTACT_MAPPING_U1     

マテリアライズド・ビュー - 次のコマンドを使用して、XDFファイルbil_bi_opty_t_mv.xdf内のマテリアライズド・ビュー定義をデータベースdb_name内の定義と比較し、データベース内のオブジェクト定義とXDFファイル内の定義が一致するように差異を削除するSQL文を実行します。

java oracle.apps.fnd.odf2.FndXdfCmp apps apps apps apps thin ap105fam:1521:db_name mview bil_bi_opty_t_mv.xdf /fnddev/fnd/11.5/patch/115/xdf/xsl     

ビュー - 次のコマンドを使用して、XDFファイルaview.xdf内のビュー定義をデータベースdb_name内の定義と比較し、データベース内のオブジェクト定義とXDFファイル内の定義が一致するように差異を削除するSQL文を実行します。

 java oracle.apps.fnd.odf2.FndXdfCmp apps apps apps apps thin ap112fam:1511:db_name view abmbg_act_acct_data_var_v.xdf /fnddev/fnd/11.5/patch/115/xdf/xsl