Когда приходит новое лидерство, я хочу использовать триггер до и шаблон электронной почты Visualforce, который содержит значения поля интересов, для отправки электронного письма с помощью класса SingleEmailMessage. Электронная почта генерируется, но все поля лидирующих значений пусты, хотя (известные через System.Debug
) они имеют значения, входящие в вызов.
Поскольку я передаю еще несохраненный идентификатор Id с помощью метода mail.setWhatId(lead.Id)
, я начинаю думать, что почтовый класс использует значение Id и пытается выполнить поиск в базе данных, а не в качестве ссылки к еще неспасенному свинцу в памяти.
Кто-нибудь знает, так ли это? Мой класс работает безупречно, когда лидерство уже существует.
Если почтовый класс Apex выполняет чтение из БД, то есть ли какие-либо примеры шаблонов для случая, когда необходимо отправить и отправить по электронной почте и обновить значение поля интереса до сохранения заявки? Я не могу использовать уведомление по электронной почте Workflow, потому что электронное письмо адресовано клиентам, и есть некоторый дополнительный код Apex, который сортирует, какой адрес нужно извлечь из существующих записей Аккаунта, на основе некоторых полей Lead - поэтому я думаю, что нужно использовать VF шаблоны электронной почты на первом месте.