Trying to perform a SOQL query to retrieve related FeedItems
and FeedComments
(on the related FeedItems) to my sObject and I retrieved a warning that multi-level queries aren't allowed.
Can anyone think of an optimization that will reduce the risk of overflowing script statements and allow me to retrieve related FeedItems
and the FeedComments
related to those items
List<myObject> sObjectsWithComments = [SELECT Id (SELECT Id,Body,ParentId, (SELECT
Id, CommentBody, FeedItemId FROM FeedComments) FROM
Feeds) FROM myObject];
If this isn't achievable it's still possible to manually selected the FeedComment
and create a map, and do a manually association, but I really think this is something the database should be responsible for.
Update
I guess I should also mention some of the difficult requirements:
- List item: In any given instance the page I'm working with may have over 100 object records
- I need count the number of
FeedItems
andFeedComments
that have been created by another user since aLastVisit__c
field on the parent object. Hence the issue with looping
So I have a goal of something more akin too (psuedo-code):
List<myObject> sObjectsWithComments = [SELECT Id,LastVisit__c (SELECT Id,Body,ParentId, (SELECT
Id, CommentBody, FeedItemId, CreatedDate FROM FeedComments WHERE CreatedDate > Parent.LastVisit__c) FROM
Feeds WHERE CreatedDate > Parent.LastVisit__c) FROM myObject];