Создание события из процесса с помощью сценария
В статье рассмотрен пример сценария, с помощью которого можно создать событие в календаре.
Пример сценария с использованием PublicAPI
Примечание
Актуальная документация по PublicAPI доступна по ссылке.
Контекстные переменные:
- context.Poljzovateli – переменная типа Пользователь, тип связи – Список;
- context.DataNachala – переменная типа Дата/Время;
- context.DataOkonchaniya – переменная типа Дата/Время.
Пространство имен:
using EleWise.ELMA.API;
Текст сценария:
PublicAPI.Portal.CalendarEvent.Create(context.Poljzovateli, context.DataNachala.Value, context.DataOkonchaniya.Value, "Тема", "Место");
Пример сценария без использования PublicAPI
Для работы сценария необходимо подключить сборки:
Elewise.ELMA.Documents
Elewise.ELMA.Calendar
Пространства имен:
using EleWise.ELMA.Calendar.Models; using EleWise.ELMA.Security.Services; using EleWise.ELMA.Model.Services;
Текст сценария:
var evnt = InterfaceActivator.Create<CalendarEvent>(); //создаем новое событие evnt.CreationDate=DateTime.Now; //дата создания evnt.CreationAuthor=AuthenticationService.GetCurrentUser<EleWise.ELMA.Security.Models.User>(); //автор - Текущий пользователь evnt.Description="Описание события"; var user= InterfaceActivator.Create <CalendarEventUser>(); //Создаем участника события foreach (var element in context.Poljzovateli) {
var user = InterfaceActivator.Create<CalendarEventUser> (); //Создаем участника события
user.User = element; //Записываем участника из контекстной переменной типа Пользователь
evnt.EventUsers.Add (user); //добавляем участника в событие
}
evnt.Subject="Тема"; evnt.StartDate=context.DataNachala.Value; //дата начала evnt.Place="Место"; evnt.EndDate=context.DataOkonchaniya.Value;//дата окончания evnt.Save();