Массовая правка модулей внешних обработок через штатный Конфигуратор. 1С 8.3

22.06.26

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

За время работы с 1С не раз возникала задача внести однотипные изменения в десятки внешних обработок: после обновлений, при рефакторинге, при смене общих алгоритмов. Готового инструмента, который работал бы через штатный Конфигуратор и не требовал внешних утилит, не находил. Начал писать свою обработку для одной конкретной задачи, потом дорабатывал под новые нужды — добавлял словари замен, инкрементальную сборку, логирование. В итоге получился универсальный помощник, экономящий часы рутины. В статье показываю, как он устроен, и разбираю реальный пример — правку запросов к регистру склонений в ЗУП 3.1.

Файлы

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

Наименование Скачано Купить файл
Массовая правка модулей внешних обработок через штатный Конфигуратор 1С 8.3
.epf 26,16Kb
3 6 200 руб. Купить

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

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

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

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Введение

После обновления конфигурации в парке внешних печатных форм потребовалось внести однотипные изменения в модули. Открывать и править каждую вручную — долго. Готового инструмента не нашёл: существующие решения либо устарели, либо требуют внешних утилит вроде V8Unpack.

Написал обработку через штатный Конфигуратор платформы. Ключи /DumpExternalDataProcessorOrReportToFiles и /LoadExternalDataProcessorOrReportFromFiles позволяют выгружать .epf/.erf в XML + .bsl и собирать обратно. Осталось сделать удобную обёртку.

С тех пор обработка дорабатывалась под разные задачи: добавил словари замен в JSON, инкрементальную сборку только изменённых файлов, умную замену скобок в условиях ПО. Каждый раз, когда возникала задача массового рефакторинга, обработка экономила часы рутины.

В статье покажу её возможности и порядок работы. В качестве иллюстрации разберу реальный пример — правку соединений с регистром СклоненияПредставленийОбъектов в запросах ВПФ ЗУП 3.1. Вручную такая правка заняла бы полдня, через обработку — пять минут.

 

Что умеет обработка

Обработка выполняет массовую замену текста в модулях внешних обработок и отчётов (.epf/.erf) через штатный Конфигуратор платформы, без внешних зависимостей.

Возможности:

  • Выгрузка .epf/.erf в XML + .bsl через штатный ключ /DumpExternalDataProcessorOrReportToFiles
  • Замена текста в .bsl файлах по таблице правил:
    • Учёт регистра (опционально)
    • Игнорирование лишних пробелов (опционально)
    • «Умная замена» — автоматическая корректировка скобок в условиях ПО (...)ПО ...
  • Инкрементная сборка — Конфигуратор запускается только для изменённых файлов (экономия 80–90% времени)
  • Словари замен — сохранение и загрузка правил в формате JSON для обмена между разработчиками
  • Подробное логирование — в окно сообщений выводятся имена обработок, файлы и номера сработавших правил
  • Кроссплатформенность — запуск Конфигуратора через ЗапуститьПриложение (без COM-объектов), работает на Windows и Linux
  • Интерфейс — управляемые формы, работает в тонком и толстом клиенте

 

Требования

  • Платформа: 1С:Предприятие 8.3.15 и выше (рекомендовано 8.3.24+)
  • Режим работы: тонкий или толстый клиент
  • ОС: Windows, Linux
  • Права: пользователь должен иметь право «Администрирование» в профиле групп доступа
  • Информационная база: любая (файловая или клиент-серверная) — используется как «подложка» для работы Конфигуратора

 

Установка

  1. Скачайте файл обработки МассоваяПравкаМодулейВнешнихОбработок.epf.
  2. Откройте его в 1С:Предприятие через меню Файл → Открыть или двойным кликом по файлу.
  3. Обработка готова к работе.

 

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

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

Шаг 1. Настройка подключения

