Domanda

Ho appena 2 oggetti e semplice query per recuperare i dati.

Il risultato di ricerca che è memorizzato nella matrice ccList secondo debug è:

(
    CustomThree__c:
    {
    Name=cusmei3 2, 
    customOne__c=a005000000IwnOPAAZ, 
    Id=a025000000FsFGQAA3
    }, 
    CustomThree__c:
    {
    Name=cusmei3 1, 
    customOne__c=a005000000IwnOUAAZ, 
    Id=a025000000FsFGLAA3
    }
)

Come si può vedere i rendimenti system.debug(ccList[0]):

CustomThree__c:{
    Name=cusmei3 2, 
    customOne__c=a005000000IwnOPAAZ, 
    Id=a025000000FsFGQAA3
}

Ma quando cerco di ottenere Id (o altro campo) dalla matrice, si verifica l'errore. Qualcuno può punto che cosa sto sbagliando?

codice

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
È stato utile?

Soluzione

Credo che dovrete cambiare il tipo di ccList da "oggetto" a "CustomThree__c". Questo vi darà anche il controllo a tempo di compilazione quando si tenta di ccList[0].SomeNonExistentFieldName__c scrittura.

Se non è possibile farlo e ha realmente bisogno l'oggetto che memorizza risultano essere generica -? Credo che questo dovrebbe essere SObject

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top