ServiceNow ワークフローステージのカスタマイズ:値の追加・変更方法(技術メモ)
ServiceNowのワークフロー(特にWorkflow Editor / Workflow Studio)で表示されるステージ(Stage)の値をカスタマイズしたい場合のメモです。
デフォルトのステージ(例:Waiting, In Progress, Completedなど)を拡張・変更するシーンでよく使います。
2025年時点の基本仕様(Yokohama / Washington DC / Xanadu 以降もほぼ同一)に基づく実務Tipsです。
1. ステージ値の追加・管理場所
ワークフローステージの値は、主に以下のテーブルで定義・管理されています。
| テーブル | ラベル | 主な役割 | 備考 |
|---|---|---|---|
| wf_stage | Workflow Stage | ステージのマスタ値一覧 | ここに新規レコード追加でカスタムステージを定義可能 |
| sys_choice | Choice List | ステージフィールドの選択肢(一部) | wf_stageと連携して表示される場合あり |
実務でよく使うのはwf_stageテーブルです。
- 新規ステージ追加:wf_stageにレコード作成(Name, Value, Order, Activeなど)
- 既存ステージ変更:該当レコードのValue / Labelを編集(ただしOOTBは避ける推奨)
注意:ステージ値はワークフロー実行時だけでなく、Process Automation Designer(PAD)やFlow Designerのステージ表示にも影響します。変更時は全ワークフローの影響範囲を確認してください。
2. ワークフローステージの編集・制御場所
ステージの値自体はテーブルで管理されますが、**どのワークフローにどのステージを適用するか**は以下で制御します。
- Workflow Studio(旧Workflow Editor)
- ワークフローを開く → Activities → Set Values や Transition でステージ値を指定
- ステージ変更アクティビティ(Set Stage)で動的に切り替え可能 - Flow Designer(推奨移行先)
- FlowのActionで「Update Record」 → stageフィールドをセット
- または「Set Flow Stage」アクションで制御 - Process Automation Designer(PAD)
- プロセス定義内でステージをビジュアルに配置・遷移設定
カスタムステージを追加した後、ワークフロー内で実際に使うには上記いずれかの場所で「Value」を指定する必要があります。
参考公式ドキュメント(日本語版リンク)
※バージョンアップでUIが変わる可能性があるので、最新ドキュメントを確認してください。
実務Tips(現場でよく使うパターン)
- カスタムステージ追加例:Pending Approval → Approved → Rejected → Escalated
- Orderフィールドで表示順を制御(小さいほど左側に表示)
- 複数ワークフローで共通ステージを使いたい場合:wf_stageを共有し、Valueを統一
- レポート / ダッシュボードでステージ別集計したい場合:stageフィールドを活用
- 古いワークフローをFlow Designerに移行中の方は、Set Stageアクションを積極的に使うと楽
このメモは自分用ですが、似た課題を抱えている方がいれば参考にどうぞ。
ワークフロー関連のカスタマイズで困った点があれば、コメントで教えてください!
#ServiceNow #Workflow #WorkflowStage #FlowDesigner #ProcessAutomation #技術メモ