Внедрение Round Robin Assignment (база данных) - PullRequest
2 голосов
/ 23 декабря 2008

В настоящее время я нахожусь в процессе реализации ряда различных алгоритмов назначения для ситуации SalesLead <-> SalesPerson. Общая идея довольно проста:

  1. A SalesLead регистрируется на общедоступном веб-сайте

  2. Код автоматически назначает SalesLead для SalesPerson, используя циклическое планирование (отведения назначаются на SalesPersons в том же порядке)

У меня есть какой-то серьезный блок кодеров в том, как на самом деле выполнить это, за исключением того, что я каждый раз извлекаю агентов из базы данных в одном и том же порядке, и использую другую таблицу для хранения последнего агента, которому был назначен SalesLead. (что на самом деле может быть полезно для построения отчета или, по крайней мере, последующего использования метода отслеживания). Я далеко от базы?

Уточнение: Код в настоящее время не соответствует торговому представителю лиду. Это совершенно новая функция. В настоящее время они могут зарегистрироваться для конкретного SalesPerson, но мы бы хотели, чтобы они могли назначаться автоматически.

Ответы [ 4 ]

6 голосов
/ 23 декабря 2008

Довольно просто: когда создается SalesPerson, присвойте им LastActivityDate. Когда им назначен SalesLead, обновите эту дату до текущей. Передайте SalesLead, как он есть, SalesPerson с наименьшей датой активности.

Может быть легко сделано в SQL или коде.

2 голосов
/ 23 декабря 2008

Если у вас есть таблица, которая соответствует SalesLeads и SalesPersons вместе, и вы отметили ее время, вам не нужна отдельная таблица для отслеживания последнего выбранного SalesPerson.

1 голос
/ 17 июля 2009

Проверьте, как это делает Salesforce: http://forums.sforce.com/sforce/board/message?board.id=custom_formula&message.id=533

Измените идентификатор на количество продавцов + 1, а затем назначьте 1 Джо, 2 Тому и т. Д.

1 голос
/ 23 декабря 2008

В SQL Server вы бы хотели, чтобы это было поле даты-времени, а не поле отметки времени, но идея @ David такая же. Следите за последним назначением, назначенным продавцу, и записывайте время, когда оно было назначено. Затем вы можете выбрать следующего продавца, которому нужно назначить ведущую роль, найдя продавца, у которого нет назначенного лидера, или продавца, последний назначенный лидер которого является самым старым.

...