「選択リスト」項目が更新されるまでの経過時間を算出したい

「選択リスト」項目が更新されるまでの経過時間を算出したい

【要望】
ある「選択リスト」項目が選択された時間から、次のものに変更されるまでの経過時間を知りたい。


【どういったケースに多いか?】

一番多いケースだと、何かのフェーズ分けとして「選択リスト」項目を作っている場合です。例えば、発注フェーズであれば「見積もり依頼」→「見積もり確認」のようなフェーズになりますし、開発フェーズであれば「要件定義」→「基本設計」といったように、現状の進度を表す「選択リスト」項目に多いでしょう。


【解決法】

簡潔にまとめれば、「選択リスト」項目を最後に更新した日時を出して、そこから、現在の時間を引き算すれば、どれくらい時間がたったのか見ることが出来ます。
手順としては、以下のようになるでしょう。

①更新日時の項目作成
まず、選択リストの更新日時を示す「日付・時間」項目を作成します。
これは、経過時間を知るための計算に必要な値を得るためです。また、この項目は各フェーズごとに用意する必要があるので、多量になります。従って、ページレイアウト上に出す必要はないでしょう(ページレイアウト上に出さなくても、計算は出来るためです。以下同様)。

②変更日時を自動入力にする
次に、①で作成した「日付・時間」項目に、「選択リスト」項目を変更した際の日時を入力します。
しかし、「選択リスト」を変更するたびに、入力するのは手間でしょう。
そこで、この部分を「選択リスト」の変更に連動した、自動入力にすることをお勧めします。
自動入力は、ワークフローの作成によって可能になります。ワークフロールールとワークフローアクションは以下の通りです。
<ワークフロールール>
[評価条件]:[作成されたとき、および編集されるたび]
[ルール条件][数式の評価が true になる]
[数式]:ISPICKVAL( 「日付・時間」項目のAPI “「選択リスト」のフェーズ名”)

<ワークフローアクション>
[更新する項目]:「日付・時間」項目
[新規項目値の指定]:[数式を使用して新しい値を設定する]
[数式]:Today()

このように、各フェーズ一つ一つ作っていきます。作る数量は多く感じるかもしれませんが、同じことの繰り返しなので、数分で作成し終えられることでしょう。

③経過時間を入力する項目の作成
先に、実際に計算する数式ではなく、計算結果がでてくる「数値」項目を作成しておく必要があります。④で説明をしますが、計算はワークフローにて行いますので、その結果を出す「ハコ」を先に作っておく必要があるのです。
経過時間項目の作成方法は、一般的なカスタム項目と同じです。データ型を「数値」に設定し、各フェーズ分作成します。

④経過時間の自動計算
経過時間は、ワークフローを使って計算します。
ワークフロールールとワークフローアクションは以下の通りです。また、各企業によってフェーズの呼称は異なると思いますので、以下では、フェーズの順序がわかりやすいように「前フェーズ」と「後フェーズ」のいう呼び名で通します。どちらも「選択リスト」項目の中のフェーズで、前後関係のあるフェーズです。
<ワークフロールール>
[評価条件]:[作成されたとき、および編集されるたび]
[ルール条件][数式の評価が true になる]
[数式]:IF ( ISPICKVAL( PRIORVALUE(選択リストAPI) , “前フェーズ”) && ISPICKVAL(「選択リスト」API , “後フェーズ”) , true, false)

<ワークフローアクション>
[更新する項目]:経過時間項目(③の入力用の「ハコ」)
[新規項目値の指定]:[数式を使用して新しい値を設定する]
[数式]:Today() – 前フェーズAPI

このように、「選択リスト」が次のフェーズに更新された時に、計算される仕組みを作っておくことで、経過時間を簡単に知ることが出来ます。

SFAの教科書@二階堂
株式会社ベンチャーネットにてコンサルティング問い合わせ窓口を担当している二階堂です。皆様のセールスフォースの導入などのコンサルティングをさせて頂いてます。導入された後の悩みなども受け付けておりますので是非無料ご活用下さい。
コメント0

*
*
* (公開されません)