Массовый редактор событий: Фреймворк для эффективной разработки и тестирования в 1С

26.01.26

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

Система "Массовый редактор документов" (МРС) представляет собой фреймворк для централизованной работы со всеми существующими подписками на события и позволяет динамически подключать пользовательские процедуры-обработчики к стандартным событиям объектов метаданных (документов, справочников, регистров и т.д.) из пользовательского интерфейса. Это также упрощает создание и управление бизнес-правилами. Вместо того чтобы разбрасывать обработчики событий по сотням модулей, вы можете централизованно управлять всей бизнес-логикой в одном месте.

Файлы

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

Наименование Скачано Купить файл
Массовый редактор событий: Фреймворк для эффективной разработки и тестирования в 1С
.cfe 141,45Kb
1 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Пример простоты интерфейса

 


 

Основные возможности

1. Централизованность

 

• Обработчики можно включать/выключать на определенную дату без перезапуска системы, в едином справочнике "МРС_ПодключаемыеПроцедуры".

• Разные обработчики для разных типов метаданных.

• Возможность иметь несколько обработчиков на одно событие и оперативно менять бизнес-правила в одном месте.

• Любые изменения мгновенно применяются ко всем объектам.

• Быстрое нахождение дублирующейся логики.

• Не нужно искать все модули, где используется эта логика.

2. Быстрое тестирование и отладка

• Возможность быстро проверить свои идеи без запуска конфигуратора.

 

 

• Виден весь контекст выполнения в одном месте.

• Можно временно отключить правило без удаления кода.

• Легко добавить логирование для конкретного правила.

 

3. Безопасное расширение функционала

• Код обработчиков хранится отдельно от основного кода.

• Не требуется модификация типовых объектов.

• Легко откатить изменения.

 

4. Универсальность

• Работает со всеми объектами метаданных.

• Поддерживает все подписки на события.

• Позволяет переопределять стандартное поведение.

 

Как это работает технически

1. Структура системы

• Модуль-диспетчер — перехватывает события объектов (документов, справочников, регистров и т.д..).

 

 

• Справочник правил — хранит код и настройки каждого правила.

 

 

• Таблица подключений — определяет, к каким объектам применяется правило.

 

 

2. Процесс выполнения

• Пользователь выполняет действие (например, записывает документ).

• Диспетчер находит все активные правила для этого типа события.

• Последовательно выполняет код каждого правила.

• Возвращает результат в стандартный механизм 1С.

 

Как начать использовать

1. Установка

• Добавить расширение в конфигурацию (добавляется довольно долго из-за большого количества новых объектов).

• Назначить роль "МРС_ЧтениеМРС" для всех пользователей.

 

2. Создание первого правила

• Открыть справочник "Подключаемые процедуры".

• Выбрать дату, с которой ваша процедура начнет работать (1). 

• По необходимости, выбрать дату, с которой ваша процедура перестанет работать (2).

• Выбрать тип объекта (например, "ДокументОбъект") (3).

• Выбрать событие (например, "Перед записью") (4).

• Написать код правила (5).

• Выбрать документы, к которым применяется правило (6).

 

Ограничения и особенности

1. Что хорошо работает с МРС

• Проверки и валидация данных.

• Автоматическое заполнение реквизитов.

• Логирование действий.

• Уведомления о событиях.

2. Что лучше оставить в модулях объектов

• Специфическая логика одного документа.

• Высокопроизводительные операции.

• Взаимодействие с другими модулями через сложные интерфейсы.

3. Производительность

• На каждое событие добавляется 10-50 мс на обработку правил.

• Для массовых операций рекомендуем выборочное применение правил.

 

Типичные сценарии внедрения

1. Для новой разработки

• Создавайте все бизнес-правила через МРС с начала проекта.

• Используйте как стандартный подход к реализации логики.

2. Для существующего проекта

• Начните с самых проблемных мест (много дублирования, частые изменения).

• Постепенно переносите логику в правила.

• Документируйте процесс миграции.

 

Заключение

МРС — это практичный инструмент для разработчиков, который решает конкретные проблемы:

• Упрощает отладку и тестирование.

• Ускоряет внесение изменений.

