Шаблон дополнительной обработки для конфигураций 1С на основе БСП с удобной системой хранения настроек

26.03.26

Разработка - Инструментарий разработчика

В шаблоне реализовано разделение настроек по назначению: для обработки в целом и для команды. Данный шаблон упрощает отладку при разработке, внедрении и эксплуатации за счет единого подхода к хранению и доступу к настройкам, единой точки входа для отладки. Поддерживается хранение следующих типов настроек: Примитивные (Число, Строка, Дата, Булево); Ссылочные; Составной тип из ссылочных и примитивных типов; Массив или Список значений из ссылочных и примитивных типов, с перечнем возможных типов; Таблица значений с типизацией колонок.

Бесплатные

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Узнавайте о новых бесплатных решениях в нашей телеграм-группе Инфостарт БЕСПЛАТНО

Наименование Скачано Бесплатно
Шаблон дополнительной обработки для конфигураций 1С на основе БСП с удобной системой хранения настроек
.epf 66,94Kb
71 Скачать бесплатно

Вступление

При разработке с нуля, а также доработке (адаптации) "своих" и "чужих" дополнительных обработок, возникают задачи по управлению настройками:

  • добавление
  • редактирование
  • просмотр
  • доступ к настройкам из программного кода

Каждый разработчик или команда придумывает свои структуры и интерфейсы для этого, что иногда вызывает определенные сложности.

Например, изменилось API и нужно в настройках обработки поменять путь к методу c /api/v2/supplies на /api/v3/supplies. Возникают вопросы:

  • как и где посмотреть текущий путь?
  • как безопасно поменять на новый путь и не повредить (зацепить) другие настройки?
  • как быстро откатить измененные настройки?

Данный шаблон призван:

  • стандартизировать хранение настроек
  • упростить просмотр, добавление и изменение настроек
  • упростить доступ к настройкам при написании программного кода
  • упростить отладку


Актуальная документация, релиз, задачи по развитию и исправлению ошибок

Документация, лицензия, новые релизы, задачи по развитию и исправлению ошибок доступны по ссылке  https://github.com/ilko-os/1c-additional-data-processor-template

 

Ключевые возможности

  • Интерфейс для управления настройками команд и обработки в целом. Поддерживает следующие типы:
    • Примитивные: Число, Строка, Дата, Булево
    • Ссылочные
    • Составной тип из ссылочных и примитивных типов
    • Массив из ссылочных и примитивных типов, с перечнем возможных типов
    • Список значений из ссылочных и примитивных типов, с перечнем возможных типов
    • Таблица значений с типизацией колонок
  • Упрощение отладки при разработке, внедрении и эксплуатации. Достигается за счет:
    • Единого подхода к хранению и доступу к настройкам
    • Единая точка входа для отладки
  • Логирование событий в журнал регистрации

 

Внешний вид интерфейса и назначение элементов управления

 

 

  1. Управление настройками - содержит команды для экспорта, импорта и очистки настроек. Cм. подробнее в разделе "Экспорт, импорт и очистка настроек".
  2. Режим загрузки настроек по умолчанию - определяет правила загрузки настроек по умолчанию описанных в конфигураторе
    • Обновление - если настройка есть в табличной части, то обновляется только поле Описание, а поля Тип и Значение остаются без изменений. Если нет строки с настройкой, то добавляется строка заполняются все поля из настроек, описанных в конфигураторе
    • Добавление новых - если настройка есть в табличной части, то строка остается без изменений. Если нет строки с настройкой, то добавляется строка заполняются все поля, описанные в конфигураторе
    • Замещение - очистка настроек и последующая загрузка
  3. Показать значения безопасного хранилища - определяет включен ли Режим Пароля для колонок Значение на страницах с суффиксом (Безопасное хранилище)
    • Да - Режим Пароля включен
    • Нет - Режим Пароля выключен
  4. Дополнительная обработка
    • содержит ссылку на сохраненную обработку в информационной базе. При открытии внешней обработки через Файл -> Открыть... производится поиск по свойству Имя обработки заданному в конфгураторе и реквизиту ИмяОбъекта справочника "ДополнительныеОтчетыИОбработки". Если имя обработки изменилось и не совпадает с ранее сохранным в информационной базе, то следует выбрать ссылку явно и выполнить команду Cохранить настройки обработки
    • управляет настройками обработки в целом с помощью команд:
      • Загрузить настройки обработки по умолчанию
      • Прочитать настройки обработки
      • Сохранить настройки обработки Действие применятся к страницам Настройки обработки и Настройки обработки (Безопасное хранилище)
  5. Идентификатор команды
    • позволяет выбрать команду указанную в функция СведенияОВнешнейОбработке
    • управляет настройками для выбранной команды с помощью команд:
      • Загрузить настройки команды по умолчанию
      • Прочитать настройки команды
      • Сохранить настройки команды Действие применяется к страницам Настройки команды и Настройки команды (Безопасное хранилище)
      • Выполнить команду - запускает выполнение выбранной команды
  6. Страницы для 4 групп настроек, см. подробнее

 

