プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド
12c (12.2.1.2.0)
E82973-02
目次へ移動
目次

前
前へ
次
次へ

リポジトリのマージ

管理ツールで「リポジトリ・マージ・ウィザード」を使用して、Oracle BIリポジトリをマージできます。

リポジトリは、バイナリ(RPD)形式またはMDS XML形式でマージできます。次の3つのタイプのマージがあります。

リポジトリ・オブジェクトのマージ方法の詳細は、「マージ・ルール」を参照してください。

この項では、次の項目について説明します。

完全なリポジトリ・マージの実行

Oracle BI管理ツールを使用して、異なるリポジトリをマージできます。

この項では、管理ツールで完全な(標準)リポジトリ・マージ機能を使用する方法について説明します。

この項では、次の項目について説明します。

完全なリポジトリ・マージについて

マージ・プロセスには、一般的に次の3つのバージョンのOracle BIリポジトリが関与しています。元のリポジトリ、変更済リポジトリおよび現行のリポジトリです。

元のリポジトリとは元の未編集リポジトリ(親リポジトリ)ですが、変更済(修正済)リポジトリと現行リポジトリは、変更が加えられマージを必要とする2つのリポジトリです。現行のリポジトリは、管理ツールで現在開いているリポジトリです。

マージ・プロセス中、管理ツールは、現行のリポジトリを使用して、元のリポジトリを変更済リポジトリおよび現行のリポジトリと比較します。2つの比較の結果、競合する変更があると、競合が発生します。たとえば、変更済リポジトリでオブジェクトAをBに名前変更したが、現行のリポジトリでオブジェクトAをCに名前変更すると、競合が発生します。

リポジトリのマージ機能を使用すると、オブジェクト・ベースで最終的なマージ・リポジトリで維持する変更を決定できます。競合がない場合、マージは自動的に実行されます。

完全なマージには、次の2つのタイプがあります。

  • 共通の親。このマージは、3方向マージと呼ばれ、共通の親リポジトリおよび2つの派生リポジトリがある場合に便利です。1つの親(元の)リポジトリと2つの派生リポジトリがあります。マージ後、4番目のマージ済リポジトリが作成されます。

    次の図の例では、バイナリ(RPD)リポジトリをマージしていると想定していますが、MDS XMLリポジトリでこのタイプのマージを実行することもできます。

  • 共通の親なし。このマージは、2方向マージとも呼ばれ、一方のリポジトリから他方のリポジトリにオブジェクトをインポートする場合に便利です。この場合、共通の親を持たない2つの異なるリポジトリのオブジェクトがマージされます。これを実行するには、管理ツールで、完全に空のリポジトリを元のリポジトリとして指定して3方向マージを実行しますこの機能は、以前のリリースで廃止された「リポジトリからのインポート」機能の置換えです。

    次の図の例では、バイナリ(RPD)リポジトリをマージしていると想定していますが、MDS XMLリポジトリでこのタイプのマージを実行することもできます。

共通の親を使用した完全なリポジトリ・マージの実行

Oracle BI管理ツールを使用して、共通の親を使用した完全なリポジトリ・マージを実行する方法について説明します。

一般的に、この方法は、元の親リポジトリがあり、変更済の2つのリポジトリ・バージョン(現行のバージョンおよび変更済バージョン)にあるオブジェクトに対して実行された変更をマージする場合に使用されます。現行のリポジトリに存在しないオブジェクトが新しいオブジェクトとして作成されます。

「オブジェクトの等化」を参照してください。

  1. 管理ツールで、現行のリポジトリをオフライン・モードで開きます。
  2. 管理ツールのメニューで、「ファイル」「マージ」を選択します。

    この図は、「リポジトリ・マージ・ウィザード」を示しています。

  3. 「入力ファイルの選択」画面で、「マージ・タイプ」に「完全なリポジトリ・マージ」を選択します。
  4. 元のマスター・リポジトリ」の横にある「選択」をクリックして元の親リポジトリを選択します。サブメニューから「リポジトリ」を選択してRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。

    バイナリ・リポジトリの場合は、元のリポジトリを参照して選択し、「開く」をクリックします。MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。

  5. 適切な「リポジトリ・パスワード」フィールドに元のリポジトリのパスワードを入力します。
  6. 修正済リポジトリ」の横にある「選択」をクリックして変更済リポジトリを選択します。サブメニューから「リポジトリ」を選択してRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。

    バイナリ・リポジトリの場合は、変更済リポジトリを参照して選択し、「開く」をクリックします。MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。

  7. 適切な「リポジトリ・パスワード」フィールドに変更済リポジトリのパスワードを入力します。
  8. オプションで、「マージ済リポジトリに名前を付けて保存」フィールドの横にある「選択」をクリックして、保存済(マージ済)リポジトリのデフォルトの名前および場所を変更できます。サブメニューから「リポジトリ」を選択してマージ済リポジトリをRPD形式のバイナリ・リポジトリ・ファイルとして保存するか、「XML」を選択してマージ済リポジトリを一連のMDS XMLドキュメントとして保存します。

    バイナリ・リポジトリの場合は、新しい名前と場所を指定して、「保存」をクリックします。MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。

  9. マージする前に、変更を等化して基礎のオブジェクトIDをクリーンアップすることをお薦めします。変更を等化していない場合、「マージ中に等化」を選択して、マージ・プロセスの一部としてオブジェクトを等化します。このオプションを選択すると、マージのパフォーマンスに影響する場合があります。
  10. 「次」をクリックします。競合がある場合、「リポジトリ・マージ・ウィザード」の「マージ戦略の定義」画面が表示されます。競合がない場合、「リポジトリ・マージ・ウィザード」は閉じます。
  11. 「マージ戦略の定義」画面には、このマージに関する競合を示すデシジョン表が表示されます。

    マージ済リポジトリにオブジェクトを含めるか、ここからオブジェクトを除外するかを決定するには、「デシジョン」リストで「現行」または「変更済」を選択します。「現行」を選択して現行のリポジトリにある選択したオブジェクトに対する変更を保持するか、または「変更済」を選択して変更済リポジトリにある選択したオブジェクトに対する変更を保持します。

    デシジョン表でオブジェクトを選択すると、デシジョン表の下の読取り専用テキスト・ボックスに、現在のリポジトリでそのオブジェクトに加えられた変更に関する説明が表示されます。さらに、ダイアログの下部のツリー・パネルに、選択した行に関して影響を受けるオブジェクトが表示されます。また、ツリー・ビューの1つでオブジェクトを選択して、デシジョン表の対応する行を自動的にハイライト表示にできます。

    デシジョン」リストの「変更済」オプションには、問題のオブジェクトをマージ済リポジトリに追加するか、またはマージ済リポジトリから削除するかを示す接尾辞が表示されます。「変更済(A)」はこのオブジェクトが追加されることを示し、「変更済(D)」はこのオブジェクトが削除されることを示します。

    競合のタイプは、「競合」表の「説明」列に表示されます。選択できる決定は、この列に表示される競合のタイプによって異なります。次のリストに、様々なタイプの競合に対する結果の例を示します。

    • 現行に追加されました: 「現行」を選択すると、新しいオブジェクトがマージ済リポジトリに保持されます。「変更済(D)」を選択すると、新しいオブジェクトがマージ済リポジトリから削除されます。

    • 現行から削除: 「現行」を選択すると、リポジトリはそのままです(オブジェクトはマージ済リポジトリに追加されません)。「変更済(A)」を選択すると、オブジェクトがマージ済リポジトリに戻されます。

    • 両方で変更(異なる): オブジェクトは、追加も削除もされませんでしたが、少なくともプロパティの1つが変更されました。行の左側のプラス記号(+)をクリックして、変更されたプロパティ、および元のバージョン、現行バージョン、ならびに変更済バージョンのリポジトリにおける変更されたプロパティの値を表示します。プロパティの値は、短い文字列のみで表示されます。説明、機能、init文字列などの長い文字列は表示されません。

      マージ済バージョンのリポジトリに保持する値のオプションをクリックします。エイリアスなど一部のプロパティでは、「選択内容のマージ」オプションを選択して、1つずつ選択するのではなくプロパティをマージできます。このオプションは、プロパティをマージできる場合のみ使用できます。

      注意:

      通常、「変更済」リポジトリに追加したオブジェクトまたはここから削除したオブジェクトに関して、マージ・デシジョンを行う必要はありません。ただし、このマージの変更統計を表示して、「変更済」に追加したオブジェクトやここから削除したオブジェクトなどの変更のサマリーを確認できます。

    マージ・デシジョンを行うと、表内のそのデシジョンの行が赤から黒に変わります。すべての行に「デシジョン」フィールドの値が含まれると、「終了」ボタンが有効になります。

  12. マージ・デシジョンの実行に加えて、「マージ戦略の定義」画面では別の操作を実行できます。次の表で、マージ戦略の定義について説明します。
  13. 「終了」をクリックします。

