Salesforceで時間差を算出する方法

Salesforce数式

Salesforceで作業時間や開始1時間前など、時間に関する関数で困ったことはないですか?

他のサイトでもあまり説明がなく、あっても結構複雑な関数を書いているものばかりだったので、もっと簡単にできる方法を紹介します。


このページで使用する項目は、こちらとなります。

項目名API参照名データ型
開始日時StartDateTime__c日付/時間
終了日時EndDateTime__c日付/時間

時間差に関する数式

勤務時間や作業時間などの開始日時と終了日時の差を算出したい場合、そのまま差をとってしまうと、よく分からない数字ができてしまいます。

例)9:00~17:30の場合
このままでは活用できないので、赤枠の結果を算出する数式を説明します、

開始と終了の時間差(時間単位)

( EndDateTime__c – StartDateTime__c ) * 24

開始と終了の時間差(分単位)

( EndDateTime__c – StartDateTime__c ) * 1440

開始時間の1時間前

StartDateTime__c – 1/24

解説

数式さえ分かれば良いという話もありますが、理由を知っていたほうが応用できる幅も広がると思いますので、解説しておきます。

Salesforceで日時の差分を算出した結果は、日単位で表示されます。

これを見てもらえると分かりやすいと思います。

そのため、時間単位にしたい場合は24倍、分単位にしたい場合は1,440倍(24時間×60分)しています。
ある日時からn時間増減したい場合は、±n/24すれば算出できます。

これを応用すると、
例えば、作業内容によって想定作業時間が決まっている場合に、作業開始時間と作業内容を登録するだけで、終了予定時間が算出できます。
さらに、終了予定時間と実際の終了時間の差を分析することで、個々人の生産性改善や、そもそもの想定作業時間の精度向上など幅広い活用が可能となります。

Salesforce数式

Posted by biz.connect279