Порядок внедрения

 

Сохранить актуальный релиз обработки

https://github.com/ilko-os/1c-additional-data-processor-template/releases

 

В режиме "1С:Конфигуратор"

  1. Изменить Имя и Синоним обработки
  2. В модуле объекта обработки в процедуре РазрешенныеРолиДляРедактированияНастроек перечислить роли для которых разрешено открытие формы настроек обработки. Если у пользователя отсутствуют роли из этого перечня, то форма настроек не будет открываться. Место для изменения отмечено комментариями // Начало области для модификации {{ и // }} Окончание области для модификации
  3. В модуле объекта обработки в процедуре СведенияОВнешнейОбработке
    • изменить значения для ПараметрыРегистрации.Версия и ПараметрыРегистрации.Информация. Место для изменения отмечено комментариями // Начало области для модификации {{ и // }} Окончание области для модификации
    • добавить (изменить) необходимые команды. Место для изменения отмечено комментариями // Начало области для модификации {{ и // }} Окончание области для модификации
  4. В модуле объекта обработки в процедуре ВыполнитьКоманду описать реализацию выполнения команд из предыдущего пункта. Место для изменения отмечено комментариями // Начало области для модификации {{ и // }} Окончание области для модификации
  5. (Необязательный) В модуле объекта обработки в добавить необходимы параметры в процедурах:
    • ЗагрузитьНастройкиОбработкиПоУмолчанию
    • ЗагрузитьНастройкиОбработкиБезопасноеХранилищеПоУмолчанию
    • ЗагрузитьНастройкиКомандыПоУмолчанию
    • ЗагрузитьНастройкиКомандыБезопасноеХранилищеПоУмолчанию

Чтобы упростить обновления на новый релиз обработки, желательно следовать правилам из раздела Рекомендации по разработке.

 

В режиме "1С:Предприятие"

  1. Загрузить обработку в справочник ДополнительныеОтчетыИОбработки.
  2. Переоткрыть обработку. Реквизит Дополнительная обработка заполнится ссылкой на обработку из предыдущего пункта. Сопоставление идет по имени обработки.
  3. Заполнить значения настроек для обработки в целом и команд, сохранить настройки. После сохранения нужно Обязательно переоткрыть обработку
  4. (Необязательный) Для команд настроить расписание

 

Работа с настройками

 

Добавление настроек

Настройки делятся на 4 группы:

  • Настройки обработки - относятся к обработке в целом. Например, ИмяХостаПортЗащищенноеСоединение и т.д.
  • Настройки обработки безопасное хранилище - "чувствительные" настройки, которые относятся к обработке в целом. Например, Логин и ПарольКлючAPI и т.д.
  • Настройки команды - относятся к команде. Например, ПутьКРесурсуТаймаутРазмерПакета и т.д.
  • Настройки команды безопасное хранилище - "чувствительные" настройки, которые относятся к команде. Например, Логин и ПарольКлючAPI и т.д.

К имени настройки (Колонка Имя в табличной части) применяются правила именования ключей структуры (переменных) встроенного языка 1С:Предприятие.

Поддерживаются 2 подхода добавления настроек:

  1. Описание настроек в "1С:Конфигуратор", добавление и задание значение настроек в режиме "1С:Предприятие"
    • Плюсы:
      • Упрощают написание кода с последующим доступам к значениям настроек в режиме "1С:Конфигуратор" за счет предварительного проектирования и прототипирования
    • Минусы
      • Скорость, т.к. требуется писать дополнительный код
  2. Добавление настроек и задание их значений в режиме "1С:Предприятие"
    • Плюсы:
      • Простота
      • Скорость
    • Минусы
      • Возможны опечатки в именах настроек, т.к. они независимо добавляются в режиме "1С:Предприятие" и затем используются при написании кода в режиме "1С:Конфигуратор"

 

Описание настроек в "1С:Конфигуратор"

 

Описание настроек в "1С:Конфигуратор" производится в 4 процедурах модуля объекта обработки:

  • ЗагрузитьНастройкиОбработкиПоУмолчанию
  • ЗагрузитьНастройкиОбработкиБезопасноеХранилищеПоУмолчанию
  • ЗагрузитьНастройкиКомандыПоУмолчанию
  • ЗагрузитьНастройкиКомандыБезопасноеХранилищеПоУмолчанию

Названия процедур соответствуют одноименным табличным частям (страницам) на форме.

В процедуре ЗагрузитьНастройкиКомандыПоУмолчанию приведены различные примеры параметров для разных типов.

 

 

Загрузка настроек и значений по умолчанию в режиме "1С:Предприятие"

 

Для загрузки настроек служат 2 команды

  • Загрузить настройки обработки по умолчанию
  • Загрузить настройки команды по умолчанию

 

 

Добавление и задание значение настроек в режиме "1С:Предприятие"

 

Порядок действий:

  1. Добавить строку и задать Имя, должно соответствовать правилам именования ключей структуры
  2. Выбрать Тип контейнера и Тип для значения
  3. Выбрать значение
  4. (Необязательный) Написать комментарий

 

 

Загрузка нескольких значений настроек в режиме "1С:Предприятие" из буфера обмена

 

Поддерживается загрузка нескольких значений примитивного и ссылочного типа для контейнеров:

  • Список значений
  • Массив

Порядок действий изображен на рисунках ниже

 

 

Экспорт, импорт и очистка настроек

Действия доступны в разделе Управление настройками и содержит команды:

  • Экспортировать настройки - экспорт настроек в файл.
  • Импортировать настройки - импорт ранее сохраненных настроек
  • Очистить настройки - очищает настройки обработки в информационной базе

Предупреждение: Файл с сохраненными настройками может содержать чувствительные данные. Нужно ответственно относиться к его хранению и передаче.

 

 

Доступ к настройкам в коде

1. В модуле объекта обработки доступ к настройкам осуществляется через 4 глобальные переменные:

  • НастройкиОбработки - Структура - содержит параметры с вкладки "Настройки обработки"
  • НастройкиОбработкиБезопасноеХранилище - Структура - содержит параметры с вкладки "Настройки обработки (Безопасное хранилище)"
  • НастройкиКоманды - Структура - содержит параметры с вкладки "Настройки команды"
  • НастройкиКомандыБезопасноеХранилище - Структура - содержит параметры с вкладки "Настройки команды (Безопасное хранилище)"

 

 

2. Для передачи параметров за пределы обработки, например, вызов процедуры или функции общего модуля служит глобальная переменная ПараметрыКоманды. Т.е. это упакованные переменные из предыдущего пункта

  • ПараметрыКоманды - Структура - Содержит параметры, сохраненные для обработки в режиме предприятие
    • ПараметрыКоманды.НастройкиОбработки
    • ПараметрыКоманды.НастройкиОбработкиБезопасноеХранилище
    • ПараметрыКоманды.НастройкиКоманды
    • ПараметрыКоманды.НастройкиКомандыБезопасноеХранилище

 

 

3. Для передачи параметров за пределы обработки и доступа к настройкам других команд служит глобальная переменная НастройкиКомандИОбработки

  • НастройкиКомандИОбработки - Структура - Содержит параметры сохраненные для обработки в режиме предприятие

    • НастройкиКомандИОбработки.НастройкиОбработки - Структура - содержит параметры с вкладки "Настройки обработки"
    • астройкиКомандИОбработки.НастройкиОбработкиБезопасноеХранилище - Структура - содержит параметры с вкладки "Настройки обработки (Безопасное хранилище)"
    • НастройкиКомандИОбработки[ИдентификаторКоманды].НастройкиКоманды - Структура - содержит параметры с вкладки "Настройки команды" для указанного идентификатора команды
    • НастройкиКомандИОбработки[ИдентификаторКоманды].НастройкиКомандыБезопасноеХранилище - Структура - содержит параметры с вкладки "Настройки команды (Безопасное хранилище)" для указанного идентификатора команды

