こんにちは!
SCSK株式会社 小鴨です。
3割20本と、2割40本では前者の方が好みのバッターです。
今日はServiceNowの「動的フィルターオプション」という機能についてご説明します。
ゆったりのんびり聞いていただけますと幸いです。
はじめに
ServiceNowの開発をしていると、こんな要望を受けることがあります。
「担当者を選ぶとき、候補が多すぎて探せないんです」
確かにその通りです。
例えば担当者フィールドの虫眼鏡アイコンを押してみると、
- 全社員
- 退職者
- 他部門のユーザ
- 関係のない運用担当者
などが大量に表示され、
気が付けば数千件のレコードが候補として表示されています。
利用者からすると、
「いや、その中から選ぶことなんてほぼ無いんですが……」
という状態です。
実際には、
- 自部門のユーザ
- 自分のグループのメンバー
- ITサービス部門担当者
など、
選ばれる可能性がある候補はせいぜい数十件から100件程度だったりします。
本当は最初からそこまで絞り込まれていてほしい。
でも画面ごとに参照条件を作るのも面倒。
そんな時に活躍するのが動的フィルターオプション(Dynamic Filter Options)です。
a {
text-decoration: none;
color: #464feb;
}
tr th, tr td {
border: 1px solid #e6e6e6;
}
tr th {
background-color: #f5f5f5;
}
動的フィルターオプションとは?
動的フィルターオプションで解決できること
動的フィルターオプションは、単にフィルター条件を共通化するための機能ではありません。
利用者にとっては「必要な候補だけを表示して使いやすくする仕組み」であり、管理者や開発者にとっては「条件を一元管理して保守しやすくする仕組み」です。 [servicenow.com], [servicenowguru.com]
実際には次のような課題を解決できます。
① 候補が多すぎて選べない問題
例えば担当者フィールドの虫眼鏡を押した際に、
- 全社員
- 他部門のユーザ
- 利用しない運用グループ
- すでに利用対象外になったユーザ
などが数千件表示されてしまうケースがあります。
しかし実際に選ばれる候補は、
- 自部門の担当者
- 特定の運用チーム
- 承認権限を持つ担当者
など、数十件から100件程度であることがほとんどです。
動的フィルターオプションを利用すれば、
といった条件で候補を絞り込み、利用者が迷わず選択できる画面を実現できます。
② 同じ参照条件を何度も作る問題
ServiceNow開発では
IT部門ユーザのみ表示
という条件が様々な場所で登場します。
- インシデント
- 問題管理
- 変更管理
- サービスカタログ
- カスタムアプリ
などです。
そのたびにReference Qualifierを作り込んでいると、同じロジックがシステム全体に散らばってしまいます。
動的フィルターオプションを利用すれば、
という共通部品を一度作るだけで、複数の画面から再利用できます。 [servicenow.com], [動的フィルターオプション | OneNote]
③ 要件変更の影響を最小化できる
運用開始後、
「IT部門だけでなくセキュリティ部門も対象にしたい」
という要望はよく発生します。
個別にReference Qualifierを実装していた場合、影響箇所を洗い出して修正しなければなりません。
一方、動的フィルターオプションを利用していれば、共通ロジックを修正するだけで変更内容を全画面へ反映できます。
④ リストやレポートでも同じ条件を使える
動的フィルターオプションは参照フィールドだけの機能ではありません。
例えば
担当者 is (dynamic) 自部門メンバー
といった条件を一覧画面やレポートでも利用できます。
そのため、
- 参照条件
- 一覧フィルタ
- レポート条件
で同じロジックを共有できるようになります。
まとめ
動的フィルターオプションは、単に「便利なフィルター」ではありません。
利用者には”候補を適切に絞り込んで使いやすくする仕組み”として働き、開発者には”絞り込み条件を共通化して保守性を高める仕組み”として働きます。 もし現在、
- 虫眼鏡を押すと候補が多すぎる
- 同じReference Qualifierを何度も作っている
- 条件変更時の修正漏れが怖い
という悩みを抱えているなら、一度動的フィルターオプションを検討してみてください。
派手な機能ではありませんが、使い始めると「なぜもっと早く使わなかったんだろう」と感じる、現場向けの名脇役です。