Откройте вкладку «Подключения» и укажите параметры любой информационной базы (файловой или клиент-серверной). Эта база используется как «подложка» для запуска Конфигуратора — в неё ничего не записывается.

  • Путь к платформе — полный путь к 1cv8.exe нужной версии (8.3.15 и выше).
  • Тип базы — файловая (/F) или клиент-серверная (/S).
  • Параметры подключения — путь к файловой базе либо сервер и имя базы.
  • Пользователь / пароль — если требуется авторизация.

 

 

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

Шаг 2. Выбор каталогов

На вкладке «Файлы» укажите три пути:

  • Каталог обработок — папка с исходными .epf / .erf файлами. Поиск рекурсивный.
  • Каталог выгрузки — временная папка, в которую Конфигуратор распакует XML и .bsl. Создаётся автоматически.
  • Каталог результата — сюда будут сохраняться собранные (исправленные) .epf/.erf файлы. Исходные файлы не затрагиваются.

 

 

Вкладка «Файлы»: задаются каталоги с исходными обработками, временной папкой для выгрузки и папкой для результатов.

Шаг 3. Выгрузка обработок

Нажмите кнопку «Выгрузить». Обработка:

  1. Рекурсивно найдёт все .epf и .erf в каталоге источников.
  2. Для каждого файла запустит 1cv8.exe с ключом /DumpExternalDataProcessorOrReportToFiles.
  3. Рядом с каждым XML-файлом появится папка с .bsl-модулями (ObjectModule.bsl, Form.bsl и т.п.).
  4. Заполнит таблицу «Результаты» со статусом выгрузки каждого файла.

Во время работы отображается прогресс через Состояние(). Длительную операцию можно прервать через Ctrl+Break.

 

 

Вкладка «Файлы» после успешной выгрузки: все 18 внешних обработок выгружены в XML и .bsl. Для каждого файла указан статус «Выгружено» и комментарий. В нижнем окне — итоговое сообщение об успешном завершении.

Шаг 4. Настройка правил замены

Перейдите на вкладку «Замена» и заполните таблицу ПараметрыЗамены:

  • Искомый текст — что заменяем (точная строка, включая пробелы и регистр).
  • Текст замены — на что заменяем.
  • Выполнять — флаг активности правила. Неактивные правила пропускаются.

Доступны два дополнительных режима (галочки в форме):

  • С учётом регистра — по умолчанию замена регистронезависимая (стандартное поведение СтрЗаменить в 1С).
  • Игнорировать лишние пробелы — нормализует пробелы и табуляции перед сравнением.

Правила можно загрузить из JSON-файла (Загрузить словарь из файла) или сохранить текущие (Сохранить словарь в файл). Формат JSON включает версию, дату экспорта, флаги и массив правил — удобно передавать между разработчиками и версионировать в Git.

 

 

Вкладка «Замена» с настроенными правилами замены. Над таблицей — флажки учёта регистра и игнорирования пробелов. Раскрыто выпадающее меню кнопки «Заполнить» с командами для работы со словарями.

Пример реальных правил (кейс с регистром СклоненияПредставленийОбъектов в ЗУП 3.1):

Искомый текст   Текст замены
ФамилияИО,ИОФамилия   ФамилияИО,ИОФамилия,ФИОПолные
ПО (КадровыеДанныеСотрудников.ФизическоеЛицо = СклоненияФизлиц.Объект)   ПО КадровыеДанныеСотрудников.ФизическоеЛицо = СклоненияФизлиц.Объект И (ПОДСТРОКА(СклоненияФизлиц.ИменительныйПадеж, 1, 256) = КадровыеДанныеСотрудников.ФИОПолные)
ПО (КадровыеДанныеСотрудников.ДолжностьПоШтатномуРасписанию = СклоненияДолжностей.Объект)   ПО КадровыеДанныеСотрудников.ДолжностьПоШтатномуРасписанию = СклоненияДолжностей.Объект И (ПОДСТРОКА(СклоненияДолжностей.ИменительныйПадеж, 1, 256) = ВЫРАЗИТЬ(СклоненияДолжностей.Объект КАК Справочник.ШтатноеРасписание).Наименование)