где ИдентификаторКоманды - Строка - возможные значения описаны в функции СведенияОВнешнейОбработке в Команда.Идентификатор

 

 

Приемы отладки

  1. Выполнить внедрение
  2. Заполнить и сохранить настройки
  3. Открыть в режиме 1С:Конфигуратор файл обработки через Файл -> Открыть... и поставить точку останова. Как правило, это процедура ВыполнитьКоманду и строка Если ИдентификаторКоманды = "Команда1" Тогда ...
  4. Открыть обработку в режиме 1С:Предприятие через Файл -> Открыть...
  5. Выбрать команду и нажать Выполнить

 

Предупреждение

После сохранения настроек в режиме 1С:Предприятие нужно переоткрыть обработку через Файл -> Открыть...

 

Важно

Открывать нужно один и тот же файл обработки в режимах 1С:Конфигуратор 1С:Предприятие.

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

 

Порядок обновления на новый релиз обработки

 

Рекомендации по разработке

При разработке рекомендуется придерживаться простых правил:

  • Изменения вносить только в модуль объекта обработки
    • в функцию СведенияОВнешнейОбработке в участок обрамленный // Начало области для модификации {{ и // }} Окончание области для модификации
    • в процедуру ВыполнитьКоманду
    • в область ЗагрузкаНастройкиПоУмолчанию
    • в область ОбработчикиКоманд

 

Порядок обновления

  1. Скачать новый релиз шаблона обработки
  2. Открыть в конфигураторе 2 обработки
    • новый релиз шаблона обработки
    • обработку на основе шаблона
  3. Скопировать из обработки на основе шаблона в обработку нового релиза шаблона:
    • Имя обработки
    • Синоним обработки
    • в модуле объекта обработки:
      • в функции СведенияОВнешнейОбработке код обрамленный комментариями // Начало области для модификации {{ и // }} Окончание области для модификации
      • в процедуре ВыполнитьКоманду код обрамленный комментариями // Начало области для модификации {{ и // }} Окончание области для модификации
      • область ЗагрузкаНастройкиПоУмолчанию
      • область ОбработчикиКоманд
      • область РазрешенныеРолиДляРедактированияНастроек
    • другие измененные участки кода, если были отклонения от рекомендаций
  4. Сохранить новый релиз шаблона обработки под новым именем

Проверено на следующих конфигурациях и релизах:

  • 1С:Комплексная автоматизация 2, релизы 2.5.22.155
  • Розница, редакция 2.3, релизы 2.3.24.22

Вступайте в нашу телеграмм-группу Инфостарт

БСП Дополнительные отчеты и обработки Хранение настроек

См. также

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

24900 руб.

20.08.2024    63788    334    162    

298

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С:Предприятие 8 Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

16500 руб.

02.09.2020    251671    1394    421    

1147

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданым 1С, справке синтакс-помошника и проверки синтаксиса.

15250 руб.

25.08.2025    48283    100    27    

113

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм.

22570 руб.

06.10.2023    36600    96    40    

116

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

17000 руб.

10.11.2023    24342    92    42    

101

Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9500 руб.

17.05.2024    51246    181    63    

210

Мастера заполнения Поиск данных Инструментарий разработчика Подбор и обработка объектов 1С 8.3 1С 8.5 Платные (руб)

Infostart MagicInput улучшает подбор в полях ввода 1С: ищет по любой части названия и по нескольким ключевым фрагментам, распознаёт ввод в другой раскладке и показывает иконки/статусы объектов прямо в списке. Поддерживает вставку навигационной ссылки/представления документа для автоподбора; для разработчиков доступны поиск по GUID и полному имени предопределённого. Работает в управляемых формах и подключается в большинстве конфигураций 1С 8.3/8.5.

5000 руб.

25.02.2026    2599    10    1    

14
Для отправки сообщения требуется регистрация/авторизация