function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
haruca.kharuca.k 

ガバナ制限(取得できるレコード数 :50,000)のエラーキャッチを行いたい

お世話になっております。

1回のトランザクションでSOQLクエリにより取得できるレコード数 :50,000
のガバナ制限のエラーキャッチを行いたいと考えております。

Limits メソッドのgetQueryRowsで
SOQLクエリを発行することによって返されるレコード数を取得し、
50,000より大きいときcatchするというような処理を考えたのですが、
getQueryRowsだと、まずSelect文を発行してからgetQueryRowsで取得するため、
Select文を発行した段階で50,000件を超えていると、処理が落ちてしまいます。

上記ガバナ制限のエラーキャッチを行う方法などありますでしょうか?
ご存知の方がいらっしゃいましたら教えて頂けると幸いです。

以上、宜しくお願い致します。
Marty C.Marty C.

haruca.kさん、こんにちは。

残念ですが、Force.com Apex コード開発者ガイド[1]で書いた、「一部のApexコードが制限を超える場合、関連付けられたガバナは、処理できない実行時例外を発行します。」

haruca.kさんが一括処理を実装しなければならないと私はそう思います。Force.com Apex コード開発者ガイドである「Apexの一括処理」部分はharuca.kさんに便利になるかもしれません。

[1]: Force.com Apex コード開発者ガイド (http://developerforcejp.s3.amazonaws.com/developer/docs/apexcode/salesforce_apex_language_reference.pdf)