Loading
以程式碼增強 Salesforce
若發生 Apex 例外,會如何?

若發生 Apex 例外,會如何?

若發生例外,程式碼執行會停止。在例外之前處理的任何 DML 作業會回復且不會認可至資料庫。例外會記錄在除錯記錄中。針對未處理的例外,也就是程式碼未找出的例外,Salesforce 會傳送一封包含例外資訊的電子郵件。一般使用者會在 Salesforce 使用者介面中看到一則錯誤訊息。

必要版本

提供版本:Salesforce Classic (並非所有組織皆適用) 和 Lightning Experience
提供版本:PerformanceUnlimitedDeveloperEnterpriseDatabase.com Edition
需要的使用者權限
若要存取 Apex 例外電子郵件設定頁面 「檢視設定」權限
若要撰寫 Apex 程式碼 Author Apex
使用 Tooling API 的時機 已啟用 API
備註
備註 若要保護您資料的隱私權,請確保個人資料中未包含任何錯誤訊息和例外詳細資料。Apex 例外處理常式和測試架構無法判斷使用者定義的訊息和詳細資料中是否包含敏感資料。若要在自訂 Apex 例外中包含個人資料,建議您用新的屬性建立一個「例外」子類別,將個人資料保留在其中。並且請不要將子類別屬性資訊包含在例外的訊息字串。

未處理例外電子郵件

出現未處理的 Apex 例外時,系統會傳送電子郵件,其中包含 Apex 堆疊追蹤、例外訊息、客戶的組織及使用者識別碼、組織及使用者名稱,以及「我的網域」名稱。報告中不會傳回任何其他資料。預設會將未處理例外電子郵件傳送至在失敗類別或觸發上的「上次修改者」欄位中指定的開發人員。此外,您也可以將電子郵件傳送至 Salesforce 組織的使用者以及任意電子郵件地址。這些電子郵件收件者也可以收到程序或流程錯誤電子郵件。若要設定這些電子郵件通知,請進入「設定」,在「快速尋找」方塊中輸入 Apex 例外電子郵件,然後選取「Apex 例外電子郵件」。接著,輸入的電子郵件地址會套用至客戶組織中所有受管理的封裝。您也可以使用 Tooling API 物件 ApexEmailNotification 來設定 Apex 例外電子郵件。

如需有關未處理例外狀況電子郵件的詳細資訊,請參閱未處理例外狀況電子郵件

備註
備註 如果在同步或非同步執行的 Apex 程式碼中發生重複的例外,則系統就不會傳送後續的例外電子郵件,而僅傳送第一封電子郵件。此電子郵件抑制會防止開發人員的收件匣填滿關於相同錯誤的電子郵件。

使用者介面中的未處理例外

如果一般使用者在使用標準使用者介面時遇到 Apex 程式碼中發生例外,會出現一則錯誤訊息。該錯誤訊息包括與下文所示通知類似的文字。

新商品頁面中的未處理例外
 
正在載入
Salesforce Help | Article