在salesforce.com中通过顶点管理记录的排名

时间:2010-12-28 15:45:01

标签: salesforce apex-code

我有一个要求我想得到一些意见。我需要有一个“帐户排名”字段,不包括所有帐户,我需要能够添加到池中,从池中删除,并更改排名。我的问题是,每次从池中删除记录或将其移动到新位置时,所有记录(可能多达10,000个)都需要向上或向下移动。 Salesforce一次限制200个单独更新,或者您可以将其分成多达一百万个批次。我对批次的关注是,我无法保证人们不会在短时间内更新超过5条记录,因此达到了允许批量总数的销售限制。

是否有人处理过这些问题,您对最佳方法有什么建议吗?

3 个答案:

答案 0 :(得分:0)

(我发布此评论作为评论,但我是新人,不能那样做。抱歉)。

我想不出一种很好的方式来模拟这种方式,而不是通过使用@future或批处理来使用一些漂亮的自定义顶点,或者通过salesforce API进行这种重新计算的自己的集成。

什么决定了帐号排名?你能在公式字段中计算它吗?

答案 1 :(得分:0)

这是一个艰难的问题......你可以重新思考一下这类SFDC吗?如果你以恐怖的方式产生排名怎么办?例如,您可以创建一个投票系统或一些评分系统,让SFDC为您计算排名。

假设您有一个或多个字段,您可以给出一个等级,然后有这样的SOQL查询:

[从账号WHERE _ 选择ID按Vote1,Vote2订购]

答案 2 :(得分:0)

如果你改变你的数据模型,它应该很容易,例如。

  1. 创建排名对象Ranking__c并将其与Account对象相关联。
  2. 为每个等级类型或数字创建 详细记录。
  3. 关联相应的帐户 记录与相应的 排名_c记录
  4. 在更新帐户排名时,只需更改Ranking__c记录而不是帐户记录。这应该会大量减少您需要运行的记录数量。