ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Data Integrator開発者ガイド
11g リリース1 (11.1.1)
B62260-04
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

13 シナリオの処理

この章では、シナリオの処理方法について説明します。シナリオは、ソース・コンポーネント(インタフェース、パッケージ、プロシージャ、変数)を本番に移行するために設計されます。シナリオは、このコンポーネント用のコード(SQL、シェルなど)の生成結果として作成されます。

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

13.1 シナリオの概要

コンポーネントが完成し、テストした後、実際の状況に対応するシナリオを生成できます。この操作は、デザイナ・ナビゲータで実行します。

シナリオのコード(生成された言語)は確定されます。確定後に、シナリオの作成の基となったコンポーネントが変更された場合でも、シナリオが変更されることはありません。

パッケージ、プロシージャ、インタフェースまたは変数のシナリオを生成できます。プロシージャ、インタフェースまたは変数用に生成されるシナリオは、プロシージャの実行、インタフェース、または変数のリフレッシュを行う単一ステップのシナリオです。

シナリオ変数は、シナリオで使用される変数であり、シナリオの開始時にその動作をパラメータ化するために設定する必要があります。

生成されたシナリオは、作業リポジトリに格納されます。格納されたシナリオは、エクスポートして別のリポジトリ(リモートまたはリモート以外)にインポートし、様々なコンテキストで使用できます。シナリオを作成できるのは開発作業リポジトリからのみですが、開発作業リポジトリと実行作業リポジトリの両方にインポートできます。

シナリオは、開発環境では、デザイナ・ナビゲータの「プロジェクト」ツリーにあるソース・コンポーネントの下に表示されます。また、開発環境および本番環境のオペレータ・ナビゲータの「シナリオ」ツリーに表示されます。

シナリオはバージョン管理することもできます。詳細は、第19章「バージョン管理の使用」を参照してください。

シナリオは、Oracle Data Integrator Studioのコマンドラインから起動でき、ランタイム・エージェントの組込みスケジューラまたは外部スケジューラを使用してスケジュールできます。シナリオの実行およびスケジュールについては、第21章「統合プロセスの実行」を参照してください。

13.2 シナリオの生成

オブジェクトに対するシナリオの生成では、本番環境でのデプロイおよび実行に使用する、このオブジェクト用のコードがコンパイルされます。

シナリオを生成するには:

  1. デザイナ・ナビゲータで、プロジェクトの下にある、シナリオを生成するパッケージ、インタフェース、プロシージャまたは変数をダブルクリックします。対応するオブジェクト・エディタが表示されます。

  2. 「シナリオ」タブで、「シナリオの生成」をクリックします。「新規シナリオ」ダイアログが表示されます。

  3. シナリオの「名前」および「バージョン」を入力します。この名前は、オペレーティング・システム・コマンドで使用できるように、自動的に大文字に変換され、特殊文字はアンダースコアに置換されます。

    シナリオの「名前」および「バージョン」フィールドは、次の値を使用して事前設定されます。

    • 名前: そのコンポーネントに生成した最後のシナリオと同じ名前

    • バージョン: バージョン番号は、自動的に増分されるか(最後のバージョンが整数の場合)、現在の日付が設定されます(最後のバージョンが整数でない場合)

    そのコンポーネントにシナリオが作成されていない場合は、シナリオの最初のバージョンが自動的に作成されます。

    新規シナリオの名前は、「シナリオ命名規則」ユーザー・パラメータに従って、コンポーネント名を基に命名されます。詳細は、付録B「ユーザー・パラメータ」を参照してください。

  4. 「OK」をクリックします。

  5. シナリオで変数を使用する場合は、「シナリオ変数」ダイアログで、シナリオのパラメータとして使用する変数を定義できます。

    • すべての変数をパラメータとして使用する場合は、「すべてを使用」を選択します

    • 選択した変数をパラメータとして使用する場合は、「選択済を使用」を選択します

    • すべての変数の選択を解除する場合は、「なし」を選択します

  6. 「OK」をクリックします。

シナリオは「シナリオ」タブに表示されます。また、プロジェクトの下にあるソース・オブジェクトの「シナリオ」ノードの下に表示されます。

