在salesforce中,我有一个自定义对象,将来该对象中可能有数百万条记录。我正在使用apex和visualforce开发仪表板,因此我需要在单个查询中一次访问所有记录。
查询为:[select count(custom_cases__C), status__c from custom_case__C group by status__c]
因此,它一次访问所有记录并超出了管理者的限制。
我能做些什么来实现这个目标?
请向我提供解决方案,如果可能,请提供一个示例,因为我是salesforce的新手。
答案 0 :(得分:3)
令人遗憾的是,salesforce计算聚合函数不是1个结果,而是聚合的行数。这意味着,如果您有超过50000个结果,您将收到错误(超出SOBject查询行,该行中的某些内容)
有Idea,请upvote!
我目前唯一可行的解决方案是(以及我自己使用的解决方案)是程序并计划运行Apex Batch Job,并将结果保存在新的自定义对象中。然后使用该自定义对象作为仪表板的源。
答案 1 :(得分:1)
您可以以只读模式运行页面。对此也有一些限制。您可能需要查看以下链接:
http://www.salesforce.com/us/developer/docs/pages/Content/pages_controller_readonly_context.htm