获取 Salesforce 中帐户的当前产品列表


Getting current product list for an account in Salesforce

在过去的一年里,我经常在我们的应用程序和Salesforce之间进行各种类型的集成。我发现我要做的一件事是找出客户当前帐户中所有产品的列表。据我所知,我必须这样做:

  1. 获取帐户的所有机会
  2. 获取这些机会的所有产品 ( OpportunityLineItem
  3. 将它们"添加"在一起以获得最终产品列表(当前产品)

我们的销售团队为帐户的每个销售活动(无论是新产品、追加销售还是降级)都会创建一个新Opportunity,因此理论上您可以有一些这样的机会:

  1. 添加产品 A
  2. 将产品 A 追加销售到产品 C
  3. 添加产品 B
  4. 删除产品 C

最终结果(实际当前产品列表)将只是产品B。商机仅表示为此Account进行的所有销售的历史数据。

我是一名开发人员。我不知道这是否是进行销售过程的最佳方式 - 我把它留给他们。但是,我的工作是找到所有当前产品的列表,以便我可以自动将其与我们的计费系统同步。目前的方式(如上所述)似乎很笨拙,不是很有用。它也可能变得非常复杂,如果不进行代码更改,就很难扩展。例如,如果销售人员要添加新产品,我必须更新代码来处理这些添加。

有什么方法可以获取Account当前产品列表,而无需遍历每个Opportunity

我希望这是有道理的。伪代码可以正常工作,或者您可以指出我可能错过的一些文档。

谢谢你们的时间,伙计们!

我认为除了循环获取当前产品列表的机会之外,没有其他方法。

您可能需要考虑创建自定义对象来存储帐户到产品的关系,或者您可以构建一个特定于帐户的价目表,其中包含仅与该帐户相关的产品。