2022/09/5

SalesforceでISCHANGED関数を利用する方法を学んで、運用に役立てよう!

 
  

Salesforce ISCHANGED関数とは何か

ISCHANGEDはSalesforceで利用できる関数の1つです。Salesforceではワークフローやプロセスビルダーといった自動処理の評価条件として関数を利用することができます。そのSalesforce上で利用できる標準関数の中に、「ISCHANGED関数」があります。 ISCHANGED関数は、項目の値を、前の値と比較してその2つが違う場合は TRUE を返し、値が同じ場合 FALSE を返す関数です。 このISCHANGED関数を使い、特定の項目に変更があったことを検知し、様々な自動処理につなげることができます。

ISCHANGED関数の使用用途

ではISCHANGED関数が利用できる状況とは、具体的にどういったものでしょうか。 前述の通り、ISCHANGED関数は項目の値に変化があったことを検知するための関数になります。例えば以下のようなシーンで利用することができます。

入力規則として利用する

入力規則としてISCHANGED関数を利用したルールを作成し、特定の項目をSalesforceのユーザが変更できないような処理を作成したいときに利用できます。 例えばSalesforceユーザ側で不正な値に変更されないかなどを入力規則によって設定し、変更された際にレコードの保存ができないといった制御を行いたいときに利用することができます。

ワークフローで利用する

ワークフロールールの条件としてISCHANGED関数を利用し、特定の項目に変更があった際にワークフローアクション(メールアラートや項目自動更新など)を起動させたいときに利用できます。 例えばISCHANGED関数を条件に通知を送信したり、同じオブジェクト内の別の項目を特定の値に変更させたりしたいときなどに利用できます。

ISCHANGED関数の使用方法

ISCHANGED関数の使用方法と注意点について記述します。 ISCHANGED関数は以下のように記述します。
ISCHANGED(“項目名”)
この項目名にはAPI参照名を入力します。 例えば、ケースの項目:優先度(API参照名:Priority)に変更があったことを検知したいときには、以下のような関数を記述します
ISCHANGED(Priority)
なお、ISCHANGED関数は、次の場所で使用することができます。 ・割り当てルール ・入力規則 ・項目自動更新 ・評価条件が [レコードが次の場合にルールを評価: 作成されたとき および編集されるたび] に設定されている場合はワークフロールール。 ・プロセスビルダーでアクションを実行する数式条件 また、テキスト項目でこのISCHANGED関数を利用することもできます。 例えば、あるテキスト項目Aが、空欄の状態から、なにか値が入力された場合、判定はTRUEとなります。言い換えると、「空欄のテキスト項目に値が入力されたとき」を条件とした処理を作成したい際に、このISCHANGED関数を利用することで検知することが可能になります。

ISCHANGED関数の利用上の注意

ISCHANGED関数を利用する際の注意事項を確認していきましょう。 ワークフロールールにおいてISCHANGED関数が利用できない場合があります。 ワークフローの評価条件が、「作成されたとき」の場合、または「作成されたとき およびその後基準を満たすように編集されたとき」には以下のエラーが表示され、利用することができませんので、利用時には注意が必要です。 ”関数 ISCHANGEDは、この種類の数式では使用できません””

実際の利用シーン例:ワークフロールールを使ってISCHANGED関数を利用してみる

では、実際にワークフロールール上でこのISCHANGED関数を条件に処理を実行してみましょう。 例えば、Salesforceのユーザから以下のようなリクエストがあったとします。 「応対しているあるケースは、顧客からの要望により優先度が変更されます。その際、優先度が変更されたら管理者の方で確認・対応しなければいけないので、優先度が変更された際に、メンバーに通知メールを出したい」 そんな状況のとき、このISCHANGED関数とワークフロールールを使って設定を行っていきます。

設定手順

実際の設定手順は以下の通りです。 ① 設定>プロセスの自動化>ワークフロールールを開きます ② 新規ルールのボタンをクリックします ③ このワークフロールールを適用するオブジェクトを設定します。今回はケースの優先度を使うので、ケースを選択します ④ ルールの編集で任意のルールの名前を設定します。(例:ケースの優先度に変更があった場合に通知メールを出す) ⑤ 評価条件は「作成されたとき および編集されるたび」とします。 ルール条件は次の場合にこのルールを実行: 数式の評価が true になるを選択します。 ⑥ 画面右側の関数のリストボックスから、ISCHANGEDを選択します。選択すると、ISCHANGED(field)という構文が挿入されます。今回はこのfieldの値を、ケースの項目:優先度のAPI参照名:Priorityに書き換えます。 ⑦ 構文が完成しました。ISCHANGED(Priority)と記載されていることを確認したのち、「構文を確認」ボタンをクリックします。エラーがなければルールは正常に動作しています。エラーが表示された場合は改めて構文を確認します。 なお、前述の通りワークフローの評価条件が、「作成されたとき」の場合、または「作成されたとき およびその後基準を満たすように編集されたとき」にはISCHANGED関数は利用できませんので、エラーが出た場合には、ワークフローの評価条件が適切な値になっているかを確認するようにしてください。 ⑧ ワークフロールールが作成し終わったら、あとはワークフローアクション>ルール適用時のアクションから、メールアラートを設定すれば、優先度の変更に伴ったワークフローメールアラートの設定をすることができます。

ISCHANGED関数における評価条件

ISCHANGED関数に限らず、関数は様々な他の条件を組み合わせて判定をすることができます。例えば、IF関数やAND関数はよく他の関数と組み合わせて利用される関数です。 今回のISCHANGED関数における評価条件のように、それぞれの関数の利用の仕方や、条件ごとに考慮しなければいけない点は異なります。 実際に利用する前に関数の特徴や考慮事項については押さえておいた方が良いでしょう。確認したい場合には、Salesforceの公式のヘルプにより詳細な内容が記載されていますのでそちらを合わせて参照するようにしましょう。

ISCHANGED関数を上手に活用しましょう

いかがでしたでしょうか、今回はSalesforceの関数の1つである「ISCHANGED関数」について紹介をさせていただきました。 ISCHANGED関数は項目の前の値から変更されたことを検知する関数です。ある項目を特定の値から変更させたくないときに設定する入力規則や、ある項目が変更されたことをトリガーに通知や項目の自動更新を行うワークフロー・プロセスビルダーの上で利用することができます。 Salesforceユーザの業務要件に基づき、データの品質を高めたり、データ入力の省力化・生産性の向上を目的として実装したりできるよう、是非活用できるようにしておきましょう。]]>

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】