ドキュメントCampaignCampaign web ユーザーインターフェイス

JavaScript コード

最終更新日: 2025年5月21日
  • 適用対象:
  • Campaign v8 Web User Interface

JavaScript コード ​アクティビティは、データ管理 ​アクティビティです。このアクティビティを使用して、ワークフローのコンテキストで JavaScript スクリプトを実行します。これにより、データベースから情報を収集したり、その他の複雑な操作を実行したりできます。

JavaScript コードアクティビティの設定

「JavaScript コード」アクティビティを設定するには、次の手順に従います。

  1. 「JavaScript コード」アクティビティをワークフローに追加します。

  2. 作成するアクティビティのタイプを選択します。

    • シンプル:1 つのコードスニペットを実行します。
    • 高度:2 つの異なるコードスニペットを実行して、より高度な操作を実行します。JavaScript アクティビティの設定方法を学ぶ
    メモ
    Campaign web ユーザーインターフェイスでは、シンプル ​な JavaScript コードと​ 高度 ​な JavaScript コードの両方の機能を結合して、2 つのアクティビティを 1 つにまとめました。この統合は、アクティビティの機能には影響しません。
  3. 確認してから、「コードを編集」ボタンをクリックして、式エディターを開きます。左側のパネルには、イベント変数などの、コードの作成に使用できる定義済みの構文が表示されます。詳しくは、イベント変数と式エディターの操作方法を参照してください。

    JavaScript コードアクティビティの式エディターインターフェイス

  4. 「実行」セクションでは、一定期間の実行後にアクティビティを停止する遅延を設定します。デフォルトでは、実行フェーズは 1 時間を超えることはできません。この遅延の後、エラーメッセージが表示されてプロセスが中止され、アクティビティの実行が失敗します。この制限を無視するには、値を 0 に設定します。

    実行遅延の設定インターフェイス

  5. 「エラーを処理」オプションを有効にすると、スクリプトの実行中に発生したエラーを、追加の出力トランジションに保持できます。

高度な JavaScript コードアクティビティ

高度な JavaScript アクティビティを使用すると、複雑な操作を実行できます。これらのアクティビティを使用すると、次のことができます。

  • 2 つの異なるコードスニペットを実行します。最初のコードスニペットは、ワークフローの初回起動時に実行されます。ワークフローが再度実行されるたびに、2 回目の呼び出しで定義されたコードスニペットが実行されます。
  • スクリプトを使用して動的にやり取りできる複数の出力トランジションを追加します。

高度な JavaScript コードアクティビティを設定するには、次の手順に従います。

  1. 「詳細」タイプを選択し、実行するコードスニペット(複数)を設定します。

    • 「最初の呼び出しコードを編集」をクリックし、最初の呼び出しで実行するスクリプトを定義します。
    • 「次の呼び出しコードを編集」をクリックし、ワークフローの後続の呼び出しで実行するスクリプトを定義します。(オプション)
  2. 1 つまたは複数の出力トランジションを追加するには、トランジションを追加 ​ボタンをクリックし、トランジションごとにラベルと内部名を指定します。

    この例では、特定の条件に基づいて、コードスニペット内のスクリプトで 2 つのトランジションを設定およびアクティブ化しています。

    設定済みのトランジションの例

  3. アクティビティの設定を完了し、ワークフローを開始します。

例

入力母集団に基づく変数の初期化

この例は、ワークフローがターゲットとするプロファイルの数に基づいて変数を初期化する方法を示しています。

プロファイルの数に基づく変数の初期化の例

この例では、データベースのVIP プロファイルがターゲットになります。オーディエンス作成アクティビティがターゲットとするプロファイルの数に応じた値を持つ「channel」という変数を作成します。

  • 1,000 個を超えるプロファイルをターゲットにする場合は、「email」の値を使用して変数を初期化します。
  • それ以外の場合は、「sms」の値で初期化します。

これを行うには、次の手順に従います。

  1. オーディエンス作成 ​アクティビティの後に、タイプが​ シンプル ​の JavaScript コード ​アクティビティを追加します。

  2. 「コードを編集」をクリックし、コードスニペットを次に示すように設定します。

    if (vars.recCount > 1000)
        vars.channel = "email";
    else
        vars.channel = "sms";
    
  3. ワークフローを開始します。「channel」変数は、オーディエンス作成 ​アクティビティがターゲットとするプロファイルの数に応じて、「email」または「sms」の値で作成されます。

変数の値に基づくトランジションのトリガー

この例は、変数の値に基づいてトランジションをトリガーする方法を示しています。

変数の値によってトリガーされるトランジションの例

この例では、ワークフローが​ 外部シグナル ​アクティビティで始まり、変数(interest)が別のワークフローから渡されます。変数の値は、最初のワークフローで実行されるフィルタリング操作に応じて、「running」または「yoga」になります。

変数の値に基づいて、ワークフロー内の様々なトランジションをトリガーします。

これを行うには、次の手順に従います。

  1. 「外部シグナル」アクティビティの後で、タイプが​ 詳細 ​の​ JavaScript コード ​アクティビティを追加します。

  2. 2 つのトランジションを追加します(1 つは設定可能な各変数値(「running」、「yoga」))。

  3. 「最初の呼び出しコードを編集」をクリックし、コードスニペットを次に示すように設定します。

    if (vars.interest == "running")
        task.postEvent(task.transitionByName("running"));
    else
        task.postEvent(task.transitionByName("yoga"));
    
  4. 各トランジションの設定を必要に応じて完了し、ワークフローを開始します。2 つの出力トランジションのうちの 1 つが、外部シグナル ​アクティビティを通じて渡された interest 変数に基づいてアクティブ化されます。

recommendation-more-help
c39c2d00-ba9a-424b-adf9-66af58a0c34b