在不結束 Coach 的情況下驗證資料

您可以在用戶端人工服務中使用 Coach 的資料變更內容來驗證 Coach 資料,而無需結束 Coach。

關於此作業

透過使用資料變更機制,您可以在使用者仍與 Coach 互動時驗證輸入 Coach 的資料。 例如,您可以執行 Coach 資料驗證,以確保必要欄位包含資料且 before 日期早於 after 日期。
提示: 您可以利用此相同機制進行超過驗證。 當使用者在 Coach 中輸入值時,可以使用驗證機制來更新變數。 例如,您可以執行計算並在 Coach 中呈現結果。 或者,您可以更新變數,以控制 Coach 中按鈕的啟用狀態。

對於一般 Coach 驗證,您可以使用在要驗證的 Coach 中指定的用戶端 JavaScript 。 為了避免感知到 Coach 的效能問題,最佳作法是使用快速執行的 Script。

程序

若要在用戶端人工服務中驗證 Coach 資料而不結束 Coach ,請執行下列動作:

  1. 開啟包含要驗證之 Coach 的用戶端人工服務。
  2. 選取要驗證的 Coach ,並切換至 資料變更
  3. Script 內容中,新增 JavaScript 程式碼以識別 Coach 中有問題的資料。
    使用 tw.system.coachValidation.addValidationError(String variableName, String errorMessage) JavaScript API 來識別有問題資料的視圖,並提供訊息來協助使用者更正問題。
    例如:
    if (tw.local.startDate.getTime() > tw.local.endDate.getTime())
    	tw.system.coachValidation.addValidationError("tw.local.startDate", "The start date must precede the end date. Set the start date before the end date, and try again.");
    附註:
    • 如果正在驗證的資料元素未連結至視圖,則無法在發生驗證錯誤時顯示驗證錯誤。
    • 如果正在驗證的視圖包含 Rich Text ,在驗證內容之前,驗證 Script 必須先移除格式化。
    • 如果您要驗證清單,且想要錯誤參照整個清單,則 variableName 參數必須包含 [] 作為字尾。 這符合視圖連結,其中 [] 指出物件是清單。 例如,如果視圖連結至 tw.local.var3[](即清單) ,則您需要類似於下列範例的程式碼:
      tw.system.coachValidation.addValidationError("tw.local.var3[]", "Var3 has validation error");
  4. 按一下 儲存完成編輯
  5. 按一下 執行 執行,以測試 Coach 驗證是否正確運作。
    在執行時期,當在其中一個視圖中變更資料時,會發生下列驗證動作:
    • 如果資料有效,則 Coach 執行順利完成。
    • 如果 Coach 中的資料無效,則會發生驗證錯誤,且控制項會指出問題。
    • 如果下一個變更修正資料,則會重新驗證資料,並移除錯誤。