function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
bronzebronze 

ゴミ箱に表示されるレコードについて

 

いつもお世話になってます。

 

ゴミ箱に表示されるレコードについてですが、

例えば、ユーザが操作できるオブジェクトのレコードに紐付く、

システム側で保持している別オブジェクトのレコードが存在していて、

ユーザがレコードを削除したタイミングでトリガを利用し、システム側のレコードも削除しています。

すると、ゴミ箱の中にシステム側のレコードが表示されてしまします。

 

このシステム側のレコードを復元すると、おかしなレコードが残ってしまうので

どうにかして都合の悪いレコードは表示しないようにしたいのですが、

何か方法はないでしょうか?


宜しくお願い致します。

 

Best Answer chosen by Admin (Salesforce Developers) 
bronzebronze

 

>buzzKさん、Tylorさん

 

返信遅くなって申し訳ありません。

ご回答ありがとう御座います。

 

なるほど、所有者の変更は思いつきませんでした。

完全削除の処理は大変ありがたいです。

 

まだ、試していませんが用途にあわせて使い分けたいと思います。

 

ありがとうございました。

All Answers

buzzKbuzzK

ユーザに復元させたくないのであればトリガーの中で所有者をシステム管理者に変更するのはいかがでしょうか?

 

TylorTylor

表示したくないレコードをごみ箱から完全に削除してしまう方法であれば、Apex Code(Ver.17以降)でできます。

 

レコード削除後(トリガ)のタイミングで以下の完全削除の処理を実行してください。

 

 

// 完全削除したいオブジェクトを引数にemptyRecycleBinメソッドを実行
Database.EmptyRecycleBinResult resultEmptyRecycle = Database.emptyRecycleBin(Sobject);

削除したいオブジェクトは、Trigger.oldで取得してください。

 

詳しい仕様はドキュメントを参 照してください。

 

bronzebronze

 

>buzzKさん、Tylorさん

 

返信遅くなって申し訳ありません。

ご回答ありがとう御座います。

 

なるほど、所有者の変更は思いつきませんでした。

完全削除の処理は大変ありがたいです。

 

まだ、試していませんが用途にあわせて使い分けたいと思います。

 

ありがとうございました。

This was selected as the best answer