Создание трудозатрат по задаче в сценарии
Ниже приведены сценарии для создания и записи трудозатрат по конкретной задаче.
Пример сценария с использованием PublicAPI
Примечание
Актуальная документация по PublicAPI доступна по ссылке.
Внимание!
Сценарий, указанный ниже, актуален для версий системы ELMA до 3.15.38 включительно.
Контекстная переменная:
- context.Zadacha – переменная типа Задача.
Пространство имен:
using EleWise.ELMA.API;
Текст сценария:
PublicAPI.Portal.TaskBase.SetFactWorkLog(context.Zadacha.Id, 1000, DateTime.Now, "комментарий к трудозатратам"); //Устанавливаем фактические трудозатраты в Минутах 1000 минут //PublicAPI.Portal.TaskBase.SetFactWorkLogDays(context.Zadacha.Id, 1, DateTime.Now, "комментарий к трудозатратам"); //Устанавливаем фактические трудозатраты в Днях 1 день //PublicAPI.Portal.TaskBase.SetFactWorkLogHours(context.Zadacha.Id, 1, DateTime.Now, "комментарий к трудозатратам"); //Устанавливаем фактические трудозатраты в Часах 1 час
В результате выполнения сценария на странице задачи, содержащейся в контекстной переменной, появится дополнительная вкладка Журнал трудозатрат с новой записью о трудозатратах.
Пример сценария без использования PublicAPI
Пусть эта задача содержится в контекстной переменной context.Zadacha.
Для корректной работы сценария необходимо подключить пространство имен:
using EleWise.ELMA.Tasks.Models; using EleWise.ELMA.Model.Services;
Текст сценария:
var wl = InterfaceActivator.Create<WorkLog>(); //создание новой трудозатраты wl.Comment = "комментарий к трудозатратам"; //указание комментария wl.CreationAuthor = context.Author; //указание автора wl.StartDate = DateTime.Now; //дата начала wl.TaskBase = context.Zadacha; //указание задачи wl.Worker = context.Ispolnitelj; //указание исполнителя wl.WorkMinutes = 1000; //затраченное время (в минутах) wl.Save();