Apex 中的参考父对象

Posted

技术标签:

【中文标题】Apex 中的参考父对象【英文标题】:Reference Parent Object in Apex 【发布时间】:2011-08-23 14:08:35 【问题描述】:

我在 Salesforce 中设置了一个名为 Solar_Install 的自定义对象。我与另一个 Salesforce 安装建立了 S2S 连接。我想与他们共享自定义对象以及父对象(帐户),部分原因是子对象从其父对象继承了 autoshare 属性,所以我必须这样做。

我在子对象(Solar_Install)上有一个 Apex 触发器,如下所示:

trigger shareWithPartner on Solar_Install__c (after insert) 

PartnerNetworkRecordConnection newConnection =
                new PartnerNetworkRecordConnection(
                    ConnectionId = '12AB3456789CDEF',
                    LocalRecordId = trigger.new[0].id,
                    SendClosedTasks = false,
                    SendOpenTasks = false,
                    SendEmails = false,
                    ParentRecordId = ???);
insert newConnection;

但我不知道该放什么 ???价值。我尝试了各种方法:

trigger.new[0].Account_c.AccountId

错误:编译错误:无效的外键关系:Solar_Install__c.Account_c 在第 10 行第 57 列

帐户_c

错误:编译错误:变量不存在:Account_c 在第 10 行第 42 列

等等。有谁知道我如何从这个自定义对象中引用父(帐户)ID,以便我可以将其指定为 ParentRecordId?

干杯

【问题讨论】:

您是否尝试过使用Account__r.IdAccount__c(带有两个下划线)遍历Account 关系?这些应该是相同的,但后者更受欢迎,因为它不需要连接。 嗨。是的,对于其中的每一个,我都会收到一个错误:编译错误:变量不存在:Account__c... 在对象定义中有一个 Master-Detail(Account),API 名称为 Account__c,字段标签为 Account 知道了。也需要引用自定义对象。这行得通。 ParentRecordId = trigger.new[0].Account__c 发表您的评论作为答案,我会这样标记它 【参考方案1】:

您是否尝试使用 Account_r.Id 或 Account_c(带有两个下划线)遍历 Account 关系?这些应该是相同的,但后者更受欢迎,因为它不需要连接。

【讨论】:

以上是关于Apex 中的参考父对象的主要内容,如果未能解决你的问题,请参考以下文章

Oracle Apex 的对象浏览器中未显示任何数据

更新用户对象时 Salesforce Apex 触发器中的 MIXED_DML_OPERATION 错误

在 ApEx 中从数据库集合对象创建 LOV

Salesforce Apex学习 : 利用Schema命名空间中的DescribeSObjectResult类型来获取sObject对象的基本信息

Apex的对象共享

如何从 Apache Apex 应用程序内部获取 ApplicationID?