見出し画像

Salesforce: 特定の日付でのみフローを実行する方法


はじめに


こんにちは。
今回は、特定の日付でのみフローを実行する方法についてご紹介します。
具体的にはスケジュールトリガーフローでフローを作成し、そのフロー内で数式を設定することによって実現可能です。


では設定方法をご紹介していきます。

特定の日付でのみフローを実行する方法

設定方法をご紹介していくにあたって、今回は4/1に実行するフローを作成していきます。なお、日付は1つのみではなく複数指定することも可能ですので、その方法も併せてご紹介していきます。


1. スケジュールトリガーフローを作成する

スケジュールトリガーフローを作成していきます。
[設定] > [フロー] > [新規フロー] を選択し、画像①の[新規フロー]画面で[スケジュールトリガーフロー]を選択し[作成]をクリックします。
その後画像②の[スケジュール設定]画面が表示されるので、任意の[開始日]・[開始時刻]を入力し、[頻度]は「毎日」とします。

画像①


画像②

次に画像③の[オブジェクト及び検索条件を選択]画面でフローで処理を行いたいオブジェクト、及び対象のレコードの絞り込みを行います。

画像③

2. 起動した日の日付が4/1であるかどうかを判別する

作成したスケジュールトリガーフローは、1. で設定した[開始日]から毎日[開始時刻]に起動することとなります。4/1にのみ処理が実行されるためには、起動した日の日付が4/1であるかどうかをチェックを行い、4/1であるなら処理を実行し、4/1ではないならフローを終了するように設定を行うことが必要です。以下でその手順を紹介していきます。

① 数式を作成する

起動した日の日付が4/1かどうかをチェックする数式をフロー内で作成していきます。
画像①の赤枠内のボタンをクリックし、[新規リソース]をクリックします。

画像①

クリックすると[新規リソース]画面が表示されるので[リソース種別]下にある空欄の任意の場所をクリックし、表示された選択肢の中から画像②のように[数式]を選択します。

画像②

選択すると画像③の画面が表示されるので任意の[API参照名]を命名し、[データ型]は「Boolean」を選択します。そして、[数式]には以下の数式を入力し、[構文を確認]をクリックして画像③のように数式にエラーがないことを確認します。

<数式>
AND(
        MONTH({!$Flow.CurrentDate})=4,
        DAY({!$Flow.CurrentDate})=1
)
<数式の解説>
この数式は、現在の日付の月が4(つまり4月)であり、かつ日にちが1(つまり1日)である場合に真(True)を返します。
つまり、この数式は4月1日であるかどうかをチェックする数式となります。以下は、各要素の説明です。

$Flow.CurrentDate:フローが実行される現在の日付を示します。
AND関数:括弧内のすべての条件が真(True)の場合に真を返します。 MONTH関数:括弧内の日付の月部分を数値(1-12)で返します。
DAY関数:括弧内の日付の日部分を数値(1-31)で返します。

画像③

参考:複数の日付でフローを実行したい場合

4/1と10/1など、複数の日付でフローを実行したい場合は数式を以下のように修正することで実現可能です。


<数式>
OR(
AND(
MONTH({!$Flow.CurrentDate})=4,
DAY({!$Flow.CurrentDate})=1
),
AND(
MONTH({!$Flow.CurrentDate})=10,
DAY({!$Flow.CurrentDate})=1
)
)

<数式の解説>
この数式は現在の日付が4月1日または10月1日である場合に真(True)を返します。
OR関数は括弧内のいずれかの条件が真(True)であれば、真を返す関数となるので、この要領で数式にAND(...)を追加していけば複数の日付でフローを実行することが可能です。

② 決定要素を作成する

①で設定した数式の結果が真である場合(起動した日の日付が4/1である場合)と偽である場合(起動した日の日付が4/1でない場合)にフローの処理を分岐するよう設定を行っていきます。分岐の設定には[決定]というフロー要素を使用します。

画像④のように1. で設定した[開始]の下の+ボタンを押し、[決定]を選択し設定を行っていきます。

画像④

[決定]を選択すると、画像⑤の画面が表示されます。初めに任意の[表示ラベル]と[API参照名]を入力します。

画像⑤

次に起動した日の日付が4/1である場合の設定を行います。[結果]の[新しい結果]タブで画像⑥のように設定を行います。

画像⑥

そして、起動した日の日付が4/1でない場合の設定を行います。[結果]の[デフォルトの結果]タブで画像⑦のように表示ラベルを分かりやすい名前とし、[完了]をクリックします。

画像⑦

以上で特定の日付でのみフローを実行する設定は完了です。画像⑧のように起動した日の日付が4/1である・ない場合でフローを分岐することができたので、4/1のみ行いたい処理を[決定]要素の「4/1」に追加することで4/1にフローの処理が実行されることとなります。

画像⑧

まとめ


今回は、特定の日付でのみフローを実行する方法についてご紹介しました。
数式を利用することによって標準で用意されている以外の頻度にスケジュールトリガーフローを設定することが可能となります。


Salesforceに関するお悩みはありませんか?


今回ご紹介したフローをはじめとするSalesforceの機能活用について、

「調べるのに時間がかかる...」
「作ったはいいがバグが起こらないか心配...」
「Salesforceを活用したいけどそこまで手が回らない...」

などお悩み事はありませんか?

Air合同会社ではSalesforceエンジニアを一人雇うほどの業務は無いが、業務を任せたいというお客様へ月 数時間~40時間で柔軟にご利用頂けるSalesforce活用支援サービスを提供しています。
機能の実装や改善のご提案、社内での内製化支援まで、貴社のSalesforceのお悩みを解決いたします。Salesforceをより活用し課題解決を行なっていくための手段としてぜひご検討ください。

Salesforce業務を他社に外注するイメージがわかない…という方に向け、外注する際のメリット・デメリットやSalesforce開発の流れを以下の記事で解説しています。ぜひご覧ください。(自社サイトへ移動します。)
Salesforce運用保守を外注するメリット・デメリットとは?
Salesforceのノーコード・ローコード開発の流れを解説!

また、弊社では「サービスについて簡単に知りたい」「Salesforceの使い方について相談したい」などSalesforceに関する無料相談会も随時実施しています。まずはお気軽にお問い合わせください。

↓関連記事

↓サービスの資料請求はこちらからお申し込みいただけます。

↓無料相談はこちらからお申し込みいただけます。


この記事を書いた人
Suzuki

Salesforceの認定資格「Salesforce認定アドミニストレーター」を保有しています。 IT業務経験ゼロからSalesforceに関する実務に携わってきた経験をもとに、初心者の目線に立って各種機能の活用方法や設定手順をステップバイステップでわかりやすくご紹介します。

いいなと思ったら応援しよう!