JavaScript 程式碼 javascript-code
JavaScript程式碼 活動是 資料管理 活動。 使用此活動可在工作流程內容中執行JavaScript指令碼。 這可讓您從資料庫收集資訊,或執行其他複雜的作業。
設定JavaScript程式碼活動 javascript-code-configuration
請依照下列步驟設定 JavaScript程式碼 活動:
-
將 JavaScript程式碼 活動新增至您的工作流程。
-
選擇要建立的活動型別:
- 簡單:執行一個程式碼片段。
- 進階:執行兩個不同的程式碼片段,以執行更進階的作業。 瞭解如何設定進階JavaScript活動
note note NOTE 透過Campaign Web使用者介面,將 簡單 和 進階 JavaScript程式碼功能合併為兩個活動。 此合併不會影響活動的功能。 -
確認,然後按一下 編輯代碼 按鈕以開啟運算式編輯器。 左側窗格提供預先定義的語法,可用來建置程式碼,包括事件變數。 瞭解如何使用事件變數和運算式編輯器。
JavaScript程式碼活動的
-
在 執行 區段中,設定延遲以在執行期間後停止活動。 依預設,執行階段不能超過 1 小時。在這類延遲之後,此流程將中止並顯示錯誤訊息,並且活動執行會失敗。若要忽略此限制,請將值設為 0。
-
切換「處理錯誤」選項可將在指令碼執行期間發生的錯誤保留在額外的輸出轉變。
進階JavaScript程式碼活動 advanced
進階JavaScript活動可讓您執行複雜的作業。 這些活動可讓您:
- 執行兩個不同的程式碼片段。 第一個程式碼片段會在工作流程首次啟動時執行。 每次工作流程再次執行時,都會執行第二個呼叫中定義的程式碼片段。
- 新增多個輸出轉變,您可使用指令碼動態互動。
若要設定進階JavaScript程式碼活動,請遵循下列步驟:
-
選取 進階 型別,然後設定要執行的程式碼片段:
- 按一下 編輯第一次呼叫代碼 以定義要在第一次呼叫期間執行的指令碼。
- 按一下 編輯下一個呼叫代碼 以定義要在後續工作流程呼叫期間執行的指令碼。 (選擇性)
-
若要新增一個或多個輸出轉變,按一下「新增轉變」按鈕並為每個轉變指定標籤和內部名稱。
在此範例中,程式碼片段中的指令碼會根據特定條件設定及啟動兩個轉變。
-
完成活動設定並啟動工作流程。
範例 javascript-code-example
根據傳入母體初始化變數 example1
此範例說明如何根據工作流程所定位的設定檔數初始化變數。
在此範例中,會定位資料庫中的VIP設定檔。 名為「channel」的變數是使用取決於「建置對象」活動所定位的設定檔數的值建立的:
- 如果目標設定檔超過1000個,請使用值「email」初始化變數。
- 否則,請使用值「sms」將其初始化。
請依照下列步驟以達成此目的:
-
在 建置對象 活動之後,新增型別為 Simple 的 JavaScript程式碼 活動。
-
按一下 編輯程式碼 並設定程式碼片段,如下所示:
code language-none if (vars.recCount > 1000) vars.channel = "email"; else vars.channel = "sms";
-
啟動工作流程。 「頻道」變數是以「電子郵件」或「簡訊」值建立,視 建置對象 活動鎖定的設定檔數量而定。
根據變數的值觸發轉變 example2
此範例說明如何根據變數的值觸發轉變。
在此範例中,工作流程會以 外部訊號 活動開始,而變數(interest
)會從另一個工作流程傳遞至該活動。 變數的值為「執行中」或「瑜伽」,視初始工作流程中執行的篩選作業而定。
系統會根據變數的值,觸發工作流程中的不同轉變。
請依照下列步驟以達成此目的:
-
在型別為 進階 的外部訊號活動後新增 JavaScript程式碼 活動。
-
新增兩個轉變:每個可能的變數值(「執行中」、「瑜伽」)各一個。
-
按一下 編輯第一個呼叫代碼 並設定代碼片段,如下所示:
code language-none if (vars.interest == "running") task.postEvent(task.transitionByName("running")); else task.postEvent(task.transitionByName("yoga"));
-
完成每個轉變的設定以符合您的需求,然後開始工作流程。 已根據透過 外部訊號 活動傳遞的
interest
變數值,啟動兩個輸出轉換之一。