こんにちは。にいるです。
今回は開発関連です。
エラー「List has no rows for assignment to SObject」について、見ていきたいと思います。
1.エラー発生原因
「List has no rows for assignment to SObject」」の発生原因は、SOQLやSOSLでSELECTした結果が、0件の場合に発生します。
結果のListをVisualforceページにバインドできていても、結果が0の場合の処理方法をApex側で記載しておかないといけません。
2.エラー解決策
「List has no rows for assignment to SObject」のエラー解決策は、結果が0の場合の処理を記載しておけば発生を防ぐ事ができます。
例えば、リストの中身を調べるために「List.size() == 0」や「List.isEmpty()」を使用する事ができます。
これをif文などの分岐で処理を分けておけば大丈夫です。
3.まとめ
いかがでしたでしょうか。
このエラーはよくぶち当たるので、SELECT文を作成する際は、考慮しておかないといけないですね。
他にも回避方法がないか調べてみます。
他にも色々と標準機能やSalesforce機能について紹介しています。
そのまとめ一覧ページはこちらになりますので、よければ見てみてください。
ではでは!
コメント