Salesforce getDMLRows 処理レコード数のガバナ制限のサンプル

環境
Salesforce

概要
getDMLRows()
DML ステートメント、Database.emptyRecycleBin メソッド、
および他のメソッドなど、DML 制限に含まれるすべてのステートメントを
使用して処理されたレコードの数を返します。

使用例

System.debug('Test1. DML Rows:' + Limits.getDMLRows());
Savepoint sp = Database.setSavepoint();

System.debug('Test2. DML Rows:' + Limits.getDMLRows());
List<Account> accounts = new List<Account>();

for(Integer i = 0 ; i < 1000 ; i++) {
    accounts.add(new Account(Name = String.valueOf(i).leftPad(5).replace(' ', '0')));
}
insert accounts;
System.debug('Test3. DML Rows:' + Limits.getDMLRows());

Database.rollback(sp);
System.debug('Test4. DML Rows:' + Limits.getDMLRows());

実行結果

USER_DEBUG [1]|DEBUG|Test1. DML Rows:0
USER_DEBUG [3]|DEBUG|Test2. DML Rows:1
USER_DEBUG [9]|DEBUG|Test3. DML Rows:1001
USER_DEBUG [11]|DEBUG|Test4. DML Rows:1002

 

IT

Posted by arkgame