【问题标题】:Round Robin Assignment implementation (database)循环分配实现(数据库)
【发布时间】:2008-12-23 03:41:26
【问题描述】:

我目前正在为SalesLead SalesPerson 情况实施多种不同的分配算法。总体思路很简单:

  1. SalesLead 在公共网站上注册

  2. 代码使用循环调度自动将SalesLead分配给SalesPerson(线索按相同顺序分配给SalesPersons

除了确保每次都以相同的顺序从数据库中提取代理并使用另一个表来存储分配了 SalesLead 的最后一个代理之外,我在如何实际执行此操作方面遇到了一些严重的编码障碍(这实际上可能对构建报告很有用,或者至少在以后有一个追溯方法)。我离基地很远吗?

澄清:代码目前无法将销售人员与潜在客户匹配。这是一个全新的功能。目前他们可以注册特定的销售人员,但我们希望他们能够自动分配。

【问题讨论】:

    标签: database scheduling round-robin


    【解决方案1】:

    真的很简单:当创建销售人员时,给他们一个 LastActivityDate。为他们分配 SalesLead 后,将该日期更新为当前日期。将收到的 SalesLead 授予活动日期最近的 SalesPerson。

    可以在 SQL 或代码中轻松完成。

    【讨论】:

    • 我喜欢这个,它简单但有效。我从来没有考虑过添加时间戳列。
    • 你只需要覆盖一些极端情况。就像销售人员休假一样,将他们的活动日期设置为 NULL(因此不会被领取),当他们回来时,将其设置为现在,这样他们就可以返回轮换。那么这个系统是相当公平的。
    【解决方案2】:

    如果您有一个将 SalesLeads 和 SalesPersons 匹配在一起的表并为它添加时间戳,则不需要单独的表来跟踪最后选择的 SalesPerson。

    【讨论】:

      【解决方案3】:

      在 SQL Server 中,您实际上希望它是日期时间,而不是时间戳字段,但 @David 的想法是相同的。跟踪分配给销售人员的最后一个销售线索并记录分配时间。然后,您可以通过查找未分配潜在客户的销售人员或最后分配的潜在客户最老的销售人员来选择下一个要分配潜在客户的销售人员。

      【讨论】:

        【解决方案4】:

        查看 Salesforce 是如何做到的: http://forums.sforce.com/sforce/board/message?board.id=custom_formula&message.id=533

        通过销售人员人数 + 1 修改 ID,然后将 1 分配给 Joe,2 分配给 Tom,等等。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-01-24
          • 2022-12-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多