1.はじめに
Salesforceの日付/時間項目ので指定時間の1時間後をデフォルトで入れてほしいとの要件があり対応したのでメモしておきます。
項目のデフォルト値の計算でもフローの計算でも使えるので、テクニックとして覚えておくと便利です。
2.手順
本当に簡単なのでサクッと解説。
日付時間に1を加減算すると1日(24時間)の加減算となる。
1時間加算したいたのであれば、24時間分の1時間なので、1/24を加算すれば良い。
30分なら、24時間分の0.5時間なので、1/48を加算すれば良い。
表にまとめると
例 | 数式 |
---|---|
現在時刻に1時間加算したい。 | NOW()+1/24 |
現在時刻に1時間減算したい。 | NOW()-1/24 |
現在時刻に30分加算したい。 | NOW()+1/48 |
現在時刻に30分減算したい。 | NOW()-1/48 |
1時間や30分以外も同様に24時間を基準に考えればOK。
1.具体例で説明
以下の3項目を作成して比較してみる。
- 現在日時
- 現在日時から1時間加算
- 現在日時から30分加算
「現在日時」項目
→デフォルト値に現在時刻を設定
「現在日時から1時間加算」項目
→デフォルト値に現在時刻+1/24を設定
「現在日時から30分加算」項目
→デフォルト値に現在時刻+1/48を設定
画面表示を確認してみるとそれぞれ想定どおりに時間が加算されていることが確認できる。
3.まとめ
意外と検索しても出てこなかったので、最初結構ハマりましたが、一度知ってしまえば納得できますね。
参考なれば幸いです。