emptyRecycleBin()
構文
1EmptyRecycleBinResult[] = connection.emptyRecycleBin(ID[] ids);使用方法
ごみ箱では、過去 15 日間に削除したレコードを参照および復元できます。ごみ箱で 30 日以上が経過したレコードは完全に削除されます。組織では、一度に 1 ライセンスあたり最大 5,000 件のレコードをごみ箱に入れることができます。たとえば、組織に 5 つのユーザライセンスがある場合、25,000 件のレコードをごみ箱に格納できます。組織のごみ箱が上限に達すると、Salesforce によって、ごみ箱に入れられてから 2 時間以上経過しているレコードが古い方から順に削除されます。
大量のレコードをごみ箱に入れ、そのレコードを undelete() で復元する必要がないとわかっている場合に、Salesforce プロセスがレコードを削除する前にごみ箱から削除できます。たとえば、テストで大量のレコードを読み込む場合、または大量の create() コールと delete() コールを続けて行う場合などにこのコールを使用できます。
ルールとガイドライン
ごみ箱を空にする際は、次のルールやガイドラインを考慮する必要があります。
- ログインユーザは、自身のごみ箱にあるレコード、または、下位のごみ箱にあるレコードの中でクエリ可能なものはすべて削除できます。ログインユーザが「すべてのデータの編集」権限を持っている場合、組織内のすべてのごみ箱のレコードに対するクエリと削除を実行できます。
- バージョン 10.0 以降で利用できます。
- 最大レコード数は 200 件です。
- カスケード削除できるレコードの ID は含めないようにしてください。エラーが発生します。
- このコールを使用してレコードを削除すると、undelete() で復元することはできません。
- このコールを使用してごみ箱からレコードを削除した後もしばらくは queryAll() を使用してクエリを実行できます。一般的には 24 時間ですが、前後することがあります。
サンプルコード —Java
このサンプルでは、ごみ箱を空にする方法を示します。ごみ箱から削除するレコードの ID を含む配列を受け取ります。emptyRecycleBin() をコールし、ID の配列を渡します。次に、結果を反復処理し、削除されたレコードの ID または失敗したレコードの最初のエラーをコンソールに書き込みます。
1swfobject.registerObject("clippy.codeblock-1", "9");
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17public void emptyRecycleBin(String[] ids) {
18 try {
19 EmptyRecycleBinResult[] emptyRecycleBinResults = connection
20 .emptyRecycleBin(ids);
21 for (int i = 0; i < emptyRecycleBinResults.length; i++) {
22 EmptyRecycleBinResult emptyRecycleBinResult = emptyRecycleBinResults[i];
23 if (emptyRecycleBinResult.isSuccess()) {
24 System.out.println("Recycled ID: "
25 + emptyRecycleBinResult.getId());
26 } else {
27 Error[] errors = emptyRecycleBinResult.getErrors();
28 if (errors.length > 0) {
29 System.out
30 .println("Error code: " + errors[0].getStatusCode());
31 System.out
32 .println("Error message: " + errors[0].getMessage());
33 }
34 }
35 }
36 } catch (ConnectionException ce) {
37 ce.printStackTrace();
38 }
39}サンプルコード —C#
このサンプルでは、ごみ箱を空にする方法を示します。ごみ箱から削除するレコードの ID を含む配列を受け取ります。emptyRecycleBin() をコールし、ID の配列を渡します。次に、結果を反復処理し、削除されたレコードの ID または失敗したレコードの最初のエラーをコンソールに書き込みます。
1swfobject.registerObject("clippy.codeblock-2", "9");
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17public void emptyRecycleBin(String[] ids)
18{
19 try
20 {
21 EmptyRecycleBinResult[] emptyRecycleBinResults =
22 binding.emptyRecycleBin(ids);
23 for (int i = 0; i < emptyRecycleBinResults.Length; i++)
24 {
25 EmptyRecycleBinResult emptyRecycleBinResult = emptyRecycleBinResults[i];
26 if (emptyRecycleBinResult.success)
27 {
28 Console.WriteLine("Recycled ID: "
29 + emptyRecycleBinResult.id);
30 }
31 else
32 {
33 Error[] errors = emptyRecycleBinResult.errors;
34 if (errors.Length > 0)
35 {
36 Console.WriteLine("Error code: " + errors[0].statusCode);
37 Console.WriteLine("Error message: " + errors[0].message);
38 }
39 }
40 }
41 }
42 catch (SoapException e)
43 {
44 Console.WriteLine("An unexpected error has occurred: " +
45 e.Message + "\n" + e.StackTrace);
46 }
47}引数
| 名前 | 型 | 説明 |
|---|---|---|
| ids | ID[] | ごみ箱から削除するレコードに関連付けられた 1 つ以上の ID の配列。最大レコード数は 200 件です。 |