[Salesforce]You have uncommitted work pending. Please commit or rollback before calling out

Salesforceの「You have uncommitted work pending. Please commit or rollback before calling out」エラーの原因と解決策について共有します。

・原因

開発においては、外部 Web Service から取得した結果に基いてセールスフォース内のレコードを作成/更新するケースが多々あります。
しかしながら、同じトランザクション内で DML(Insert/Update/Upsert/Delete)発行後にコールアウトを行なう事はでません。

・解決策

上記の様なケースに対応するためには、トランザクションを分け、DMLを発行する前のトランザクションでコールアウト処理を実行する必要があります。

投稿者: kinkun

保有資格 Salesforce Certified Platform App Builder T Salesforce Certified Platform Developer I Salesforce Certified Platform Developer II Salesforce Certified Administrator

コメントを残す

メールアドレスが公開されることはありません。