Запретить назначение электронной почты при назначении лидерства с Apex - PullRequest
0 голосов
/ 14 апреля 2010

У меня есть код, который автоматически присваивает отведение очереди с помощью триггера перед обновлением, когда выполняются определенные условия. Когда лиды назначаются через пользовательский интерфейс, становится доступным флажок «Отправить уведомление о назначении», чтобы указать, следует ли отправлять уведомление получающему пользователю (в данном случае очередь).

l.OwnerId = groups.get('Lead Queue').Id;

Вот как я выполняю задание.

Есть ли способ контролировать это при назначении через Apex? Похоже, что по умолчанию электронное письмо отправляется, в результате чего все участники очереди получают электронное письмо в любое время, когда лидерство автоматически назначается очереди, что не идеально.

Ответы [ 2 ]

1 голос
/ 21 ноября 2011

Вы пытались снять флажок "Отправить письмо участникам" на странице настройки очереди? Может быть, вам это нужно по другим причинам, но в нашей организации мы сняли этот флажок во многих наших очередях, потому что нам не нужны электронные письма - просто право собственности. Вместо этого мы используем представления потенциальных клиентов, ежедневные отчеты и пользовательские оповещения о потенциальных клиентах.

Мы интенсивно используем Marketo для новых лидов, в основном назначенных территориальным очередям. Я предполагаю, что их код использует API и устанавливает OwnerId очень похоже на ваш пример кода. Мы не видим электронных писем с уведомлениями о назначении, поэтому я думаю, что это возможно.

0 голосов
/ 14 апреля 2010

Я не думаю, что вы можете подавить электронные письма из правил назначения и рабочих процессов с помощью Apex.

Письмо отправлено, потому что это то, что вы указали в правиле назначения (если вы не предоставите шаблон электронной почты, оно не будет отправлено - https://na5.salesforce.com/help/doc/en/creating_assignment_rules.htm (замените na5 на свой экземпляр org).

Но если вы удалите шаблон электронной почты из правила, я думаю, у вас все еще есть несколько вариантов, чтобы справиться с ним:)

  • Вы можете создать рабочий процесс, который будет отправлять электронную почту при соблюдении критериев:

    И (ИЛИ (ISNEW (), ИЗМЕНЕНО (OwnerId)), НЕ («ваши критерии из Apex»))

(вам нужно установить «Запустить это правило, если следующее: формула имеет значение true» в редакторе).

  • Вы можете создать триггер «после вставки, после обновления» (с тем же логическим условием), который будет отправлять почту программно. Это довольно легко и есть много примеров.

Если логика, используемая в триггере «до обновления», слишком сложна, чтобы ее можно было покрыть рабочим процессом (например, потому что он охватывает несколько объектов и запросов), и № 1 будет вашим предпочтительным вариантом, вы все равно можете это сделать. Просто используйте какое-то настраиваемое скрытое поле в Lead и установите для него значение «true» в триггере «перед обновлением», а затем проверьте это значение в рабочем процессе.


Конечно, вы также можете полностью отключить правило автоматического назначения, сказать пользователям, что с этого момента флажок будет бесполезен, и использовать полное решение для рабочего процесса / полного запуска, но я думаю, что это слишком агрессивно.

...