Конфигуратор по умолчанию имеет встроенную поддержку шаблонов текста. Для вызова окна работы с шаблонами необходимо перейти в "Сервис" - "Шаблоны текста".
Существует типовой шаблон, предоставляемый в поставке платформы. Типовой шаблон недоступен для редактирования (Описание на ИТС) . Подключение типового шаблона для использования в конфигурации выполняется через опцию "Сервис" – "Шаблоны текста" – "Действия" – "Настройка шаблонов" - "Использовать стандартные шаблоны".
Шаблон представляет собой набор конструкций, которые можно вставить в код следующим образом:
- Вызовом через сочетание (Ctrl + Q);
- При вызове контекстного меню (Ctrl+space), если включена соответствующая опция;
- Перетащить из шаблона в тело модуля.
Конструкция шаблона состоит из:
- Наименование - может быть любым;
- Автоматически заменять строку - Строка, по маске которой конфигуратор сможет определить следует ли выполнять подстановку шаблона в коде. Если несколько конструкций используют подходящие маски, то будет предложен выбор из шаблонов
- Включать в контекстное меню - опция, которая добавляет выбор шаблона в контекстное меню (Ctrl+Space)
- Текста шаблона (Текст шаблона) - Представляет собой конструкцию, которая будет подставлена в результате. Текст шаблона поддерживает динамическое взаимодействие с пользователем. Подробнее - Описание функциональности шаблонов текста
По умолчанию, в настройках конфигурации выключена возможность использования шаблонов из контекстного меню, а большинстве конструкций в типовом шаблоне не включена опция "Включать в контекстное меню", поэтому использование шаблонов при разработке возможно только через сочетание клавиш (Ctrl + Q).
Для того, чтобы исправить ситуацию необходимо:
- Включить возможность использования в контекстном меню в параметрах "Сервис" - "Параметры" - "Модули" - "КонтекстнаяПодсказка" - "ВключитьШаблоныВСписокПодсказок"
- Включить опцию у шаблона "Включать в контекстное меню".
Но типовой шаблон нельзя изменять. Для этого мы сделаем следующее:
- Для избежания конфликтов можно отключить использование типового шаблона - "Сервис" – "Шаблоны текста" – "Действия" – "Настройка шаблонов" - "Использовать стандартные шаблоны" снять галочку;
- Скопируем типовой шаблон (C:\Program Files\1cv8\8.3.15.1778\bin\gentempl_ru.st)
- Переименуем и подключим к нашей конфигурации. "Сервис" – "Шаблоны текста" – "Действия" – "Настройка шаблонов" - "Добавить";
Для того, чтобы отличать разные шаблоны с одинаковыми масками для замены, я принял за правило выделять в маске конструкцию c префиксом #. После этого в контекстном меню можно явно определить шаблон для использования.
Чтобы адаптировать шаблоны для своего практического использования я сделал следующее:
- Удалил лишние конструкции из типового шаблона;
- Установил маски для замены в коде;
- Добавил конструкции из БСП.
Состав шаблона с типовыми конструкциями получился следующим (Изменил маски и опцию подстановки):
- Управляющие операторы (Условия, Циклы)
- Процедуры и функции (НаКлиенте, НаСервере, СКомментариями)
- Обработка попытки
- Выделение области
- В шаблонах прикладных объектов оставил только открытие форм с параметрами
- Для прочих операций оставил "Запросы", "Сообщение" и "Проверка типов"
Состав шаблона с шаблонами БСП (Отличная статья по методам БСП):
- Общие:
- Значение реквизита, реквизитов на клиенте и сервере
- Проверка свойства объекта
- Строковые:
- Подставить параметр в строку
- Разложить строку в массив подстрок
- Фоновые задания:
- Выполнение на клиенте с обработкой результата
- Диалоги:
- Вопрос да/нет с обработкой результата
- Файлы:
- Открыть файл
- Загрузить файл
- Списки
- Наложить отбор на динамический список
- Коллекции
- Выгрузить колонку
- Заполнить дерево на форме на основании другого дерева
- Внешние отчеты и обработки
- Сведения о внешних отчетах/обработках/печатных формах
- Печать внешней печатной формы (полный шаблон)
Как это может выглядеть на практике:
- Создание внешних обработок/отчетов/печатных форм или установка сведений в существующих:
- Добавление процедур, вопрос, обработка данных в форме:
Надеюсь, что приемы с использованием шаблонов помогут сэкономить коллегам время и нервы, успехов!
Проверено на платформе 8.3.15.1778.