「プロシージャーの呼び出し」アクティビティー

実行時に、「プロシージャーの呼び出し」アクティビティーによって、データベースでストアード・プロシージャーが実行されます。「プロシージャーの呼び出し」アクティビティーの構成を Studio で実行する前に、 ストアード・プロシージャーを作成して、データベースにインストールしておく必要があります。

注: Informix® データベースでのストアード・プロシージャーに対する関数名の多重定義はサポートされません。ストアード・プロシージャーには、その署名が固有な場合でも、Informix で同じ名前を付けることはできません。

「プロシージャーの呼び出し」アクティビティーをオーケストレーションに追加する

  1. オーケストレーションを作成するか、または開きます。オーケストレーションのグラフィカル表現が開きます。
  2. 「アクティビティー」タブを選択し、「データベース」フォルダーを展開します。
  3. 「プロシージャーの呼び出し」アクティビティーをオーケストレーションにドラッグします。
  4. 「プロシージャーの呼び出し」アクティビティーを選択します。

データベース・エンドポイントを作成、選択、または編集する

  1. 「チェックリスト」から「エンドポイントの選出」タスクをクリックし、次のいずれかのアクションを選択します。
    • 既存のエンドポイントを選択します。
      1. 「参照」を選択します。「プロジェクト・エクスプローラー」が開きます。
      2. 既存のエンドポイントを選択し、「OK」をクリックします。 『「プロシージャーの呼び出し」アクティビティーを構成する』アクティビティー手順までスキップします。
    • 既存のエンドポイントを選択し、そのエンドポイントを編集します。
      1. 「参照」を選択します。「プロジェクト・エクスプローラー」が開きます。
      2. 既存のエンドポイントを選択し、「OK」をクリックします。
      3. 「編集」をクリックします。「エンドポイントの編集」ペインが表示されます。
    • 新しいエンドポイントを作成します。
      1. 「新規作成」を選択します。「エンドポイントの作成」ペインが開きます。
  2. データベース・エンドポイントを作成または編集します。

「プロシージャーの呼び出し」アクティビティーを構成する

  1. 「チェックリスト」から、「ストアード・プロシージャー」をクリックします。 「ストアード・プロシージャー」ペインが開きます。
  2. 「参照...」をクリックします。「ストアード・プロシージャーの表示」ダイアログ・ボックスが表示されます。
  3. 選択したユーザー・スキーマを持つ、表示されたストアード・プロシージャーのみでなく、データベース内のすべてのストアード・プロシージャーを表示するには、「クリア」をクリックします。
  4. リストから「ストアード・プロシージャー」を選択します。
  5. 「OK」をクリックします。選択したストアード・プロシージャーのパラメーター情報が「ストアード・プロシージャー」ペインに表示されます。
  6. (最初にデータベース・エンドポイントから取得された) 現在の文字エンコードを変更するには、「エンコード」リストから別のエンコード・オプションを選択します。 これによって、ストアード・プロシージャーのすべての入力パラメーターについてデフォルトの文字エンコードが変更されます。
  7. デフォルトでは、ストアード・プロシージャーのすべての入出力 (IN、INOUT、RETURN、OUT) パラメーターが選択されます。ストアード・プロシージャーに対して定義された入力パラメーターと出力パラメーターをすべて含める必要はありません。出力パラメーター (INOUT、RETURN、OUT) の「使用」チェック・ボックスをクリアすると、「入力のマップ」タスクで出力パラメーターが使用できなくなることを意味します。入力パラメーター (IN、INOUT) の「使用」チェック・ボックスをクリアすると、「入力のマップ」タスクで入力パラメーターが使用できなくなることを意味します。「使用」チェック・ボックスは、実行時に入力値を指定する必要がない入力パラメーターの場合のみクリアしてください。ストアード・プロシージャーの一部の入力パラメーターにはデフォルト値が存在することがあります。

    ほとんどのデータベースは単一の戻りパラメーターのみを返します。これらのデータベースでは、戻りパラメーターの「使用」チェック・ボックスを選択すると、戻り値は、「出力のマップ」タスクの「アクティビティーから」ペインで単一の results/result/RETURN_VALUE ノードに返されます。ただし、Informix データベースでは複数の戻りパラメーターがサポートされ、Informix データベースでは、戻りパラメーターは反復 results/result/result/resultsSets/any ノードに返されます。 1 つのパラメーターがストアード・プロシージャーから返される場合でも、戻りパラメーターは results/result/result/resultsSets/any ノードに返されます。 result ノード (resultSet という子ノードを含む) の内容を変数にコピーするには、マップで CopyOf 機能を使用します。CopyOf 機能がソース・ノードの値を宛先ノードに正しくコピーするには、 宛先変数の XML スキーマがソース・ノードの XML スキーマと一致しなければなりません。 詳しくは、『CopyOf 機能』を参照してください。

  8. 行を列値でソートするには、列の見出しをクリックします。例えば、列名で行をソートするには、列の「列名」見出しをクリックします。列見出しの右側に矢印が表示されます。 上矢印は、列が a で始まり z へと続くアルファベット順でソートされていることを示します。 下矢印は、列が z で始まり a へと続く逆のアルファベット順でソートされていることを示します。 アルファベット順を逆にするには矢印をクリックします。
  9. 必要に応じて、各照会用入力パラメーターの「データ型」「エンコード」、または「ヌル可能」値の設定を変更します。 新しく選択を行うフィールドをクリックします。
    • データ型 - デフォルトでは、パラメーターのデータ型。パラメーターに代替のデータ型を選択するには、「データ型」セルをクリックして、対応するセルのリストから別の「データ型」を選択します。「UNSUPPORTED」と示されているデータ型は変更する必要があります。
      注: (MONEY および XMLTYPE データ型の場合) Oracle データベースの XMLTYPE データ型と SQL Server データベースの MONEY データ型については、Studio によって自動的には正しいデータ型が関連付けられないため、ユーザーが適切なデータ型を手動で選択する必要があります。
    • エンコード - デフォルトでは、データベース・レベルまたは表レベルのいずれかで設定された現在のデフォルト・エンコード。パラメーターに必要なエンコードが、現在のデフォルト・エンコードと異なる場合は、「エンコード」セルをクリックして、リストから別のエンコードを選択することによって、別のエンコードを選択します。
    • サイズ - 表で定義された列のサイズ。このサイズはデータベース表から取得され、構成することはできません。
  10. パラメーターのプロパティーをすべてデフォルトに再設定するには、「リセット」をクリックします。これによって、すべてのパラメーターの「使用」オプションも選択されます。
  11. 配信ルールを構成します。
    注: 「配信ルール」タスクで「1 回のみ」オプションを選択する場合は、実行時に統合アプライアンスで使用されるコントロール表を作成する必要があります。 Studio から統合アプライアンスにオーケストレーションを公開した後で、コントロール表を作成します。プロジェクトをデプロイする前に、Web 管理コンソール (WMC) を使用して、コントロール表を作成します。
    注: 「1 回のみ」オプションを選択する場合は、 パーシスタンスを使用可能にする必要があります。詳しくは、『パーシスタンスを使用可能にする』を参照してください。
  12. 再試行オプションを構成します。
 

