状況フローのカスタマイズ
状況フローは、 フィールドサービス管理 (FSM) アプリケーションの状況間でレコードが移行する順序を制御します。
フィールドサービス管理 (FSM)タスク状況フローの仕組み
状況フローは、要求とそれに関連するタスクが状況間を移動する方法を制御する標準プロセスに代わるものです。ServiceNow システムは、指定した移行とフィールドコントロールを実行するビジネスルール、クライアントスクリプト、および UI アクションを作成します。これらのプログラミング要素を使用する状況フローレコードが存在する間は、引き続き使用されます。フィールドサービス管理 (FSM)テーブルの状況フローが削除されると、そのテーブルで作成された不要なプログラミング要素の削除が試行されます。開始状態に基づいて、[状態] フィールドの選択を移行の有効な状態に制限できます。
- 手動移行: 条件またはスクリプトを指定すると自動的に作成される UI アクションによって、移行が開始されます。
- 自動移行: 条件とスクリプトを指定すると自動的に作成されるビジネスルールによって、要求またはタスクに変更が加えられると移行が開始されます。
wm_admin ロールを持つユーザーは、次のタスクを実行できます。
- 作業指示フローと作業タスクフローを作成、読み取り、追加、更新、または削除します。
- 特定の状況移行でイベントをトリガーします。
- 要求またはそのタスク内のデータが変更されたときに自動的に別のステータスに移行するか、ユーザーがボタンを選択したときに手動でステータスを変更します。
- [ステータス] フィールドの選択リストを、指定された開始ステータスからの有効な移行である終了ステータスに制限します。
- ターゲットテーブルのレコードのステータスが変更されたときに、ターゲットテーブルで選択したフィールドの可視化と動作を制御します。
- カスタム状況フローを作成します。構成画面の [ 状況フローが有効になっている] オプションをオフにします。
状況フローで利用可能な機能
- カスタム移行: 要求とタスクレコードのステータスが変更される順序をカスタマイズします。
- フィールドコントロール: タスクのステータスが変更されたとき、または指定された終了ステータスに達したときの、特定のフィールドの動作と可視化を制御します。
- ステータス選択リスト: タスクレコードの [ステータス] フィールドで提供される値を、その移行に有効なステータスに制限します。これは、状況移行のフィールドコントロールを管理するためにシステムが作成するものと同じクライアントスクリプトです。
- イベント: ステータス移行が発生したとき、またはレコードが特定の終了ステータスに達したときに、イベントをトリガーします。
開始状況と終了状況
wm_admin ロールを持つユーザーは、タスクレコードがあるステータスから別のステータスに特定の移行を行うときに発生する処理のカスタム状況フローを作成できます。これらのレコードには開始ステータスと終了ステータスが必要であり、処理はステータス間の移行中に行われます。タスクレコードが特定の終了ステータスに達したときに何らかの処理を実行するには、終了ステータスを定義する必要があります。場合によっては、タスクがキャンセルされた後にある種のクリーンアップを実行する場合など、状況フローには開始状態のみが設定されます。レコード内の処理が複数の状況移行に適用される場合、状況フローには開始状態または終了状態がないことがあります。解決策は、ビジネスルールまたはクライアントスクリプトを状況フローレコードに保存し、それを必要とする状況変更の処理をトリガーする条件を作成することです。
フィールドサービス管理 (FSM) の例は、作業指示タスク [wm_task] テーブルの [変更のロールアップ] ビジネスルールです。このビジネスルールは、タスクで発生したステータス変更を親作業指示書にロールアップします。
構成の概要
状況フローのカスタマイズを設定する手順は次のとおりです。
- 作業指示および作業指示タスクの状況フローの構成
作業指示書と作業指示書タスクが移動する状況を設定します。これは、作業の追跡に役立つ特定の一連の状況がある場合に役立ちます。
- (オプション) 状況フロー辞書オーバーライド
辞書オーバーライドを使用して、すべての新規作業指示および作業指示タスクの開始ステータスを定義します。
- (オプション) 状況フローの作業メモ
作業指示タスクが特定のステータスに達したときに、カスタマイズされた作業メモを作業指示タスクに追加します。たとえば、却下ステータスフローに「エージェントによって却下されたタスク」というメモを含めることができます。
- (オプション) 状況フローのフィールドコントロール
指定された状況移行が検出された場合の動作を決定します。たとえば、インシデントが [問題待ち] 状態に移行したときに [問題] フィールドを表示するとします。
- (オプション) ステータス変更時にイベントをトリガー
タスクが開始状態から指定された終了状態に移行したときに登録されたシステムイベントをトリガーするように状況フローを設定します。たとえば、イベントを使用してメール通知をトリガーし、スクリプト アクションを作成できます。
- (オプション) 状況フローの再作成
既存のsys_idsと新しいで不一致が発生した場合に状況フローを再作成します。
- (オプション) 状況フローのクリーンアップ
ビジネスルール、クライアントスクリプト、および UI アクションをクリーンアップして、それらを使用する状況フローレコードが存在する間のみ存在するカスタム移行を実行します。