• Централизует управление бизнес-логикой.

• Убирает дублирование кода.

Для небольших проектов это способ лучше организовать код. Для крупных — возможность для поддержания порядка в сотнях модулей.

Инструмент с открытым исходным кодом. Можно адаптировать под конкретные нужды проекта. Основная аудитория — разработчики 1С, которые устали от постоянного копирования кода и хотят более эффективного способа работы или более быстрого способа тестирования и проверки своих идей.

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

  • 1С:ERP Управление предприятием 2, релизы 2.5.22.134

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

расширение 1С:Предприятие демонстрация открытый код памятка инструмент разработчика ERP задача пользователя рефакторинг консоль кода подписки на события общие модули модуль диспетчер универсальное расширение

См. также

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

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

24900 руб.

20.08.2024    57440    308    154    

280

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

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

16500 руб.

02.09.2020    240095    1310    419    

1111

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

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

15250 руб.

25.08.2025    36519    77    19    

89

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

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

17000 руб.

10.11.2023    23031    84    42    

98

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С:Предприятие 8 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Библиотека стандартных подсистем Платные (руб)

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

22570 руб.

06.10.2023    33892    87    35    

110

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

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

9500 руб.

17.05.2024    47731    164    63    

202

Разработка Инструментарий разработчика Работа с интерфейсом Адаптация типовых решений Нейросети 1C:Бухгалтерия 1C:ERP 1С:ЗУП 1С:КА 1С:УНФ 1С:УТ 1С:Розница 1С:ДО 1С:ERP Управление предприятием 2 Платные (руб)

Разработка "Дизайнер форм 1С" реализована в виде расширения 1С и является универсальным инструментом для разработки прототипа форм с целью демонстраций, технических заданий и т.д. Без участия разработчика с возможностью экспорта в файл внешней обработки и генерации формы используя искусственный интеллект.

36600 руб.

28.08.2025    5209    2    2    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. dsdred 4187 26.01.26 16:09 Сейчас в теме
Делал я подобное решение, в подсистеме PAPI кстати есть. Служит для временной подписки или фикса.
Встал вопрос который встает и тут.
У вас 1000 справочников, и все универсальные подписки будут срабатывать и проверять надо ли выполнятся, а подписка активна только на 1 справочник. Пришлось сильно переработать решение.

Интересно как тут решен этот вопрос.
2. InFlach 46 27.01.26 10:03 Сейчас в теме
Доброго времени суток. Познакомился с подсистемой PAPI — очень интересное решение, которое перекрывает довольно много задач.

Что касается расширения МРС, первоначальная идея заключалась в том, чтобы сделать модель для быстрого тестирования документов по подпискам. Модуль-диспетчер перенаправлял подписки к этому запросу:
"ВЫБРАТЬ
	|	МРС_ПодключаемыеПроцедурыПодключенныеОбъекты.Ссылка КАК Ссылка
	|ИЗ
	|	Справочник.МРС_ПодключаемыеПроцедуры.ПодключенныеОбъекты КАК МРС_ПодключаемыеПроцедурыПодключенныеОбъекты
	|ГДЕ
	|	МРС_ПодключаемыеПроцедурыПодключенныеОбъекты.Ссылка.ПодпискаНаСобытие = &ПодпискаНаСобытие
	|	И МРС_ПодключаемыеПроцедурыПодключенныеОбъекты.Используется = ИСТИНА
	|	И МРС_ПодключаемыеПроцедурыПодключенныеОбъекты.Объект = &Документ
	|	И &ТекущаяДатаСеанса >= МРС_ПодключаемыеПроцедурыПодключенныеОбъекты.Ссылка.ДатаАктивацииПроцедуры"
Показать


Потерь в производительности практически не было. Впоследствии данный запрос так и остался для всех метаданных. Протестировал расширение в ERP — каких-то серьезных проблем также не увидел. Но возможно, что при достаточной нагрузке пользователями начнутся тормоза. Буду продолжать тестировать. Если получится найти более быстрое решение, и при этом не придется сильно урезать функционал, обязательно сообщу :)
Для отправки сообщения требуется регистрация/авторизация