是否可以在Salesforce中的同一对象上创建多对多关系

是否可以在Salesforce中的同一对象上创建多对多关系,salesforce,data-modeling,Salesforce,Data Modeling,我们的客户之间的关系是:供应商和买方 含义:我们销售给我们所在行业的供应商和买家 我试图在salesforce中存储我们客户之间的关系。这是一种多对多的关系。因此,对于每个帐户,我都希望有一个相关的列表,列出它销售给的所有买家,以及它从中购买的卖家(对于其他帐户,反之亦然) 我尝试使用一个连接对象,但是我不能在同一个对象上创建两个主细节关系(主要是帐户) 有可能吗?连接对象将是实现这一点的方法-为什么需要使用主细节关系?在这种情况下,查找字段应该足够了 有时,在这些情况下,您希望能够查看相关对象

我们的客户之间的关系是:供应商和买方 含义:我们销售给我们所在行业的供应商和买家

我试图在salesforce中存储我们客户之间的关系。这是一种多对多的关系。因此,对于每个帐户,我都希望有一个相关的列表,列出它销售给的所有买家,以及它从中购买的卖家(对于其他帐户,反之亦然)

我尝试使用一个连接对象,但是我不能在同一个对象上创建两个主细节关系(主要是帐户)


有可能吗?

连接对象将是实现这一点的方法-为什么需要使用主细节关系?在这种情况下,查找字段应该足够了

有时,在这些情况下,您希望能够查看相关对象的完整列表,而不必在页面上显示两个可能的相关列表(一个是查找A引用的对象,另一个是查找B引用的对象)-在这种情况下,您可以随时使用触发器创建反向交叉点记录

基本设置

架构如下所示:

    Account >-- lookup A -- Junction Object -- Lookup B --< Account
使用此设置,在查看记录A时,您需要帐户页面上的两个相关列表才能同时查看B和C

触发设置

如果如上所述创建一个触发器来生成自动倒数,则在连接对象中会有以下记录:

           Lookup A      Lookup B
    ------------------------------
    J1  |  Account 1  |  Account 3
    J2  |  Account 3  |  Account 1
    J3  |  Account 2  |  Account 1
    J4  |  Account 1  |  Account 2

显然,这会创建冗余数据,但现在只需将一个相关的连接对象列表添加到account页面布局中,即可查看所有相关记录

连接对象将是解决此问题的方法-为什么需要使用主细节关系?在这种情况下,查找字段应该足够了

有时,在这些情况下,您希望能够查看相关对象的完整列表,而不必在页面上显示两个可能的相关列表(一个是查找A引用的对象,另一个是查找B引用的对象)-在这种情况下,您可以随时使用触发器创建反向交叉点记录

基本设置

架构如下所示:

    Account >-- lookup A -- Junction Object -- Lookup B --< Account
使用此设置,在查看记录A时,您需要帐户页面上的两个相关列表才能同时查看B和C

触发设置

如果如上所述创建一个触发器来生成自动倒数,则在连接对象中会有以下记录:

           Lookup A      Lookup B
    ------------------------------
    J1  |  Account 1  |  Account 3
    J2  |  Account 3  |  Account 1
    J3  |  Account 2  |  Account 1
    J4  |  Account 1  |  Account 2

显然,这会创建冗余数据,但现在只需将一个相关的连接对象列表添加到account页面布局中,即可查看所有相关记录

谢谢,看起来很整洁。我必须决定我是想要1个还是2个相关列表。我想我会在交叉点上添加第三个自定义字段-以显示关系-但这不是双向视图-因此可能会有问题。您可以在相关列表中使用您选择的任何选项显示第三个字段-应该不会有问题!谢谢,看起来很整洁。我必须决定我是想要1个还是2个相关列表。我想我会在交叉点上添加第三个自定义字段-以显示关系-但这不是双向视图-因此可能会有问题。您可以在相关列表中使用您选择的任何选项显示第三个字段-应该不会有问题!