Now Mobileエージェントアプリケーションの UI アクションのカスタマイズ

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:3分
  • カスタム UI アクションを作成することで、エンドユーザーが Field Service Mobile アプリケーションで作業をより迅速に簡単に行えるようにします。

    UI アクション条件の構成は、Field Service モバイルアプリケーションとデスクトップアプリケーションの構成で異なります。デスクトップアプリケーションとは異なり、モバイルの UI アクション条件はデータベースクエリを実行しないため、モバイルリソースを消費しません。モバイル アプリケーションでは、Field Service 構成が有効かどうかをシステムチェックを実行する代わりに、ボタンをアクティブまたは非アクティブに構成できます。

    アドミニストレーターは、モバイル UI アクションを確認し、モバイルリソースの使用量を減らすために使用されていないアクションを無効にすることができます。

    次の図は、スタジオ で開いている Now Mobile Agent アプリケーションを示しています。スタジオ で開いている Now Mobile Agent アプリケーションで、UI アクションを構成できます。

    Studio が開き、Field Service Mobile の開始点が示されています。

    作業指示タスクを承認するための UI アクション構成の例を次に示します。
    デスクトップアプリケーションの [承認 ] ボタンには、次の UI アクション条件があります。
    current.state == 16 && (new StateFlow().validFlow(current, '53d0aea8d7230100fceaa6859e610326', 'manual'));
    次の状況フロー条件がチェックされます。
    1. このスクリプトを使用して、accept_reject UI アクションが有効になっているか無効になっているかを確認するための SMconfiguration レコード:
      (new sn_sm.SMConfiguration()).isEnabled(current, "accept_reject", false)
    2. タスクが自己アサインされている場合
    モバイルデバイスの対応するボタンの UI アクションを変更するには:
    1. current.state == 16 条件は変更しないでください。現在のレコードに関する情報がチェックされます。
    2. この条件の場合:
      (new sn_sm.SMConfiguration()).isEnabled(current, "accept_reject", false)
      false に設定されている場合、この条件を削除し、モバイルアプリケーションで対応するモバイル UI アクションを無効にします。
    3. ここに示すように、ログインしているユーザーのフィールドパラメーター にアサインされている現在のタスク の値を設定します。 current.assigned_to == gs.getUserID()
    前の例に基づいて、モバイルアプリケーションの UI アクションに対して変更された条件は次のとおりです。
    current.state == 16 && current.assigned_to == gs.getUserID()

    タスクを自己アサインするための別の構成例を次に示します。

    デスクトップアプリケーションの [ 自分にアサイン ] 機能には、次の UI アクション条件があります。
    (new SMTask()).canAssignToSelf(current)
    SMTask.canAssignToSelf(task) スクリプトインクルードメソッドは、次の条件のシステムチェックを実行します。
    1. タスクのステータス
    2. 予定開始時間の値
    3. タスクが自己アサインされている場合
    4. ユーザーが SM 構成レコードで定義されている基本ロールとエージェントロールを持っている場合
    5. ユーザーがタスクディスパッチグループによって処理されるグループに属しているかどうか
    モバイルアプリケーションでは、次の UI スクリプト条件によって、前にリストした最初の 3 つの条件がチェックされます。
    current.assigned_to != gs.getUserID() && !(current.expected_start.nil()) && (current.state == 10 || current.state == 16) 
    4 番目の条件では、特定のロールを [ロール ] フィールドに追加できます。
    5 番目の条件については、 wot_assign_to_me 書き戻しアクションアイテムで次の検証を実行します。
    if (smTask.canAssignToSelf(wotGR)) 
    smTask.assignToMe(gs.getUserID(), input.sys_id); 
    else
    gs.addErrorMessage(gs.getMessage("Not a valid task assignment."));