「Too many SOQL queries: 201」エラーが発生した場合の対処手順

CalsketのGoogleカレンダー同期機能を利用している場合、その処理件数やご利用のプロセスやApexトリガの作成状況によっては「Too many SOQL queries: 201」を含むエラーが発生することがあります。

これは、GoogleカレンダーからSalesforceの同期を行う際、5分ごとに実行されるCalsketの定期的なジョブによって、5分の間に更新のあった予定を一括で更新(同期)します。その際、1件の行動の更新に伴って作成されている全てのプロセスやApexトリガーが実行されることになりますが、その中で発行されるクエリーの総数がSalesforceのリミットを超えた場合にエラーが発生します。

本件はGoogleカレンダー同期機能の 「Googleカレンダー同期バッチサイズ」及び「Googleカレンダー繰り返し予定同期バッチサイズ」を変更を下記の手順に従って設定することで、同時に実行される処理数を制限し、エラーを回避することが可能です。本エラーが発生した場合はまず下記の手順をお試しください。

エラーの確認方法については「定期的なジョブで発生するエラーの確認方法」をご参考ください。

Googleカレンダー同期バッチサイズの変更手順

❶ Salesforceの設定画面を開きます。

❷ 左上の「クイック検索」に「カスタム設定」と入力し、「カスタム設定」をクリックします。

❸ 「Calsketシステム設定」の左側の「Manage」をクリックします。

❹ 「編集」ボタンをクリックします。

❺ 「Googleカレンダー同期バッチサイズ」及び「Googleカレンダー繰り返し予定同期バッチサイズ」に「5」を入力し、「保存」ボタンをクリックしてください。

❻ 本設定を行った上で様子を見ていただき、それでも発生するようであればバッチサイズをより下げてお試しください。仮にバッチサイズを「1」にしてもエラーがでるようであればApexトリガーやプロセスの設計を見直す必要があります。

最終更新