【経理業務の効率化】第2営業日を調べるのにカレンダーなんてやめて、ラクしましょう。
はじめに
なぜこんなものを作ったのか、、、
ぶっちゃけカレンダーから第二営業日はいつか、いちいち確認すればいいやんと思った方も多いかもしれませんがはっきりと言います、、、
そんなんクソめんどくせぇやん
考えてみて下さい。
「自社オリジナル休暇はいつだっけ?」
「日本の祝日はいつだっけ?」
「自社の定休日は水、日だからえーっと、、、」
都度こんなことしたいですか?私は嫌です!!!
ということで、Salesforce内のレコードに第二営業日であったり、第三営業日を出してくれる機能を作ってみたので検証結果を共有します!!!
導出の仕組み
基本的な仕組みは下記のimgの通りで、後述するコード例の通り、定休日や会社独自の休暇についてはハードコード、または別の設定ファイルから読み出すなどで対応する形です!
また、日本の祝日情報については祝日APIやGoogleカレンダーAPIから祝日情報を取得することで、ラクしてます!
※前述の定休日等をカレンダーから読み取らせないのは、なんでもカレンダーに入力させるとストレスが溜まってくるという私の偏見からです。
img1はApexクラスのフローで、実際のアドミン業務ではFlowにてサブフローに組み込んだApexアクションとして実行させます!
※意図としては、Apexや Salesforceに詳しくなくても容易に扱えるようにフロー化したかったからです!
img2,3について、画面フロー直後にある割り当て要素(必要な営業日数の指定)にて、「適当な年月を指定(日はテキトー)」と「何日ぶんの営業日を取得するか」を設定します!
※コレクション変数
そして少し面倒なのですが、コレクション変数は現状ループで抽出する必要があるため、ループ要素と決定要素で今回は第一と第二の営業日を取得させています。これは変数ごとに持たせるので、直接要素の追加が必要ですが、第五営業日なども取得できます!
まとめ
Salesforceの制限も楽しめてこそアドミンです。
おまけ
有料範囲でコード公開
この記事が気に入ったらサポートをしてみませんか?