13.3 シナリオの再生成

既存のシナリオを同じ名前とバージョン番号で再生成できます。再生成では、ソース・オブジェクトの内容から生成したシナリオで既存のシナリオを置換できます。既存のシナリオに関連付けられているスケジュールは保持されます。

シナリオを再生成するには:

  1. 「プロジェクト」アコーディオンでシナリオを選択します。

  2. 右クリックして「再生成」を選択します。

  3. 「OK」をクリックします。


注意:

シナリオの再生成は元に戻すことができません。重要なシナリオの場合は、新しいバージョン番号を使用してシナリオを生成することをお薦めします。


13.4 シナリオ・グループの生成

プロジェクトまたはフォルダにグループ化されたパッケージ、インタフェース、プロシージャおよび変数のセットが完成し、テストした後、シナリオを生成できます。この操作は、デザイナ・ナビゲータで実行します。

シナリオ・グループを生成するには:

  1. オブジェクトのグループが含まれているプロジェクトまたはフォルダを選択します。

  2. 右クリックして「すべてのシナリオを生成」を選択します。

  3. 「シナリオ生成」ダイアログで、シナリオの「生成モード」を次の中から選択します。

    • 置換: 各オブジェクトに対して、最終バージョンのシナリオを、同じID、名前およびバージョンの新しいシナリオで置換します。セッション、シナリオ・レポートおよびスケジュールは削除されます。オブジェクトに対するシナリオが存在していない場合は、バージョン番号001のシナリオが作成されます。

    • 再生成: 各オブジェクトに対して、最終バージョンのシナリオを、同じID、名前およびバージョンの新しいシナリオで置換します。スケジュール、セッションおよびシナリオ・レポートは保持されます。オブジェクトに対するシナリオが存在していない場合、このモードではシナリオは作成されません。

    • 作成: 各オブジェクトに対して、最終バージョンのシナリオと同じ名前で、バージョン番号が自動的に増分された新しいシナリオが作成されます。オブジェクトに対するシナリオが存在していない場合は、オブジェクト名に基づいて命名されたバージョン番号001のシナリオが作成されます。


    注意:

    そのコンポーネントにシナリオが作成されていない場合は、シナリオの最初のバージョンが自動的に作成されます。

    新規シナリオの名前は、「シナリオ命名規則」ユーザー・パラメータに従って、コンポーネント名を基に命名されます。詳細は、付録B「ユーザー・パラメータ」を参照してください。

    「作成」生成モードの選択時は、最終シナリオのバージョンが整数の場合、バージョン番号は自動的に1ずつ増加します。整数以外の場合は、現在の日付が自動的に設定されます。


  4. 「生成するオブジェクト」セクションで、シナリオを生成するオブジェクトのタイプを選択します。

  5. 「マーカー・フィルタ」セクションで、マーカー・グループのマーカーに従って、生成するコンポーネントをフィルタ処理できます。

  6. 「OK」をクリックします。

  7. シナリオで変数を使用する場合は、「シナリオ変数」ダイアログで、シナリオのパラメータとして使用する変数を定義できます。すべての変数をパラメータとして使用する場合は、「すべてを使用」を選択します。または、「選択済を使用」を選択してパラメータ変数を選択します。

13.5 シナリオのエクスポート

エクスポート(およびインポート)の手順によって、Oracle Data Integratorオブジェクトをあるリポジトリから別のリポジトリに転送できます。

単一のシナリオ、またはシナリオのグループをエクスポートできます。

1つのシナリオのエクスポートについては、20.2.4項「1つのODIオブジェクトのエクスポート」を参照してください。