この表では、「マージ戦略の定義」画面の要素をリストし、説明します。

要素 説明

「競合」表

「競合」表には、次の列があります。

  • タイプ: 競合があるオブジェクトのタイプ(たとえば、「プレゼンテーション列」)。

  • 名前: 競合があるオブジェクトの名前。

  • 説明: 競合の理由(「現行に追加されました」など)。様々な競合タイプの説明は、前の手順を参照してください。

  • デシジョン: マージ済リポジトリに保持する変更に応じてデシジョン(「現行」、「変更済(A)」、「変更済(D)」、「プロパティ別」など)を選択します。様々なデシジョンの結果の説明は、前の手順を参照してください。

各リポジトリで変更されるプロパティを持つオブジェクトの場合、変更されるプロパティの詳細を含むサブ表(グリッド)が表示されます。このグリッドには、次の列が含まれます。

  • プロパティ: 各リポジトリで変更されたプロパティの名前。

  • オリジナル: 元のリポジトリにあるプロパティの値。

  • 変更済: 変更済リポジトリにあるプロパティの値。この値を保持するには、このオプションを選択します。

  • 現行: 現行のリポジトリにあるプロパティの値。この値を保持するには、このオプションを選択します。

  • 選択内容のマージ: エイリアスなど一部のプロパティでは、このオプションを選択して、いずれかを選択するのではなく、プロパティ値をマージできます。

修飾名の表示

これを選択すると、デシジョン表にあるオブジェクトの完全修飾名が表示されます(「Paint」...「Month Year Ago fact」など)。

注意:

「修飾名の表示」オプションが選択されている場合、オブジェクト名の一部が長すぎて、デシジョン表のセルに入らない場合があります。省略された名前の上にマウスを移動して、オブジェクトまたはプロパティの完全な名前を表示します。あるいは、手動で列のサイズを変更するか、または列セパレータをダブルクリックして列をオブジェクト名の幅に広げます。

デフォルト・デシジョンの設定

クリックすると、管理ツールによる競合の解決方法を選択できます。各競合のデシジョンを手動で設定しない場合はこのオプションを使用します。

管理ツールがすべての未解決および解決済の競合(つまり、デシジョンをすでに指定した競合)を解決する場合は、「すべて」を選択します。このオプションを選択すると、管理ツールはすでに指定した競合のデシジョンを確認し、必要に応じて変更します。

管理ツールが未解決の競合のみを解決する場合は、未決定のみを選択します。つまり、デシジョンを指定していないすべての競合にデシジョンを割り当てます。このオプションを選択すると、管理ツールはすでに指定した競合のデシジョンを保持します。

マージされたRPDの整合性のチェック

これを選択すると、マージ済ファイルが保存される前に整合性のチェックが実行されます。

オブジェクト・ビューの非表示

ダイアログのツリー・パネルを非表示にするには、このオプションを選択します。ツリー・パネルは、競合デシジョン表で選択した行に関して影響を受けるオブジェクトを表示します。

ツリー・パネルを非表示にすると、マージ戦略の定義」画面のパフォーマンスを向上できます。

ファイルへのデシジョンの保存

ファイルへのデシジョンの保存

リポジトリ・サブディレクトリにある一時的な変更を含むファイルを保存し、マージに関する作業を停止し、後で継続できるようにします。変更(デシジョン)を保存した後、「取消」をクリックして、リポジトリのマージダイアログを閉じます。

注意:

デシジョンの数が多い場合、マージ・デシジョンをCSVファイルに保存し、このファイルをExcelまたはテキスト・エディタで開き、マージ・デシジョンを手動で変更することにより、時間を節約できます。次に、更新したマージ・デシジョン・ファイルを「マージ戦略の定義」画面でロードするか、そのデシジョン・ファイルをpatchrpdの引数として含めることができます。

