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

はじめに

VFとApexで取引先責任者検索画面を作っていたらつまづいたので、まとめます。

↓ 完成検索画面

image.png

問題

検索結果レコードが1件も表示されない

原因

レコードを格納するタイミングで、再び初期化(インスタンス化)してしまっており、新しく空のresultsというリストを作っていたため

間違いコード
public class searchPage{
    public List<Contact> results { get; set; } //SOQLで取得した取引先責任者

    public searchPage() { 

        // 条件で絞る処理などがここに書いてある。今回は省略

        List<Contact> results = Database.query(finalQuery); // ←ここでまた初期化している!!

    }
}

こうすると、resultsという箱が2個できてしまい、
表示されない側のresultsに検索結果が入ってしまいます。

↓ イメージ
スクリーンショット 2025-08-26 160143.png

解決方法

再初期化してしまっていたコード部分を消す

正しいコード
public class searchPage{
    public List<Contact> results { get; set; } //SOQLで取得した取引先責任者

    public searchPage() { 

        // 条件で絞る処理などがここに書いてある。今回は省略

        results = Database.query(finalQuery); 
        // ↑ここで初期化せずに、作っておいたresultsに値を入れる!

    }
}

おわりに

とにかく初学者は、インスタンス化の理解をしていることが必要かなと思いました!
時間かかるかもですが、
必要だとなんとなくわかればいいかと思います。

わかりやすいと思ったサイトの参照:

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?