シナリオ・グループをエクスポートするには:

  1. シナリオのグループが含まれているプロジェクトまたはフォルダを選択します。

  2. 右クリックして「すべてのシナリオのエクスポート」を選択します。「すべてのシナリオのエクスポート」ダイアログが開きます。

  3. 「すべてのシナリオのエクスポート」ダイアログで、エクスポート・パラメータを次のように指定します。

    パラメータ 説明

    エクスポート・ディレクトリ

    エクスポート・ファイルが作成されるディレクトリ。

    「エクスポート・ディレクトリ」を指定しない場合、エクスポート・ファイルは「デフォルトのエクスポート・ディレクトリ」に作成されることに注意してください。

    子コンポーネント・エクスポート

    このオプションを選択すると、エクスポート対象のオブジェクトにリンクされたオブジェクトもエクスポートされます。これらのオブジェクトは、ツリーで、エクスポートされるオブジェクトの下に表示されるオブジェクトです。このオプションは選択されたままにしておくことをお薦めします。詳細は、子コンポーネントを伴うオブジェクトのエクスポートを参照してください。

    既存のファイルを警告なしで置換します

    このオプションを選択すると、既存のファイルがエクスポートのファイルで置換されます。


  4. シナリオをエクスポートするオブジェクトのタイプを選択します。

  5. 拡張オプションを設定します。一連のオプションを使用すると、XML出力ファイル形式をパラメータ化できます。デフォルト値のままにしておくことをお薦めします。

  6. パラメータ 説明

    XMLバージョン

    エクスポート・ファイルに指定されるXMLバージョン。XMLファイル・ヘッダーのパラメータxmlバージョン

    <?xml version="1.0" encoding="ISO-8859-1"?>

    キャラクタ・セット

    エクスポート・ファイルに指定するエンコーディング。XMLファイル・ヘッダーのパラメータencodingの値です。

    <?xml version="1.0" encoding="ISO-8859-1"?>

    Javaキャラクタ・セット

    ファイル生成に使用されるJavaキャラクタ・セット。


  7. 「OK」をクリックします。

XML形式のエクスポート・ファイルが指定した場所に作成されます。

13.6 本番へのシナリオのインポート

デザイナから生成したシナリオをエクスポートして、開発リポジトリまたは実行リポジトリにインポートできます。この操作は、シナリオを別のリポジトリ(異なる環境やサイト上など)にデプロイするために使用されます。

開発リポジトリへのシナリオのインポートは、デザイナ・ナビゲータまたはオペレータ・ナビゲータで実行します。実行リポジトリの場合、この目的で使用できるのはオペレータ・ナビゲータのみです。

シナリオをインポートする方法は、次の2通りあります。

シナリオは、バージョンおよびソリューションを使用して、本番にデプロイおよび転送することもできます。詳細は、第19章「バージョン管理の使用」を参照してください。

13.6.1 シナリオのインポート

1つ以上のシナリオをOracle Data Integratorにインポートするには:

  1. オペレータ・ナビゲータで、「シナリオ」パネルを選択します。

  2. 右クリックして「インポート」「シナリオのインポート」の順に選択します。

  3. 「インポート・タイプ」を選択します。インポート・タイプの詳細は、第20章「エクスポート/インポート」を参照してください。

  4. 「ファイル・インポート・ディレクトリ」を指定します。

  5. シナリオとともにエクスポートされたスケジュールもインポートする場合は、「スケジュールのインポート」オプションを選択します。

  6. インポートするシナリオを「インポートするファイルを選択します」リストから1つ以上選択します。

  7. 「OK」をクリックします。

シナリオは作業リポジトリにインポートされます。また、オペレータ・ナビゲータの「シナリオ」ツリーに表示されます。この作業リポジトリが開発リポジトリの場合、これらのシナリオは、そのソースのパッケージ、インタフェース、プロシージャまたは変数にも関連付けられます。

13.6.2 シナリオの置換

エクスポートしたシナリオでシナリオを置換する場合は、「置換のインポート」モードを使用します。

シナリオを置換モードでインポートするには:

  1. デザイナ・ナビゲータまたはオペレータ・ナビゲータで、置換するシナリオを選択します。

  2. シナリオを右クリックして、「置換のインポート」を選択します。

  3. 「オブジェクトの置換」ダイアログで、シナリオのエクスポート・ファイルを指定します。

  4. 「OK」をクリックします。

13.6.3 異なるリポジトリからのシナリオの使用

