#asp.net #kentico #kentico-12
#asp.net #kentico #kentico-12
Вопрос:
Как мне передать параметр в рабочий процесс автоматизации маркетинга?
Мне нужно передать параметр с именем ‘meetingId’ в рабочий процесс ‘MeetingInvitation’. Как я могу это сделать?
ContactInfo contact = ContactInfoProvider.GetContacts()
.WhereEquals("ContactEmail", "chamara@e.com")
.TopN(1)
.FirstOrDefault();
// Gets the marketing automation process
WorkflowInfo process = WorkflowInfoProvider.GetWorkflowInfo("MeetingInvitation", WorkflowTypeEnum.Automation);
if ((contact != null) amp;amp; (process != null))
{
// Creates an automation manager instance
AutomationManager manager = AutomationManager.GetInstance(MembershipContext.AuthenticatedUser);
// Starts the process for the contact
manager.StartProcess(contact, process.WorkflowID);
}
Ответ №1:
Я не думаю, что вы можете передать это как параметр внутри процесса автоматизации маркетинга с помощью такого кода. Единственный способ передать что-либо в MA-процесс — это данные триггера, если для триггера установлено значение activity. Пожалуйста, обратитесь к этой статье в блоге, например, в основном она демонстрирует, как вы можете запустить процесс MA после отправки формы и получить данные отправки формы внутри процесса MA.
Я думаю, вам понадобится что-то подобное:
- настройте свой процесс MA для запуска при типе действия триггера
- в вашем коде вместо явного запуска процесса вы можете выполнить этот тип действия для контакта, включая ваш идентификатор в параметре ActivityDetailItemID
- с помощью этого выданного действия Kentico автоматически запустит процесс MA, и внутри этого процесса MA вы сможете получить доступ к деталям действия с необходимыми данными