You need to sign in to do that
Don't have an account?
Nested Queries Not Returning Using a Referenced Apex Class
I am having an issue where nested query results are not returning when being passed through a different class.
Here is my scenario.
Master Object: Project__c
Child Object: ProjectRole__c
When using a subquery in the same class, the related subqueried objects show up just fine.
list<Project__c> pl = [Select Id, Name, (Id, Name from ProjectRoles__r) from Project__c]; system.debug(pl.get(0).ProjectRole__r);
Running this query in a class or in the developer console returns the ProjectRoles__r subquery just fine.
DEBUG|(ProjectRole__c:{Project__c=a0lg0000002tbnuAAA, Id=a0mg00000048QUTAA2, Name=PRR-0000117848}, ProjectRole__c:{Project__c=a0lg0000002tbnuAAA, Id=a0mg00000048QUUAA2, Name=PRR-0000117849})
However, when you reference a class to return this query, the subqueries are completely lost.
public without sharing class QueryController { public static list<Project__c> getProjects(){ return [Select Id, Name, (Id, Name from ProjectRoles__r) from Project__c]; } }
list<Project__c> pl = QueryController.getProjects(); system.debug(pl.get(0).ProjectRole__r);While the Project__c record is returned, none of the subqueried records are returned.
DEBUG|()
Anyone have any ideas?
The class in which you are referencing this method should be declared without sharing.
Regards,
Naval
All Answers
The class in which you are referencing this method should be declared without sharing.
Regards,
Naval