デシジョン・ファイルのロード

デシジョン・ファイルのロード

保存したデシジョン・ファイルをリポジトリ・サブディレクトリからロードし、リポジトリのマージ処理を続行できるようにします。

このオプションは、特に、patchrpdを使用した自動パッチ・マージの実行後に競合を解決する際に役立ちます。「patchrpdを使用したパッチの適用」を参照してください。

名前またはタイプによる検索

検索

オブジェクトの「名前」および「タイプ」で検索します(「初期化ブロック」など)。

再検索

再検索

最新の「検索」値を再検索します。

変更統計の表示

変更統計の表示

このマージの統計(変更済リポジトリから削除されたオブジェクトの数、両方のリポジトリで変更されたオブジェクトの数など)を表示します。

Details

「詳細」ボタン

別のウィンドウのデシジョン表の下の読取り専用のテキスト・ボックスにテキストを表示します。

元の/変更済/現行のリポジトリの表示

リポジトリの表示

選択したリポジトリで影響を受けるオブジェクトのプロパティを表示します。

共通の親を使用しない完全なリポジトリ・マージの実行

Oracle BI管理ツールを使用して、共通の親を使用せずに完全なリポジトリ・マージを実行する方法について説明します。

この方法は、あるリポジトリ(変更済リポジトリ)から別のリポジトリ(現行のリポジトリ)にオブジェクトをインポートする場合に使用します。

注意:

現行のとして定義することを選択したリポジトリでは、「プレゼンテーション」レイヤーは、「物理」レイヤーまたは「ビジネス・モデルとマッピング」レイヤーの、保持するオブジェクトを参照します。「プレゼンテーション」レイヤーのオブジェクトによって参照されない現行のリポジトリのビジネス・モデル、データベースや接続プールなどのオブジェクトは、マージ中に廃棄されます。必要に応じて、マージを実行する前に、これらのオブジェクトを参照するプレースホルダ・サブジェクト・エリアを追加して、必要なオブジェクトが保持されるようにする必要がある場合があります。

マージ・プロセス中にどのオブジェクトが保持され、どのオブジェクトが廃棄されるかの詳細は、「マージ・ルール」を参照してください。

  1. 管理ツールで、「ファイル」を選択してから、マージで元のリポジトリとして機能する「新規リポジトリ」を選択します。
  2. 新規リポジトリの作成ウィザードで、リポジトリの名前を入力します(たとえば、blank.rpd)。
  3. 「メタデータのインポート」「いいえ」を選択します。
  4. このリポジトリに使用するリポジトリ・パスワードを入力し、確認します。
  5. 「終了」をクリックします。
  6. 空のリポジトリを閉じます。
  7. オフライン・モードで現行のリポジトリ(つまり、インポートするオブジェクトを含むリポジトリ)を開きます。
  8. 管理ツールのメニューで、「ファイル」「マージ」を選択します。
  9. 「入力ファイルの選択」画面で、「マージ・タイプ」に「完全なリポジトリ・マージ」を選択します。
  10. 「元のマスター・リポジトリ」の横にある「選択」をクリックし、「リポジトリ」をクリックします。
  11. 空のリポジトリ・ファイルに移動して「開く」をクリックし、パスワード・フィールドは空白のままにします。
  12. 「修正済リポジトリ」フィールドの横にある「選択」をクリックして、目的のリポジトリを選択します。
    1. サブメニューから「リポジトリ」を選択してRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。
    2. バイナリ・リポジトリの場合は、変更済リポジトリを参照して選択し、「開く」をクリックします。
    3. MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。
  13. 適切な「パスワード」フィールドに変更済リポジトリのパスワードを入力します。
  14. 「次」をクリックします。

    競合がある場合は、リポジトリ・マージ・ウィザードの「マージ戦略の定義」にメッセージが表示されます。

  15. 「マージ戦略の定義」で、「デシジョン」リストから「現行」または「変更済」を選択します。

    デシジョン表でオブジェクトを選択すると、デシジョン表の下の読取り専用テキスト・ボックスに、現在のリポジトリでそのオブジェクトに加えられた変更に関する説明が表示されます。「マージ戦略の定義」画面の追加オプション(マージ・デシジョンのカンマ区切り形式(.csv)ファイルへの保存など)の詳細は、表を参照してください。

    マージ・デシジョンを行うと、表内のそのデシジョンの行が赤から黒に変わります。

  16. 「終了」をクリックします。

