logo

[ELMA3] Пример получения файла шаблона типа документа в сценарии

В системе ELMA для каждого типа документа может быть добавлен шаблон, который будет использован для автоматической генерации версии документа.

Шаблоны добавляются в веб-приложении в разделе Администрирование – Документооборот – Типы документов (Рис. 1).

Рис. 1. Шаблон для автоматической генерации версии документа в карточке типа документа

В данной статье приведен пример получения файла шаблона. В дальнейшем полученный файл может использоваться в сценарии для решения различных задач, например, для создания новой версии документа по шаблону.

Используемые контекстные переменные:

  • context.Dok – переменная определенного типа документа;
  • context.Fayl – переменная типа Системные – Файл;
  1. Объявляем пространства имен:
using EleWise.ELMA.Documents.Metadata;
using EleWise.ELMA.Model.Metadata;
using EleWise.ELMA.Security;
using EleWise.ELMA.Documents.Managers;
using EleWise.ELMA.Documents.Models;
using EleWise.ELMA.Documents;
using EleWise.ELMA.Services;
  1. Получаем настройки типа документа в веб-интерейсе.
//загружаем метаданные типа документа
var metadata = (DocumentMetadata)MetadataLoader.LoadMetadata(context.Dok.TypeUid); 
//получаем настройки типа документа (профайл)
var profile = DocumentMetadataProfileManager.Instance.LoadByDocumentType(metadata.ImplementationUid);
//получаем все шаблоны из профайла типа документа, берем "Первый" (здесь может быть Ваш вариант выбора шаблона из списка полученных) 
var templates = profile.Templates.FirstOrDefault(); 
context.Fayl = templates.File; //получили нужный шаблон в переменную типа "Файл"

Полученный таким образом файл шаблона документа может быть использован для решения различных задач, например, для генерации версии документа по данному шаблону. Пример реализации приведён в статье: https://www.elma-bpm.ru/KB/article-5497.html