13 プロシージャ
プロシージャとは
Oracle Data Integratorのプロシージャについて学習します。
Oracle Data Integrator (ODI)のプロシージャは順序で実行される一連のコマンドから構成されます。コマンドには、データベース・エンジン、エージェントが実行されているオペレーティング・システムまたはODIで直接実行できるコードが含まれています。プロシージャのオプションを定義して、実行時にその動作を制御することもできます。プロシージャの長所は、プロシージャは再使用可能で、パッケージに挿入できるという点です。したがって、コマンドから構成されるプロシージャと同様に、パッケージにはステップとしていくつかのプロシージャを含むことができます。
パッケージまたはシナリオでプロシージャを使用できます。または、デザイナ・ナビゲータから直接実行することもできます。
- 電子メール管理者のプロシージャには、OdiSendMail電子メール・ツールをコールする単一のコマンドが含まれています。オプションを追加して電子メール・アドレスを指定できます。したがって、管理者の電子メール・アドレスを変更する際に、プロシージャを変更する必要はありません。複数の場所で異なるパラメータを指定してプロシージャを使用し、電子メールを様々なユーザーに送信することもできます。
- ODIプロシージャを作成し、RDBMS表を作成してこれにデータを移入できます。
『Oracle Data Integratorでの統合プロジェクトの開発』のプロシージャの概要に関する項を参照してください。
『Oracle Data Integratorでの統合プロジェクトの開発』のプロシージャの使用に関する項を参照してください。
プロシージャの作成
Oracle Data Integratorでプロシージャを作成する手順について学習します。
- 空白のプロシージャの作成
マッピングおよびパッケージと同様に、プロシージャはプロジェクト・フォルダに含まれています。
- プロシージャへのコマンドの追加
一連のタスクを実行するプロシージャを作成しました。ただし、このプロシージャでは、常に同じパラメータで同じタスクを実行します。プロシージャの柔軟性をさらに高めるために、オプションを追加できます。
- プロシージャへの新規オプションの追加
オプションをプロシージャに追加して、プロシージャをカスタマイズ可能にします。どのオプションも定義する必要はありません。
これらのオプションは、プロシージャへのパラメータとして機能します。これは、コードを変更することなく、様々な環境で様々なパラメータを使用して同じプロシージャを使用できるということです。
プロシージャのオプションは、パラメータとして機能します。
オプションの使用方法は2つあり、これによりプロシージャの実行方法を制御できます。- チェック・ボックス・オプションは、プロシージャで個々のコマンドをスキップする際に使用します。たとえば、falseの場合にコマンドを完全にスキップするオプションを含めることができます。
- 値またはテキスト・オプションは、より小さいレベルでプロシージャの動作に影響を及ぼすコマンドのテキストで使用します。たとえば、電子メールの件名は値オプションにして、OdiSendMailツールに渡すことができます。
両方の場合、オプションのデフォルト値を定義します。これは、プロシージャの使用時に他の値が指定されない場合に使用される値です。パッケージでプロシージャをコールする場合、デフォルト値のいずれかを上書きして、特定のコンテキストのプロシージャをカスタマイズできます。
- プロシージャを保存して実行します。
通常、ODIプロシージャを実行するには、パッケージ内からこれを実行します。ただし、手動でプロシージャを実行してテストすることもできます。プロシージャ・ウィンドウで「実行」ボタンをクリックして、これを実行します。すべてのオプションでデフォルト値が使用されます。ただし、オプションのデフォルト値を上書きできます。プロシージャ・ステップをクリックしてから、「プロパティ」ペインから「オプション」タブをクリックします。ここで、プロシージャ・ステップの実行時に使用されるオプションの値を選択できます。
『Oracle Data Integratorでの統合プロジェクトの開発』のプロシージャの作成に関する項を参照してください。
プロシージャの作成、移入および実行の例は、Oracle By Exampleチュートリアル(Oracle Data Integrator 12c - プロシージャおよびシナリオの作成)の項2 - プロシージャの作成および実行に関する項に記載されています。
空白のプロシージャの作成
Oracle Data Integratorで空白のプロシージャを作成する方法について学習します
- プロシージャを作成するプロジェクトおよびプロジェクト・フォルダに移動します。「プロシージャ」ノードを右クリックして、「新規プロシージャ」を選択します。
- わかりやすい名前および説明をプロシージャに指定します。プロシージャが説明に記載している制限を含める場合があります。
- (オプション)デフォルトのターゲットおよびソース・テクノロジを設定します。これらのテクノロジを設定しない場合、各コマンドで個別に設定する必要があります。常に個別のステップにこれらのテクノロジを上書きできます。
プロシージャへのコマンドの追加
Oracle Data Integratorでコマンドをプロシージャに追加する方法について学習します
- プロシージャ・ウィンドウの「タスク」タブをクリックします。
- 「コマンドの追加」(緑色のプラス記号)アイコンをクリックします。コマンドのウィンドウが表示されます。
- コマンドの名前を入力します。プロシージャを実行するときにオペレータ・ナビゲータでこの名前が表示されるため、これを特定しやすく、かつわかりやすくします。
- コマンドが失敗した場合でもプロシージャが実行されるように、「エラーの無視」チェック・ボックスを選択します。
- 「ターゲットに対するコマンド」および「ソースに対するコマンド」オプションで適切なオプションを選択します。(コマンドでは同じコマンド内の2つの場所(ソースおよびターゲット)でコードを実行できることに注意してください。)最初にターゲットで「コマンド」をクリックします。
- コマンドで使用されるテクノロジを選択します。これは、使用可能なコードおよびODIがコードを生成する方法に影響を及ぼします。
- ユーザーがプロシージャを実行するときにコンテキストを選択できるように、コンテキストを<実行コンテキスト>として維持します。「スキーマ」および「コンテキスト」フィールドは、データベース問合せの論理スキーマおよび実行コンテキストを示します。