0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Salesforce Visualforce Apex】複数レコード削除後、画面が更新されない

Last updated at Posted at 2025-08-26

はじめに

取引先検索画面作成時、
複数レコード削除実装につまづいたので、まとめます

↓ 完成検索画面
image.png

問題

複数レコード削除後、画面が更新されない

解決方法

複数削除メソッドの最後に、レコードを再取得し表示する処理をいれる
(*一部省略しています)

実装例
/**
    * 一括削除ボタンが押されたら起動するメソッド
    */
    public void bulkDelete() {
        try {
            // 削除実行
            delete [SELECT Id FROM Contact WHERE Id IN :contactListCtrl.selectedIds];

            
            search(); // レコードを再取得して一覧更新
            // ↑この処理がないと、表示レコードが変わらない!
        }

問題は、
delete後、データベース自体からはレコードが削除されているが、
表示されているリストのレコード情報は、削除前のままになっている
こと。

参考画像

私のコードの場合の図解をしてみました
image.png

私のレコード取得の流れが、
検索ボタンが押される → searchメソッド回る → レコード取得 → リストで表示
であるため、もう一度searchメソッドを回すことで、リストを更新できた。
この辺は人によりそうだが、
「削除後レコードを再取得し、リストを再表示する」
工程を入れれば解決する。

おわりに

頭がパンクして大変でした

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?