【Salesforce】DmlExcepionで入力規則エラーを取得【Apex】
ApexクラスでDmlExceptionをキャッチすることで入力規則のエラーを取得できます。
try { upsert account; } catch (DmlException e) { for (Integer i = 0; i < e.getNumDml(); i++) { ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR,e.getDmlMessage(i))); } }
上記の方法でエラーを取得できますが、1点注意が必要です。
入力規則のエラー表示位置の設定によって取得できるエラー数が異なります。
「ページ上部」:1レコードで1つのみ取得可能 「項目下」:1レコードで複数取得可能