non-programmers salesforce 小ネタブログ

Apexやvisualforceなどプログラミングの力を使わずにどこまでやれるか小ネタを投稿します。

プロセスビルダーでISCHANGED(「%項目」)を使わないでください

ご無沙汰してます。

ほぼ毎日のようにフローとプロセスビルダーを駆使していてかなりレベルは上がっているのですが、ブログに反映していませんでした。これからは貯めこんだネタというか備忘録代わりにかけていけたらと思います。

 

今日はライトにプロセスビルダーの起動条件について。

プロセスビルダーで条件分岐をする際に数式でISCHANGED関数を使うことはよくあると思います。◯◯が更新されたらこのアクションをする、というような。ここで項目を指定しますが、なぜかパーセント項目を指定すると、該当項目を更新しなくてもなぜか必ず起動してしまいます。そこがわからなくて、どうしても動いてしまうプロセスビルダーに対して数日間本当に苦労しました。

 

これはどうもプロセスビルダーのバグということで間違いないように思います。海外でも投稿がありました。

ISCHANGED(PercentType_Field__c) always returns true in Process Builder - Salesforce Developer Community

 

解決方法は上記リンクに記載されていましたが、パーセント項目の変化には数式を使わずに、条件を満たしているを使います。そして該当項目を選んだあとに「更新済み」で「true」を選ぶと解決します。演算子に「更新済み」なんてあるのを知らなかった・・・。

 

こんなシンプルな解決法ですが、ISCHANGED関数がパーセント項目に使えないのは本当にどうにかしてもらいたいものです。