Question

J'ai seulement 2 objets et requête simple pour récupérer les données.

Le résultat de la requête qui est stocké dans ccList réseau selon la sortie de débogage est:

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

Comme vous pouvez le voir retourne system.debug(ccList[0]):

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

Mais quand j'essaie d'obtenir Id (ou tout autre domaine) à partir du tableau, l'erreur se produit. Quelqu'un peut-il point de ce que je fais mal?

code

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
Était-ce utile?

La solution

Je pense que vous devrez changer le type de ccList de « objet » à « CustomThree__c ». Cela vous donnera également la vérification de compilation lorsque vous essayez d'écrire ccList[0].SomeNonExistentFieldName__c.

Si vous ne pouvez pas le faire et vraiment besoin de l'objet qui stocke le résultat d'être générique - Je crois que cela devrait être SObject

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top