エラー名でググってもちゃんとした情報が出てこなかったのでメモ。
Apex で複数件の行動を削除(delete)しようとした時、以下のようなエラーが出ることがある。
System.DmlException: Delete failed. First exception on row 0 with id 00U1000000k5j6vEAA; first error: UNSUPPORTED_APEX_TRIGGER_OPERATON, Apex Event trigger cannot handle batch operations on recurring events.: []
調べると、公式ドキュメントに次のような記述が見つかる。
(英語)https://www.salesforce.com/us/developer/docs/apexcode/Content/apex_triggers_defining.htm
(日本語)https://help.salesforce.com/HTViewHelpDoc?id=code_define_trigger.htm&language=ja
引用すると、
(英語)
A trigger invoked by an insert, delete, or update of a recurring event or recurring task results in a runtime error when the trigger is called in bulk from the Force.com API.
(日本語)
定期的なイベントまたは定期的な ToDo の insert、delete、または update によって呼び出されるトリガは、Force.com API からトリガが大量に呼び出されるとき、ランタイムエラーになります。
なので、行動の delete に対するトリガが存在する条件下では、定期的な行動すなわち IsRecurrence = true
なものを一度に複数件 delete することはできないらしい。
日本語では「大量に」と書いてるけど、普通に 2 つ以上同時に削除しようとするとエラーになる。
また、同様の理由により IsRecurrence = true
の予定を複数 update しようとしても失敗します。
リファレンス
上に挙げたの以外だと、こんなナレッジ記事とか。
https://help.salesforce.com/apex/HTViewSolution?id=000194132&language=en_US
Make sure that this trigger doesn't receive a batch containing more than 1 recurring type of events.
more than 1 なのでやっぱり 2 件以上のようです。