gpt4 book ai didi

exception - 为什么 Salesforce 阻止我使用包含关系的查询创建推送主题?

转载 作者:行者123 更新时间:2023-12-02 21:54:37 24 4
gpt4 key购买 nike

当我在开发者控制台中执行此代码时

PushTopic pushTopic = new PushTopic();
pushTopic.ApiVersion = 23.0;
pushTopic.Name = 'Test';
pushTopic.Description = 'test';
pushtopic.Query = 'SELECT Id, Account.Name FROM Case';
insert pushTopic;
System.debug('Created new PushTopic: '+ pushTopic.Id);

我收到此消息:

FATAL ERROR System.DmlException: Insert failed. First exception on row 0; first error: INVALID_FIELD, relationships are not supported: [QUERY]

相同的查询在查询编辑器上运行良好,但是当我将其分配给推送主题时,我收到 INVALID_FIELD 异常。

如果底线是异常消息所说的内容,即推送主题对象不支持关系,那么如何创建将返回我正在查找的数据的推送主题对象?

最佳答案

为什么

Salesforce 阻止了这种情况,因为它需要它们连接表,由于 Multi-Tenancy ,Salesforce 数据库中的连接非常昂贵。通常,当他们添加新功能时,他们不会支持连接,因为它需要对该功能进行更多优化。

推送主题对于系统来说仍然是相当新的,并且需要是实时的,我认为任何会减慢它们速度的东西都需要被修剪。

我建议您更仔细地考虑您的要求,看看是否还有其他适合您的东西。

解决方法

一个可能的解决方法是将公式字段添加到包含您需要的数据的 Case 对象,并将其包含在查询中。这可能不起作用,因为它仍然需要连接才能工作。

最后一个选项可能是使用工作流规则或触发器将帐户名称更新到案例对象上的自定义字段,这样数据是本地的,因此不需要联接...

关于exception - 为什么 Salesforce 阻止我使用包含关系的查询创建推送主题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17978904/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com