パッチ・マージの実行

パッチ・マージを使用して、リポジトリに加えられた変更のみを格納したXMLパッチ・ファイルを生成できます。

このパッチを古い(元の)バージョンのリポジトリに適用し、新しいバージョンを作成できます。

このマージ方法は、開発から本番へのシナリオに関して非常に便利であり、Oracle BI Applicationsの顧客がリポジトリをアップグレードする場合にも使用できます。

この項では、2つのリポジトリ間の相違点を含むパッチを生成し、このパッチをリポジトリ・ファイルに適用する方法について説明します。

この項では、次の項目について説明します。

パッチ・マージについて

パッチ・マージでは、現行のリポジトリと元のリポジトリの間の相違点を含むパッチを作成します。

このパッチ・ファイルを変更済リポジトリに適用します。現在および元のリポジトリの違いは、両方のリポジトリの既存のプロジェクトの一致に存在する必要があります。

開発から本番へのシナリオ。元の親リポジトリ、開発の最新変更が組み込まれた現行リポジトリ、および元のリポジトリのデプロイ済コピーである変更済リポジトリが存在します。

パッチを生成するには、現行のリポジトリを開き、元のリポジトリを選択し、次にパッチを作成します。

パッチを適用するには、変更済リポジトリを開いて元のリポジトリを選択してパッチを適用します。

Oracle BI Applicationsのリポジトリ・アップグレード・シナリオ。現行のリポジトリはオラクル社から出荷された最新バージョンのリポジトリで、元のリポジトリはオラクル社から出荷された元のリポジトリです。変更済リポジトリは元のリポジトリにユーザーによる変更が加えられたものです。

パッチを生成するには、現行のリポジトリを開き、元のリポジトリを選択し、次にパッチを作成します。

パッチを適用するには、変更済リポジトリを開いて元のリポジトリを選択してパッチを適用します。

リポジトリ・パッチの生成

Oracle BI管理ツールを使用して2つのリポジトリ間の相違点を含むパッチを生成します。

「オブジェクトの等化」を参照してください。

  1. 管理ツールで、現行のOracle BI EEリポジトリをオフライン・モードで開きます。つまり、パッチに入れる変更を含む更新済リポジトリを開きます。

    注意:

    プロジェクトを使用して変更が行われる場合、メタデータの変更を既存のプロジェクトに追加する必要があります。新しいプロジェクトに行われた変更は、パッチ・モード・プロセス中に失われます。

  2. ファイル」を選択し、「比較」を選択します。
  3. 元のOracle BI EEリポジトリを選択します。サブメニューから「リポジトリ」を選択してRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。
  4. オフラインで開くダイアログで、リポジトリ・パスワードを入力し、「OK」をクリックします。
  5. パッチを生成する前に、変更を等化して基礎のオブジェクトIDをクリーンアップすることをお薦めします。
  6. 「リポジトリの比較」ダイアログで、リポジトリ間の変更を確認します。次に、「パッチの作成」をクリックします。
  7. 「パッチの作成」ダイアログで、パッチ・ファイルの名前(my_patch.xmlなど)を入力し、「保存」をクリックします。

パッチに接続プール・パスワードなどのパスワードが含まれている場合、そのパッチ・ファイルは、現行のリポジトリからリポジトリ・パスワードを使用して暗号化されます。現行のリポジトリ・パスワードは、事実上、そのパッチ・ファイルのパスワードになります。このパッチ・ファイル・パスワードが元のリポジトリのリポジトリ・パスワードと異なるときは、パッチを適用するときにそのパッチ・ファイル・パスワードを指定することが必要な場合があります。

comparerpdユーティリティを使用してコマンドラインでパッチを生成することもできます。「comparerpdを使用したリポジトリの比較」を参照してください。

リポジトリ・パッチの適用

Oracle BI管理ツールを使用して2つのリポジトリ間の相違点を含むパッチを適用します。

注意:

大きなマルチユーザー・リポジトリから小さなサブセット抽出リポジトリにパッチを適用できます。この場合、サブセット内の変更のみがパッチから適用されます。

  1. 管理ツールで、Oracle BIリポジトリをオフライン・モードで開いて、パッチを適用します。
  2. ファイル」→「マージ」を選択します。「リポジトリ・マージ・ウィザード」が表示されます。
  3. マージ・タイプ」で、「パッチ・リポジトリ・マージ」を選択します。このオプションを選択すると、「サブセットの部分マージ」フィールドが表示されます。デフォルトでは、このフィールドが選択され、パッチがサブセットの部分マージとして適用されます。パッチをリポジトリ全体に適用する場合、このオプションをクリアします。
  4. 元のマスター・リポジトリ」の横にある「選択」をクリックして元の親リポジトリを選択します。サブメニューから「リポジトリ」を選択してRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。

    バイナリ・リポジトリの場合は、元のリポジトリを参照して選択し、「開く」をクリックします。MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。

    注意:

    元のリポジトリは変更済(現在開いている)リポジトリと同じにはできません。

  5. 元のリポジトリのリポジトリ・パスワードを入力します。
  6. 「パッチ・ファイル」の横にある「選択」をクリックします。適用するパッチ・ファイルを参照して選択し、「開く」をクリックします。パッチ・ファイルはXML形式であることが必要です。
  7. 多くの場合、パッチ・パスワードフィールドは空白のままでかまいません。パッチ・ファイル・パスワードを入力する必要があるのは、接続プール・パスワードなどオブジェクトのパスワードがパッチ・ファイルに含まれている場合と、そのパッチ・ファイル・パスワードが元のリポジトリ・パスワードとは異なる場合のみです。パッチ・ファイル・パスワードは、現行のリポジトリのパスワードと同じです。
  8. オプションで、「マージ済リポジトリに名前を付けて保存」フィールドの横にある「選択」をクリックして、保存済(パッチ適用済)リポジトリのデフォルトの名前および場所を変更できます。サブメニューから「リポジトリ」を選択してマージ済リポジトリをRPD形式のバイナリ・リポジトリ・ファイルとして保存するか、 「XML」を選択してマージ済リポジトリを一連のMDS XMLドキュメントとして保存します。

    バイナリ・リポジトリの場合は、新しい名前と場所を指定して、「保存」をクリックします。MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。

  9. 「終了」をクリックします。

patchrpdを使用したパッチの適用

patchrpdユーティリティを使用してパッチを適用できます。

管理ツールを使用できないLinuxシステムおよびUNIXシステムでリポジトリのパッチ適用を行う場合にpatchrpdを使用します。patchrpdユーティリティは、WindowsシステムとUNIXシステムの両方で使用できます。patchrpdは、RPD形式のバイナリ・リポジトリでのみ実行できます。

管理ツールのパッチ機能とは異なり、patchrpdには、競合に対して自動的にデフォルトのデシジョンを適用するオプションがあります。また、これは、すべての競合をデシジョン・ファイルに保存する機能も備えており、ユーザーは結果を調べて、追加の手動による変更が必要かどうかを判断できます。「パッチ・プロセスを自動化するためのPatchrpdの使用方法」を参照してください。

patchrpdには、マージ・ルールのセットを選択して適用する機能もあります。デフォルトではパッチのマージ・ルールが使用されますが、オプションで完全な(アップグレード)マージ・ルールまたはマルチユーザー開発マージ・ルールを使用することを選択できます。

patchrpdユーティリティの場所は、次のとおりです。

BI_DOMAIN/bitools/bin

構文

patchrpdユーティリティは次のパラメータを取ります。

patchrpd [-P modified_rpd_password] -C modified_rpd_pathname 
[-Q original_rpd_password] -G original_rpd_pathname [-S patch_file_password] 
-I patch_file_pathname [-S patch_file_2_password -I patch_file_2_pathname ...]
[-D input_decision_file_pathname] -O output_rpd_pathname 
[-V output_decision_file_pathname] [-E] [-M mode] [-R] [-A] [-U] [-N] [-8]

説明:

-P modified_rpd_passwordは、変更済リポジトリのリポジトリ・パスワードで、カスタマ・リポジトリまたはカスタマイズ済リポジトリとも呼ばれます。

-C modified_rpd_pathnameは、変更済リポジトリの名前および場所です。

-Q original_rpd_passwordは、元のリポジトリのリポジトリ・パスワードです。

