ステータスフローの使用

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む5読むのに数分
  • 状態を使用する任意のテーブルにカスタムステータスフローを作成できます。

    任意の順序で状態移行を発生させるか、ビジネス プラクティスに従って特定の状態をスキップします。ステータスフローは、タスク フォームのフィールドの動作およびフィールドの可視性を管理できます。また、ステータスフローは、メール/SMS 通知の送信などの作業を実行するシステムイベントをトリガーすることもできます。

    管理者は、次のようにステータスフローを設定できます。

    [ステータスフロー] プラグインにより、作業指示書および作業指示タスクの状態移行を制御するために作業管理で使用されるレコードがインストールされます。作業管理のステータスフローの使用の詳細については、「ステータスフローのカスタマイズ」を参照してください。

    ステータスフローの作成およびカスタマイズには、スクリプティングに関するナレッジが必要です。admin ロールを持つユーザーが、ステータスフロー レコードを作成できます。

    ステータスフローの辞書オーバーライド

    ステータスフローの辞書オーバーライドにより、特定のテーブル内のすべての新しいレコードの開始状態が定義されます。

    カスタマイズが拡張テーブルにのみ適用されるように、ベース テーブルのみを拡張するテーブルで上書きを設定します。
    1. ステータスフロー レコードで、[終了状態] を選択します。

      これは、指定されたテーブル内のすべての新しいレコードの開始状態になる上書き値です。

    2. [デフォルト値を作成] をクリックします。

      [辞書オーバーライド] フィールドに [ステータス] の値が入力されます。これは、オーバーライドの影響を受けるタスク テーブルのフィールドです。[辞書オーバーライド] フィールドは読み込み専用です。オーバーライドが作成されると、そのテーブルの後続のすべての [ステータスフロー] フォームで [デフォルト値を作成] ボタンが非表示になります。

    状態の変更でトリガーされるイベント

    タスクが開始状態から指定された終了状態に移行したときに、登録されたシステムイベントをトリガーするようにステータスフローを設定できます。

    たとえば、イベントを使用してメール通知をトリガーし、スクリプト アクションを作成できます。ステータスフローにイベントを添付すると、ステータスフロー イベントで指定されたテーブルの <table name> に対してステータスフロー イベントと呼ばれるビジネス ルールが作成されます。開始および終了状態を指定すると、レコードが開始状態から終了状態に移行したときにビジネス ルールが実行されます。ステータスフローで終了状態のみが指定されている場合、その終了状態に達すると、必ずビジネス ルールが実行されます。1 つのテーブルにイベントを含んでいるすべてのステータスフローに対して 1 つのビジネス ルールが作成されます。テーブルのすべてのイベントまたはすべてのステータスフローを削除すると、ビジネス ルールは削除されます。

    フィールド コントロール

    レコードがステータス間を移行するときに適用される個々のフィールド コントロールを定義できます。

    [ステータスフロー] フォームの [フィールド コントロール] セクションの設定により、指定されたステータス移行が検出された場合、またはフォームを開いたときに終了状態が現在の状態である場合にフィールド コントロールを適用することができます。このコントロールは、フォームの既存のフィールドにのみ適用されます。ステータスフローは、フィールドをフォームに追加することはできません。

    たとえば、インシデントが [問題待ち] 状態に移行したときに [問題] フィールドを表示するとします。インシデントの状態が [ユーザー情報待ち] に変わった場合、[問題] フィールドを非表示にして [問い合わせユーザー] フィールドを必須にします。

    フィールド コントロールの作成時に、終了状態のステータスフロー レコードのみを設定し、制御する終了状態ごとに正しい動作を作成します。この設定により、ユーザーが新しい状態を選択したとき、およびユーザーがレコードの [ステータス] フィールドを元の状態に戻したときに、フィールド コントロールが正しく設定されるようになります。その正確な状態の移行に対して特定の動作が必要な場合は、開始状態と終了状態の両方で完全な状態の移行のみを指定します。
    注:
    ステータスフローは、クライアント スクリプトを使用してフィールド コントロールを強制します。クライアント スクリプトの後に実行される既存の UI ポリシーによって設定を変更することが可能です。
    ステータスフローでフィールド プロパティを適用するために、必要に応じて、次のオブジェクトが作成されます。
    表 : 1. フィールド コントロール
    タイプ 名前 説明
    ビジネスルール ステータスフロー メモ: <table name> 必須フィールドの動作が定義されているテーブルに対して必須フィールドを強制します。
    クライアント スクリプト (onLoad) <table name> ステータスフロー レコードのロード時に可能な状態と初期の必須、読み込み専用、および表示可能プロパティを設定します。
    クライアント スクリプト (onChange) <table name> ステータスフローの変更 レコードの変更時に更新された必須、読み込み専用、および表示可能プロパティを設定します。

    ステータスフローの再作成

    既存の sys_id と新しい sys_id の不一致が発生したときに、ステータスフローを再作成することができます。

    XML ファイルを使用してステータスフロー レコードをインスタンスにインポートすると、sys_id を比較することによって受け取ったステータスと既存のステータスの照合が試行されます。選択リスト内のアイテムの sys_id が同じでも、インスタンス間で異なる可能性があるため、ステータスの照合が失敗することがあります。

    照合に失敗した場合、影響を受けるレコードの開始および終了状態は空白のままか、数値が含まれます。これらのレコードを修復するには、次の場所に移動します。 状況フロー > 管理者 > 状況フローの再作成. このモジュールにより、インポートされたステータスフローレコード内で一致が見つかるまで [ステータス] フィールドの選択リスト内の各アイテムの数値を比較するスクリプトが実行されます。

    ステータスフローのクリーンアップ

    作業メモ