Вся подсистема строится на основании всего одного справочника, названного "Универсальный шаблон".
При создании нового шаблона необходимо выбрать владельца шаблона, т.е. элемент метаданных, объекты которого будут заполнятся по данному шаблону:
После выбора владельца, на форме для заполнения автоматически создадутся реквизиты владельца шаблона и его табличные части:
В шаблоне также можно указать алгоритмы, которые будут вызываться после заполнения объекта по шаблону. Для каждого шаблона можно указать два алгоритма "&НаКлиенте" и "&НаСервере", после заполнения сначала вызовется алгоритм "&НаКлиенте", а затем алгоритм "&НаСервере".
Это бывает полезно, если, например, вам нужно заполнить какой-либо реквизит объекта значением, полученным при помощи исполнения программного кода (например, получить остаток по регистру накопления)
Для интерактивного заполнения по шаблону в подсистеме были созданы три общие команды:
- Команда "Создать по шаблону" позволяет пользователю создавать новые объекты по шаблонам, при вызове команды появится форма выбора шаблона, после выбора откроется форма нового объекта, заполненная по шаблону.
- Команда "Сохранить как шаблон" позволяет использовать уже существующие объекты как шаблоны. При выполнении команды, из выбранного объекта система создаст новый универсальный шаблон, который в будущем можно будет использовать при заполнении новых объектов.
- Команда "Заполнить по шаблону" позволяет заполнить уже существующий объект данными из шаблона.
Для того, чтобы подключать данные команды к объектам конфигурации в подсистеме был создан определяемый тип "ОбъектыЗаполняемыеПоШаблону", таким образом, после внедрения подсистемы для того, чтобы данные команды отображались в интерфейсе нужно внести в этот определяемый тип объекты, которые будут заполнятся по шаблонам.
Пример создания документа по шаблону:
Значение реквизитов и табличных частей шаблонов хранятся в регистрах сведений:
В подсистеме также присутствует простенький отчет, показывающий информацию по реквизитам, заполняемых по шаблону:
Для внедрения подсистемы нужно сравнить/объединить вашу конфигурацию с конфигурацией из публикации в режиме "по подсистемам файла" и выбрать подсистему "УниверсальныеШаблоны".
В приложении к публикации вы найдете демо-базу, демонстрирующую основные возможности подсистемы.
Подсистема тестировалась на типовом релизе ЗУП 3.1.5