「SObject row was retrieved via SOQL without querying the requested field: XXX」についてみていきます。
1.エラー発生原因
SQOLのSELECTにて取得していない項目をApexで利用した際に発生するエラーです。
2.エラー解決策
エラー項目をSELECT文に項目追加すれば解消されます。
Account acc = [SELECT id FROM Account limit 1];
String accName = acc.Name; // SELECTしていないName項目を利用しているためエラー
上記の例ではName項目を取得していないためエラーとなっていますが、SELECT項目にNameを追加すれば解消されます。
3.まとめ
簡単なエラーなので一度対応すれば次回からは問題なく対応できると思います。
以上です。
コメント