フィールド式の初期用語は、具体的なすすり病でなければなりません:オブジェクト
-
29-09-2019 - |
質問
データを取得するための2つのオブジェクトと簡単なクエリしかありません。
配列に保存されているクエリの結果 ccList
デバッグによると、出力は次のとおりです。
(
CustomThree__c:
{
Name=cusmei3 2,
customOne__c=a005000000IwnOPAAZ,
Id=a025000000FsFGQAA3
},
CustomThree__c:
{
Name=cusmei3 1,
customOne__c=a005000000IwnOUAAZ,
Id=a025000000FsFGLAA3
}
)
ご覧のように system.debug(ccList[0])
戻り値:
CustomThree__c:{
Name=cusmei3 2,
customOne__c=a005000000IwnOPAAZ,
Id=a025000000FsFGQAA3
}
しかし、私が得ようとするとき Id
(またはその他のフィールド)配列から、エラーが発生します。誰かが私が間違っていることを指摘できますか?
コード
Object[] ccList;
ccList = [SELECT id, name, CustomOne__r.name FROM CustomThree__c];
system.debug(ccList);
system.debug('******************************************');
system.debug(ccList[0]);
system.debug(ccList[0].Id); //this one cause the error
解決
cclistのタイプを「オブジェクト」から「customthree__c」に変更する必要があると思います。これにより、書き込みを試みたときにコンパイル時間チェックを提供します ccList[0].SomeNonExistentFieldName__c
.
あなたがそれを行うことができず、実際に保存するオブジェクトがジェネリックであると結果として必要な場合 - 私はこれがすすり泣くべきだと思いますか?
所属していません StackOverflow