シナリオは、生成された作業リポジトリとは異なる作業リポジトリから操作する必要がある場合があります。

次に、このタイプのプロセスが発生する組織の例を2つ示します。

  • 企業に、同じソフトウェア・アプリケーションを使用する代理店が多数ある場合。IT本部では、データを中央データ・センターに一元化するパッケージとシナリオを開発します。これらのシナリオは、各代理店で同様に実行されるように設計されます。

  • 企業に、ソフトウェア・アプリケーションの開発、調整および運用を目的とした3つの別個のIT環境が存在している場合。この企業のプロセスでは、完全に独立した環境が要求されるため、リポジトリを共有できません。

前提条件

この組織の前提条件は、各環境(サイト、代理店または環境)に作業リポジトリをインストールしていることです。この作業リポジトリに関連付けられるマスター・リポジトリのトポロジには、論理アーキテクチャの観点から互換性がある必要があります(同じ論理スキーマ名)。物理アーキテクチャで記述される接続特性は、異なっていてもかまいません。

一部のプロシージャまたはインタフェースでコンテキスト・コードを明示的に指定する場合は、ターゲット・トポロジに同じコンテキスト・コードが含まれる必要があることに注意してください。トポロジ(つまり、物理アーキテクチャと論理アーキテクチャ)は、開発のマスター・リポジトリからエクスポートし、ターゲット・リポジトリにインポートすることもできます。この操作は、トポロジ・モジュールを使用して実行します。この場合、物理トポロジ(サーバーのアドレス)は、シナリオを操作する前にパーソナライズする必要があります。トポロジのインポートでは、ターゲット・リポジトリにすでに存在するデータ・サーバーは変更されず、単に新規データ・サーバーが参照されることにも注意してください。

異なる作業リポジトリからシナリオを操作するには:

  1. 元のリポジトリからシナリオをエクスポートします(右クリックして「エクスポート」)

  2. シナリオ・エクスポート・ファイルをターゲット環境に転送する

  3. ターゲット環境でデザイナ・ナビゲータを開く(ターゲット・リポジトリに接続)

  4. エクスポート・ファイルからシナリオをインポートする

13.7 シナリオの暗号化および復号化

シナリオを暗号化すると、重要なコードを保護できます。暗号化されたシナリオは実行できますが、復号化しないかぎり、読み取ったり変更することはできません。暗号化されたシナリオによってログに生成されるコマンドも読み取ることはできません。

Oracle Data Integratorでは、個人暗号化鍵に基づいたDES暗号化アルゴリズムが使用されます。この鍵は、ファイルに保存して、暗号化または復号化操作を実行する際に再利用できます。


警告:

暗号化されたシナリオまたはプロシージャを暗号化鍵なしで復号化する方法はありません。したがって、この鍵は安全な場所に保管しておくことをお薦めします。


シナリオを暗号化するには:

  1. デザイナ・ナビゲータまたはオペレータ・ナビゲータで、暗号化するシナリオを選択します。

  2. 右クリックして「暗号化」を選択します。

  3. 「暗号化オプション」ダイアログで、次のいずれかの操作を実行します。

    • 個人キーで暗号化します: 個人キー・ファイルの場所を指定するか、個人キーの値を入力して、すでに存在している個人キーで暗号化します。

    • 新規暗号化鍵を取得します: 新しい鍵を生成します。

  4. 「OK」をクリックしてシナリオを暗号化します。新しい鍵の生成を選択した場合は、ダイアログに新しい鍵も表示されます。「保存」をクリックして、鍵をファイルに保存します。


注意:

文字数が少なすぎる個人キーを入力すると、キー・サイズが無効であるというエラーが発生します。この場合は、より長い個人キーを入力してください。個人キーには、10個以上の文字数が必要です。


シナリオを復号化するには:

  1. 復号化するシナリオを右クリックします。

  2. 「復号化」を選択します。

  3. 「シナリオ復号化」ダイアログで、次のいずれかの操作を実行します。

    • 既存の暗号化鍵ファイルを選択します。

    • 個人キーに対応する文字列を入力(または貼付け)します。

復号化が完了するとメッセージが表示されます。