アクティビティーの入力をマップする

  1. 「チェックリスト」「入力のマップ」タスクを選択します。 このアクティビティーの入力パラメーターが、 「アクティビティーへ」ペインの calls エレメントの下に表示されます。「アクティビティーへ」ペインに表示される入力パラメーターは、「ストアード・プロシージャー」タスクで選択した IN および INOUT パラメーターに対応します。「配信ルール」「複数の行を 1 つのメッセージにまとめる」チェック・ボックスが選択されている場合、複数オカレンスのアイコンが call エレメントの横に表示されます。
  2. 表示されるすべての入力パラメーターをマップします。マッピングの一般的な説明については、『マップの作成』を参照してください。

アクティビティーの出力をマップする

  1. 「チェックリスト」から、「出力のマップ」タスクを選択します。 このアクティビティーの出力パラメーターが、 「アクティビティーから」ペインの results エレメントの下に表示されます。「アクティビティーから」ペインに表示される出力パラメーターは、「ストアード・プロシージャー」タスクで選択した OUT、RETURN、および INOUT パラメーターに対応します。

    「配信ルール」「複数の行を 1 つのメッセージにまとめる」チェック・ボックスが選択されている場合、複数オカレンスのアイコンが result エレメントの横に表示されます。

    ストアード・プロシージャーに戻りパラメーターがない場合でも、「プロシージャーの呼び出し」アクティビティーの「アクティビティーから」ペインには resultSet という反復ノードが表示されます。実行時に、このアクティビティーから開始されたストアード・プロシージャーが結果セットを返す場合は、この結果セットは、resultSet ノードのアクティビティーから返されます。例えば、ストアード・プロシージャーが Select ステートメントを開始する場合は、Select ステートメントからの結果セットは、resultSet ノードに返されます。 result ノード (resultSet という子ノードを含む) の内容を変数にコピーするには、マップで CopyOf 機能を使用します。  
    重要: CopyOf 機能がソース・ノードの値を宛先ノードに正しくコピーするには、 宛先変数の XML スキーマがソース・ノードの XML スキーマと一致しなければなりません。 詳しくは、『CopyOf 機能』を参照してください。
  2. 必要な出力パラメーターを変数にマップします。マッピングについての一般的な説明は、『マップの作成』を参照してください。このアクティビティーに関しては、出力パラメーターをマップする必要はありません