Важно про «умную замену». Конфигуратор 1С выгружает условия ПО непоследовательно: в одних .epfПО (Условие), в других — ПО Условие. Оба варианта синтаксически корректны, но для СтрЗаменить() это разные строки. Обработка автоматически пробует оба варианта, если точное совпадение не найдено. Это избавляет от необходимости заводить в словаре два правила на одну и ту же логическую замену.

Шаг 5. Выполнение замены

Нажмите кнопку «Выполнить замену». Обработка:

  1. Рекурсивно найдёт все .bsl в каталоге выгрузки.
  2. Для каждого файла применит активные правила в порядке их следования в таблице.
  3. Перезапишет файл только если текст реально изменился (сравнение до/после).
  4. Зафиксирует имя изменённой обработки в таблице ИзменённыеОбработки (с проверкой на дубликаты).
  5. Выведет в окно сообщений подробный лог: имя обработки, имя файла, номера сработавших правил.

Пример сообщения в логе:

Изменена обработка: "ВПР_ПриказОбОплатеВыходногоДняБезПерерыва_v3",
файл: ObjectModule.bsl. Применимы правила: №1, №2, №3.

По итогу выводится сводка: всего .bsl-файлов, изменено файлов, уникальных обработок для сборки.

 

 

Результат выполнения замены в модулях внешних обработок. По заданным правилам (№1, №2, №3) были автоматически изменены программные модули (ObjectModule.bsl) у выгруженных файлов внешних обработок.

Шаг 6. Сборка исправленных обработок

Нажмите кнопку «Собрать». Обработка запустит Конфигуратор с ключом /LoadExternalDataProcessorOrReportFromFiles только для файлов из таблицы ИзменённыеОбработки — это и есть инкрементная сборка.

  • Неизменённые .epf/.erf даже не открываются Конфигуратором.
  • Результат сохраняется в Каталог результата с тем же именем и расширением, что и исходный файл.
  • Исходные файлы в Каталоге обработок остаются нетронутыми — можно сравнивать через diff или любой инструмент сравнения.

Если из 50 обработок изменились 3 — Конфигуратор запустится 3 раза, а не 50. На больших парках ВПФ это экономит 80–90% времени этапа сборки.

 

 

Структура каталога «ДляВыгрузки» после выполнения этапа выгрузки. Для каждой внешней обработки автоматически создана отдельная папка и соответствующий ей XML-файл с программным модулем (текстом).

 

 

Результат нажатия кнопки «Собрать» — все изменённые текстовые модули были успешно скомпилированы обратно в готовые внешние обработки (.epf) и помещены в целевой каталог.

 

Пример работы

Исходная задача: исправить задвоение в запросах 18 внешних печатных форм ЗУП 3.1.

Время выполнения:

  • Выгрузка 18 файлов: ~2 минуты
  • Замена текста: ~10 секунд
  • Сборка 12 изменённых файлов (из 18): ~1.5 минуты
  • Итого: менее 5 минут

Вручную это заняло бы 3–4 часа.

 

Почему не V8Unpack?

Существующие решения на Инфостарте (например, публикация 186927 2013 года) используют внешнюю утилиту V8Unpack.exe для разбора .epf файлов. Это создаёт проблемы:

  • Блокировка антивирусами — V8Unpack.exe часто определяется как подозрительный файл
  • Только Windows — COM-объект WScript.Shell не работает на Linux
  • Только старые форматы — ручной парсер ломается на новых бинарных форматах .epf (8.3.10+)
  • Обычные формы — не работает в тонком и толстом клиенте

Наша обработка использует штатный Конфигуратор платформы, который:

  • Работает со всеми форматами .epf/.erf (старый текстовый и новый бинарный)
  • Не требует внешних утилит
  • Работает на Windows и Linux
  • Работает на управляемых формах

 

