Шаблоны документов
Для управления шаблонами служит кнопка Шаблоны, расположенная в конструкторе на вкладке структуры объекта. Данная кнопка открывает форму со списком шаблонов для выбранного объекта. В меню формы можно создать или изменить шаблон, а через контекстное меню — переименовать или удалить. Конструктор формирует документы на основе шаблонов Microsoft Office Word/Excel/Outlook и OpenOffice/LibreOffice Writer/Calc.
- Шаблон с данными одной записи
- Шаблон с данными одной записи и со списками записей дочерних объектов
- Особенности шаблона для MS Outlook
- Шаблон со списком записей основного объекта
- Выполнение макроса runa при открытии документа
Документы, сформированные в формате OpenDocument (ODF), имеющие расширения .odt (текстовые документы) и .ods (электронные таблицы), соответствуют национальному стандарту открытых офисных приложений в РФ |
Работа с файлами шаблонов в операционной системе отличается от работы с файлами документов, поэтому рекомендуется осуществлять управление шаблонами из программы. |
Исключение составляет шаблон MS Outlook, так как в нём не предусмотрено программное управление и изменение структуры необходимо производить из файловой системы с сохранением как шаблон. |
Использование версии MS Office Starter 2010, которая выпускается с ограничением по функциональности — невозможна, так как она не поддерживает VBA. |
При создании открывается форма, в которой указывается имя и тип формируемого шаблона. После подтверждения указанных данных, в него, в качестве образца, помещаются все поля объекта, которые будут экспортироваться при создании документа. Кроме полей самого объекта, экспортируются также поля тех объектов, на которые имеются ссылки. Формат экспортируемых полей: [Поле объекта]
, [Ссылка на объект.Поле объекта]
, [Ссылка на объект.Ссылка на объект.Поле объекта]
и т.д.
Шаблоны документов размещаются в папке объекта/формы, в которой может быть удобно управлять шаблонами вручную, например для создания копии. |
При формировании документа, вместо имён заданных полей, в документ будут подставлены их значения. Для специального форматирования данных полей объекта служат функции (подробнее — в разделе Функции шаблонов).
Шаблон с данными одной записи и со списками записей дочерних объектов
Блок для дублирования данных по каждой записи дочернего объекта обозначается тэгами с его именем и троеточиями — аналогично списку основного объекта формы:
[ДочернийОбъект1...]
дублируемый блок с полями каждой записи дочернего объекта ДочернийОбъект1
[...ДочернийОбъект1]
[ДочернийОбъект2...]
дублируемый блок с полями каждой записи дочернего объекта ДочернийОбъект2
[...ДочернийОбъект2]
При создании нового шаблона на базе формы с дочерними объектами, в него автоматически добавляется пример заполнения записей дочернего объекта в виде таблицы.
Экспорт полей, добавленных в системный объект дочерней равнозначной связи осуществляется по имени данного системного объекта. |
Кроме табличного представления записей возможно заполнение в виде списка (маркированного или нумерованного) или в виде строки. Варианты исполнения:
[ДочернийОбъект...]
[Поле1] | [Поле2] | [Поле3] | [Поле4] |
[ДочернийОбъект...]
• [Поле];
[...ДочернийОбъект][Del(-3)].
[ДочернийОбъект...][Поле], [...ДочернийОбъект][Del(-2)].
В случае применения списочного или строкового дублирования, после закрывающего тэга удобно применить функцию Del для удаления лишних сивмолов после последней записи. |
Особенности шаблона для MS Outlook
При создании шаблона Microsoft Outlook, он также, как и остальные шаблоны, формируется в папке объекта/формы, но открывается как подготовленное сообщение. Поэтому его сохранение не приводит к изменению созданного шаблона. Для сохранения изменений в самом шаблоне, необходимо сохранить его как "Шаблон Outlook" в папку того-же самого объекта/формы.
Шаблон не поддерживает работу как с дочерними списками, включёнными в форму связи, так и со списком записей основного объекта, на базе которого создана форма связи. Т.е. формирование письма производится без учёта тэгов списков в форме связи, аналогично работе в объекте.
Шаблон со списком записей основного объекта
Такой шаблон формируется только на базе формы и в него экспортируются записи основного объекта и поля фильтров, аналогично полям записи объекта. Данные одной записи не экспортируются, тэги дочерних списков для формы связи игнорируются, т.е. вывод списка записей дочернего списка невозможен. |
Признаком шаблона со списком записей служит наличие тэгов с именем формы:
[ИмяФормы...]
дублируемый блок с полями каждой записи основного объекта
[...ИмяФормы]
Блок информации, расположенный между начальным и конечным тэгами, дублируется по числу записей в форме и в нём производится замена установленных полей на значения из каждой записи.
Для автоматического создания шаблона с подстановкой в него требуемых тэгов и дублируемого блока с полями необходимо в конструкторе для формы выключить видимые вкладки детализации (поле комбинации видимые) и после этого создать новый шаблон. При работе с данными такой формы детализация не отображается и таблица с записями объекта занимает всю доступную область окна.
В дублируемый блок автоматически создаваемого шаблона не подставляются все вложенные поля объектов. Для использования требуемых полей их необходимо добавить вручную. |
Поля фильтра для такого шаблона экспортируются как обычные поля. Для числового поля, у которого установлена фильтрация по двум дополнительным условиям, к имени поля фильтра через точку добавляется суффикс .1 или .2 (например: [Стоимость.1], [Стоимость.2]). У поля даты, для получения значения фильтра по дню, через точку добавляется суффикс .D, по месяцу — .M, для нижней границы фильтра — .1, для верхней границы фильтра — .2 (например: [Дата.D], [Дата.M], [Дата.1], [Дата.2]). Для экспорта итоговой суммы по числовому полю к нему добавляется префикс total. (например: [total.Сумма]).
Выполнение макроса runa при открытии документа
При необходимости выполнения некоторых действий после открытия документа и заполнения всех полей служит макрос с именем runa (работает для MS Word/Excel).
Для создания макроса в шаблоне открыть окно через меню "Вид"-"Макросы" окно макросов. В имени макроса указать "runa", а свойству "Макрос доступен для:" выбрать "Документов, основанных на ИмяШаблона.dot".
После создания и сохранения макроса, сохранить шаблон.