-G original_rpd_pathnameは、元のリポジトリの名前および場所です。

-S patch_file_passwordは、パッチ・ファイルのパスワードです。パッチ・ファイル・パスワードは、現行のリポジトリのパスワードと同じです。パッチ・ファイル・パスワードを入力する必要があるのは、接続プール・パスワードなどオブジェクトのパスワードがパッチ・ファイルに含まれている場合と、そのパッチ・ファイル・パスワードが元のリポジトリ・パスワードとは異なる場合のみです。

-I patch_file_pathnameは、適用するXMLパッチ・ファイルの名前と場所です。複数の-I引数(およびペアの-S引数も必要)を含めることで複数のパッチを適用できます。

-D input_decision_file_pathnameは、このパッチ・マージの動作に影響を与えるために使用するCSV形式のデシジョン・ファイルの名前と場所です。この引数はオプションです。

-O output_rpd_pathnameは、生成するRPD出力ファイルの名前と場所です。

-V output_decision_file_pathnameは、CSV形式のデシジョン・ファイルの生成を可能にするオプションの引数です。デシジョン・ファイルは、マージによるすべての競合を示します。つまり、デシジョン・ファイルには、管理ツールのマージ・ウィザードの「マージ戦略の定義」画面に表示されるデシジョンがリストされます。デシジョン・ファイルは、ユーザーの入力によって影響を受ける可能性があるすべてのアイテムの記録を提供します。この引数は、-U引数とともに使用する必要があります。

-Eは、等化ステップのスキップを可能にするオプションの引数です。

-M modeは、マージのモードの変更を可能にするオプションの引数です。デフォルトでは、patchrpdはパッチ・モードで実行され、可能なかぎり多くの変更が警告なしで適用されます。このデフォルトを変更するため、モードについては、マルチユーザー開発マージのマージ・ルールを使用するにはmudを、完全なマージのマージ・ルールを使用するにはupgradeを指定します。「マージ・ルール」を参照してください。

デフォルトでは、管理ツールのマージ機能は完全なマージを使用します。管理ツールのデフォルト・マージ機能と一致させるためにpatchrpdユーティリティを実行する場合、-M mode引数のupgradeを指定する必要があります。

-Rは、論理列の整合性チェックをスキップするオプションの引数です。このオプションは、パッチ・ファイルに論理列から物理列へのマッピングが含まれていない場合に、パッチ・プロセスを高速化できます。

-Aは、マルチユーザー開発環境でサブセット・パッチをスキップし、かわりに入力リポジトリ・ファイルを使用してパッチを適用できるオプションの引数です。

-Uは、競合に対してデフォルトのデシジョンを自動的に適用して、patchrpdを正常に終了できるようにするオプションの引数です。このパラメータを含めない場合、競合が検出されると、patchrpdによって警告が表示されて終了します。

-Nは、すべての非致命的エラーを無視するために使用するオプションの引数です。非致命的エラーの例として、未解決のオブジェクト、重複したオブジェクト、壊れた式または不正確な式などがあります。

-8はUTF-8エンコーディングを指定します。

注意:

modified_rpd_passwordoriginal_rpd_passwordおよびpatch_file_passwordなどのすべてのパスワードの引数はオプションです。パスワード引数を入力しないと、コマンドを実行したときに、必要なパスワードの入力を求めるプロンプトが表示されます。セキュリティ侵害のリスクを最小限にとどめるために、パスワード引数をコマンドラインやスクリプトで指定しないことをお薦めします。パスワード引数のサポートは下位互換性の保持を目的としており、将来のリリースでは削除される予定です。スクリプト上の理由から、標準入力によってパスワードを指定できます。

次に例を示します。

patchrpd -C customer.rpd -G original.rpd -I patch.xml -O patched.rpd 
-V decision.csv -U
Give password for customer repository: my_modified_rpd_password
Give password for original repository: my_original_rpd_password

この例では、patch.xmlというパッチがcustomer.rpdリポジトリに適用され、patched.rpdという出力リポジトリおよびdecision.csvという出力デシジョン・ファイルが生成されます。

注意:

すべてのファイル(リポジトリ・ファイルとXMLパッチ・ファイルを含む)のフルパス名を入力にしてください(これらが異なるディレクトリにある場合)。