Создание поручения (задачи) сценарием

В примере рассмотрено как с помощью сценария можно создать задачу с вложенным документом.

Пример сценария с использованием PublicAPI

Примечание
Актуальная документация по PublicAPI доступна по ссылке.
Внимание!
Сценарий, указанный ниже, актуален для версий системы ELMA до 3.12.1 включительно.

Контекстные переменные:

  • context.Poljzovatelj – переменная типа Пользователь;
  • context.Dokument – переменная типа Документ.

Пространство имен:

using EleWise.ELMA.API;

Текст сценария:

var task = PublicAPI.Portal.TaskBase.Task.Create();
task.Subject = "Тема Задачи";
task.Executor = context.Poljzovatelj;
task.StartDate = DateTime.Now;
task.EndDate = DateTime.Now.AddDays(1);
task.Description = "Описание задачи";
var attachment = PublicAPI.Docflow.Objects.DocumentAttachment.Create(context.Dokument);
task.DocumentAttachments.Add(attachment);
task.Save();

Пример сценария без использования PublicAPI

Контекстные переменные:

  • context.Ispolnitelj – переменная Исполнитель, тип Пользователь;
  • context.Dokument – переменная Документ, тип документа Файл.

Для работы сценария необходимо подключить сборки:

Elewise.ELMA.Project
Elewise.ELMA.Documents
Elewise.ELMA.Documents.Docflow
Elewise.ELMA.Tasks

Пространства имен:

using EleWise.ELMA.Common.Models;
using EleWise.ELMA.Documents.Managers;
using EleWise.ELMA.Documents.Models;
using EleWise.ELMA.Model.Managers;
using EleWise.ELMA.Projects.Models;
using EleWise.ELMA.Tasks.Managers;
using EleWise.ELMA.Tasks.Models;
using EleWise.ELMA.Model.Services;

Текст сценария:

var tsk= InterfaceActivator.Create<Task>();
tsk.Subject="Тема задачи";
tsk.Executor=context.Ispolnitelj;
tsk.StartDate=DateTime.Now;// дата начала - Текущая дата
tsk.EndDate=DateTime.Now.AddDays(1); //дата завершения Текущая дата + 1 день
tsk.Description="Описание задачи";
if(context.Dokument!=null)
{
    var attachment = new DocumentAttachment{
        Document=context.Dokument
    };
    tsk.DocumentAttachments.Add(attachment);
}
tsk.Save();