logo

[ELMA3] Добавление пользователей в список согласующих по документу сценарием

Пусть в процессе в контекстной переменной context.Dokument хранится документ, в котором уже есть активный лист согласования, а в переменной context.Poljzovatelj (типа Пользователь со связью Список) – список пользователей, которых необходимо добавить в список согласующих по документу и поставить им задачи согласования. Это можно сделать с помощью следующего сценария.

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

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

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

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

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

using EleWise.ELMA.API;

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

var group = PublicAPI.Docflow.Tasks.GetApprovementGroupsByDocument(context.Dokument).LastOrDefault();//получаем последнее согласование
PublicAPI.Docflow.Tasks.AddExecutors(group, context.Poljzovatelj);

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

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

EleWise.ELMA.Documents
EleWise.ELMA.Documents.Docflow

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

using EleWise.ELMA.Documents.Managers;
using EleWise.ELMA.Security.Models;

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

var group = ApprovementTaskGroupManager.Instance.GetGroupsByDocument(context.Dokument).LastOrDefault();//получаем последнее согласование
ApprovementTaskGroupManager.Instance.AddExecuters(group, context.Poljzovatelj.Select(u => new Pair<IUser, IUser>(u, null)));