Известные ограничения

  • Только текстовая замена — без поддержки регулярных выражений
  • Нет предпросмотра замен (dry-run) — изменения применяются сразу
  • Нет прямой загрузки обратно в справочник БСП — нужно загружать вручную через Администрирование → Дополнительные отчеты и обработки
  • Нет кнопки «Проверить» собранную обработку на компиляцию
  • Пароли хранятся в открытом виде в реквизитах формы (не сохраняются между сеансами)
  • Требует права «Администрирование» — не подойдёт для пользователей без соответствующего профиля групп доступа

 

История версий

  • v1.0 — начальная версия: выгрузка, замена, сборка
  • v1.1 — добавлена инкрементная сборка (только изменённые файлы)
  • v1.2 — добавлена «умная замена» скобок в ПО
  • v1.3 — добавлено сохранение/загрузка словаря замен в JSON
  • v1.4 — кроссплатформенность: WshShell → ЗапуститьПриложение
  • v1.5 — добавлена обработка прерывания пользователем (Ctrl+Break)

 

Планы на будущее

  • Галочка «Без учёта регистра» (как в публикации 186927)
  • Кнопка «Проверить результат» через ВнешниеОбработки.Создать()
  • Фильтр по имени файла (маска или regex)
  • Прямая загрузка обратно в справочник ДополнительныеОтчетыИОбработки
  • Поддержка регулярных выражений
  • Предпросмотр замен (dry-run с diff)

 

Заключение

Обработка закрывает реальную боль программистов 1С, которые сопровождают парк ВПФ в ЗУП 3.1, БП 3.0, УТ 11 и других современных конфигурациях. Если у вас есть вопросы или предложения по доработке — пишите в комментариях.

https://github.com/Vermutz/massovaya-pravka-moduley-vneshnih-obrabotok

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

  • Зарплата и управление персоналом, редакция 3.1, релизы 3.1.37.72

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

обработка 8.3 внешние обработки epf erf массовая правка рефакторинг Конфигуратор управляемые формы кроссплатформенность ЗУП 3.1 БП 3.0 УТ 11 ERP программист разработка V8Unpack BSL модули

См. также

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

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

24900 руб.

20.08.2024    74114    377    170    

322

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

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

16500 руб.

02.09.2020    266418    1483    421    

1177

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

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

15250 руб.

25.08.2025    62117    128    36    

136

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

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

22570 руб.

06.10.2023    39736    111    48    

125

Инструментарий разработчика Разработка Администрирование веб-серверов Системный администратор Программист Бизнес-аналитик Руководитель проекта 1С 8.3 Платные (руб)

Analyzer 1C сводит выгрузку 1С — основную конфигурацию и все расширения — в единый граф знаний. Любой запрос по связям за доли секунды, с пометками «Доб.» / «Заимств.» / «Переопределено». Новое в 2.0 — обновление поставки: сравнение и объединение версий деревом «как в Конфигураторе» с выгрузкой плана решений; поиск конфликтов из-за перехватов расширений и висячих ссылок; загрузка из бинарных .cf/.cfe; циклические зависимости. Плюс анализ влияния, запросы BSL, роли и RLS, граф вызовов. Минута на развёртывание через Docker без необходимости подключения к Интернет. Любая 1С:Предприятие 8.3+.

14000 руб.

17.04.2026    8111    33    45    

49

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

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

17000 руб.

10.11.2023    26205    97    46    

104

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

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

6000 руб.

25.02.2026    4612    16    1    

20

Информационная безопасность Инструменты администратора БД Инструментарий разработчика Учет документов Системный администратор Программист Бизнес-аналитик Бухгалтер Пользователь Руководитель проекта 1С 8.3 1С 8.5 Розничная и сетевая торговля (FMCG) Платные (руб)

Контроль ввода данных в 1С: проверка заполнения реквизитов, обязательные поля, контроль перед записью и проведением, запрет проведения документа. Позволяет настраивать любые проверки данных в 1С 8.3/8.5 от обязательных полей до сложных условий – без открытия конфигуратора и написания кода. Готовое расширение, которое подключается и работает сразу.

6000 руб.

15.04.2026    2435    6    0    

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