機械翻訳について

カスタム・イベントの起動によるアクション・チェーンの開始

アクション・チェーンで「イベントの起動」アクションを使用してカスタム・イベントをトリガーできます。これにより、別のアクション・チェーンが開始され、通知の表示やデータの変換などが行われます。 JavaScriptモジュール関数でイベント・ヘルパーのfireCustomEvent()メソッドを使用して、カスタム・イベントをトリガーすることもできます。

「イベントの起動」アクションを使用してカスタム・イベントをトリガーする方法を学習するには、「火災イベント・アクションの追加」を参照してください。

この例では、モジュール関数を使用して表のojRowActionイベントにサブスクライブし、アクション・チェーンを開始するカスタム・イベントをトリガーします。 アクション・チェーンによって、選択した行のデータがページ変数に保存されます。
jsac-add-listener-component.pngの説明は以下のとおりです
図jsac-add-listener-component.pngの説明

(モジュール関数のイベント・ヘルパーの詳細は、「モジュール機能イベント・ヘルパー」を参照してください。)

  1. 選択した行データを保持するオブジェクト型のページ変数を作成します:

  2. JavaScriptファンクション(モジュール・ファンクション)を作成して、表のojRowActionイベントをサブスクライブします。このイベントは、ユーザーが表の行をクリックするとトリガーされます。 このojRowActionイベントを使用してカスタム・イベントをトリガーします。これにより、行のデータをrowDataページ変数に保存するアクション・チェーンが開始されます。
    ファンクションを作成するには、JavaScriptタブを選択します。 コンテキストのeventHelperオブジェクトのfireCustomEvent()メソッドを使用して、カスタム・イベントをトリガーし、必要なペイロードを渡します。 eventパラメータには、行のデータ(event.detail.context.data)が含まれます。

    コード例を次に示します:
        constructor(context) {
          this.eventHelper = context.getEventHelper();
        }
    
        subscribeToTableRowActionEvent(table) {
          table.addEventListener("ojRowAction", (event) => {
            this.eventHelper.fireCustomEvent("onRowAction_CustomEvent", {rowData: event.detail.context.data});
          });
        };
  3. ページの起動時にトリガーされる、ページのvbEnterイベントのイベント・リスナーを作成します。 このイベント・リスナーを使用して、表のojRowActionイベントにサブスクライブするファンクションをコールするアクション・チェーンを開始します。
    1. ページの「イベント・リスナー」タブを選択し、「+イベント・リスナー」をクリックします。
    2. 「イベントの選択」ステップで、「ライフサイクル・イベント」の下のvbEnterを選択し、「次」をクリックします。

    3. 「アクション・チェーンの選択」ステップで、「ページ・アクション・チェーン」の横にある「追加」アイコンをクリックします。

      このリスナーのカスタム・イベントに入力パラメータ(このパラメータには含まれません)がある場合、アクション・チェーンは、カスタム・イベントの入力パラメータを含むevent入力パラメータを使用して作成されます。
  4. アクション・チェーンを作成して、表のojRowActionイベントをサブスクライブするファンクションをコールします。 コール関数処理をキャンバスに追加します。 Function NameプロパティをJavaScriptファンクションに設定し、tableパラメータを使用してファンクションに表を渡します:

  5. ここで、表のojRowActionイベントによってトリガーされるカスタム・イベントを作成します。 また、行のデータをrowDataページ変数に割り当てるアクション・チェーンも作成します。
    1. ページの「イベント」タブで、「+カスタム・イベント」をクリックしてカスタム・イベントを作成します。 プロパティ・ペインで、ペイロード・プロパティの「パラメータの追加」リンクをクリックし、オブジェクト・タイプの入力パラメータを定義します。 この入力パラメータは、rowDataページ変数にデータを割り当てるアクション・チェーンに行のデータを渡すために使用されます。

    2. カスタム・イベントの動作プロパティで、アクション・チェーンをシリアルに実行するかパラレルに実行するかを設定します。 デフォルトのnotifyは並列です。 各オプションの詳細は、「カスタム・イベントのコール・イベント・リスナーの選択」を参照してください。
  6. イベントが発生したときに開始するアクション・チェーンを指定するイベントのイベント・リスナーを作成します(1つのイベント・リスナーで複数のアクション・チェーンを起動できます)。
    1. ページの「イベント・リスナー」タブで、「+イベント・リスナー」をクリックします。
    2. 「イベントの選択」ステップで、「ページ・イベント」までスクロール・ダウンし、作成したカスタム・イベントを選択します。 「次へ」をクリックします

    3. 「アクション・チェーンの選択」ステップで、「ページ・アクション・チェーン」の横にある「追加」アイコンをクリックします。

      リスナーのアクション・チェーンがここで作成されるときに、リスナーのカスタム・イベントに入力パラメータがある場合、アクション・チェーンはevent入力パラメータを使用して作成されます。 このeventオブジェクトには、カスタム・イベントの入力パラメータが含まれます(例: event.param1event.param2...)およびeventオブジェクトは、新しいアクション・チェーンに自動的に渡されます。
    4. アクション・チェーン・エディタで、アクション・チェーンには、カスタム・イベントの入力パラメータを含むevent入力パラメータがあることに注意してください。 「変数の割当て」アクションを追加し、行のデータを格納するページ変数にそのVariableプロパティを設定し、そのValueをアクション・チェーンに渡されたeventオブジェクトの関連値に設定します: