この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

DeleteResult クラス

Database.delete メソッドによって返される、delete DML 操作の結果を表します。

名前空間

Database

使用方法

Database.DeleteResult オブジェクトの配列は、delete データベースメソッドで返されます。DeleteResult 配列の各要素は、delete データベースメソッドの sObject[] パラメータとして渡された sObject 配列に対応します。つまり、DeleteResult 配列の最初の要素は、sObject 配列の最初の要素と一致します。また、DeleteResult 配列の 2 番目の要素は sObject 配列の 2 番目の要素と一致し、3 番目以降も同様です。sObject が 1 つのみ渡される場合、DeleteResults 配列には 1 つの要素が含まれます。

次の例では、返された Database.DeleteResult オブジェクトを介して取得および反復処理する方法を示します。Database.delete の 2 番目のパラメータに false を指定して使用し、一部のクエリ済み取引先を削除して、失敗時にレコードの部分的な処理を行えるようにしています。次に、結果を反復処理して、レコードごとに操作が成功したかどうかを判別します。正常に処理された各レコードの ID をデバッグログに書き込むか、失敗したレコードのエラーメッセージと項目を書き込みます。

1// Query the accounts to delete
2Account[] accts = [SELECT Id from Account WHERE Name LIKE 'Acme%'];
3// Delete the accounts
4Database.DeleteResult[] drList = Database.delete(accts, false);
5
6// Iterate through each returned result
7for(Database.DeleteResult dr : drList) {
8    if (dr.isSuccess()) {
9        // Operation was successful, so get the ID of the record that was processed
10        System.debug('Successfully deleted account with ID: ' + dr.getId());
11    }
12    else {
13        // Operation failed, so get all errors                
14        for(Database.Error err : dr.getErrors()) {
15            System.debug('The following error has occurred.');                    
16            System.debug(err.getStatusCode() + ': ' + err.getMessage());
17            System.debug('Account fields that affected this error: ' + err.getFields());
18        }
19    }
20}

DeleteResult メソッド

DeleteResult のメソッドは次のとおりです。すべてインスタンスメソッドです。

getErrors()

エラーが発生した場合、エラーコードと説明を示す 1 つ以上のデータベースエラーオブジェクトからなる配列を返します。エラーが発生しなかった場合は、空のセットを返します。

署名

public Database.Error[] getErrors()

戻り値

型: Database.Error[]

getId()

削除しようとしている sObject の ID を返します。

署名

public ID getId()

戻り値

型: ID

使用方法

この項目に値が入力されている場合、オブジェクトは正常に削除されています。この項目が空白の場合、そのオブジェクトに対する操作は失敗しています。

isSuccess()

このオブジェクトに対する DML 操作が成功した場合、Boolean 値は true に設定されます。それ以外の場合は false です。

署名

public Boolean isSuccess()

戻り値

型: Boolean