Обработка на Инфостарте
Библиотекарь внешних обработок 1С: каталог папки и сбор из всех баз
Папка с сотнями .epf за пару минут становится списком, в котором видно, что делает каждый файл, где лежат копии одного и того же и какая версия стоит в какой базе. Чужие файлы читаются без запуска их кода. Удалять обработка ничего не умеет, базу не меняет.
Обработка продаётся на Инфостарте за 10 SM, код открыт. Платформа 8.3.20 и новее, управляемые формы, тонкий и веб-клиент, любая конфигурация. Файлы не удаляются: лишнее уходит в подпапку _Архив после подтверждения.
Типичный архив внешних обработок живёт годами без хозяина. Файлы переименовывали, копировали в подпапки под разные базы, забирали из справочников заказчиков. Реестр в Excel, если он был, сломался на первом переименовании: строка ссылается на путь, а файла по этому пути уже нет.
Библиотекарь запоминает файл по SHA-256 содержимого. Имя и путь для него просто поля, поэтому описание, теги и заметки переживают перенос и переименование. Память лежит файлом library.json в корне папки, его можно положить в Git или облако вместе с обработками.
Описание собирается само. Быстрый режим подключает файл в безопасном режиме и читает метаданные, у обработок под БСП ещё вид, версию и команды. Глубокий разбор вообще ничего не подключает: распаковывает контейнер .epf и читает модули как текст, а по тексту ищет запуск программ, COM, интернет, привилегированный режим и Выполнить из переменной.
Что умеет
Сверка папки с прошлым обходом
Новые, изменённые, перемещённые, пропавшие файлы и группы дублей одной строкой вердикта. Хеш пересчитывается только у файлов, где сменились размер или дата.
Дубли, версии и похожие
Один и тот же файл в нескольких местах, одно имя обработки с разным содержимым, один синоним у разных имён.
Пометка риска по каждому файлу
Чинить, внимание или норма, с модулем и номером строки, где нашёлся опасный вызов. Запись и удаление данных тоже отмечаются.
Сбор из справочников баз
Справочник дополнительных отчётов и обработок БСП или старый справочник внешних обработок находится по форме данных. Файлы ложатся в подпапку библиотеки с манифестом: база, вид, версия, ответственный.
Автосбор по расписанию
С БСП регистрируется как дополнительная обработка с серверной командой. Без БСП запускается из планировщика Windows с параметром запуска. Вердикты вида "база не выгружалась N дней" и "есть в двух базах в разных версиях".
Выгрузка для коллег
HTML одним файлом с поиском и карточками, его можно открыть без 1С. XLSX на четыре листа: реестр, дубли и версии, риски, источники.
Сколько это занимает
Сервер 1С 8.3.27.1606, УТ 11.5, библиотека на локальном диске сервера, на сервере в это время работали другие сеансы. Набор: 85 наших обработок и образцов, из них 70 уникальных, 4,5 МБ. Второй набор для нагрузки: те же файлы в семи копиях с разными хешами, 595 файлов.
| Показатель | Значение | Как надо | Вердикт | Что это значит |
|---|---|---|---|---|
| Первый обход, 85 файлов | 108 мс | - | норма | обход подпапок, SHA-256, сверка с library.json |
| Повторный обход без изменений | 89 мс | - | норма | хеш не пересчитывается, сравниваются размер и дата |
| Быстрое описание, 70 файлов | 3,2 с | - | норма | безопасное подключение, метаданные, сведения БСП; режим по умолчанию |
| Глубокий разбор, 70 файлов | 97,4 с | - | внимание | около 1,4 с на файл: лексер проходит каждый модуль. По умолчанию выключен, результат хранится по хешу |
| 595 файлов: обход и быстрое описание | 1,7 с и 52,5 с | - | инфо | описание идёт порциями по 100 файлов |
| 595 файлов: глубокий разбор | около 17 мин | - | инфо | делается один раз, повторно по тому же хешу не считается |
| Сбор из справочника базы | 163 мс | - | норма | 8 обработок, из них 5 новых файлов; уже известные не копируются |
| Выгрузка HTML и XLSX, 75 записей | 166 мс и 315 мс | - | норма | HTML 102 КБ, XLSX 44 КБ |
Разбор результата
Обход и быстрое описание укладываются в секунды даже на шестистах файлах, поэтому их можно гонять хоть каждый день. Дорогой только глубокий разбор, и его достаточно сделать один раз на файл. Папку с сотнями реальных обработок на сетевом диске мы не мерили: там добавится время чтения по сети.
Как начать
- 01
Указать папку
Корень архива с .epf и .erf. В клиент-серверной базе путь должен видеть сервер 1С: сетевая папка с правом записи для службы сервера.
- 02
Обойти и описать
Первый обход строит library.json, быстрое описание заполняет имена, синонимы, формы и макеты. Слева появляются вердикты, из каждого переход к списку.
- 03
Разобрать подозрительные
Глубокий разбор по выбранным файлам читает код без запуска и ставит пометку риска. Свои описания, теги и отметку "проверена" можно дописать в карточке.
- 04
Подключить базы
Сбор из текущей базы одной кнопкой, для остальных баз расписание: через карточку дополнительной обработки или планировщик Windows.
Не получается самим? Напишите, разберёмся
Все ваши базы 1С, их код, интеграции и логи - в одном месте, с ежедневным автообновлением. Один запрос вместо десяти конфигураторов.
- Стоимость
- 700 000 - 1 000 000 ₸ТЗ и внедрение под ключ, без налогов; доработки сверх плана - единым счётом по факту аудита парка баз
- объектов кода всех баз - в одном реестре
- 45 000+
Разборы по теме
Рядом по теме
Как навести порядок в папке с внешними обработками
Разбор по шагам: хеш вместо пути, что лежит внутри .epf, как прочитать модуль без запуска и собрать обработки из баз.
Анализатор кода 1С
Когда каталог собран: техдолг, производительность и опасные места по каждой обработке с подсветкой.
Внешние обработки после обновления
Какие методы типовой, вызванные из ваших обработок и печатных форм, пропадут в новом релизе.
Частые вопросы
Не выполнится ли код чужой обработки, пока она описывается?
Быстрое описание подключает файл в безопасном режиме: запись файлов, запуск программ, COM и интернет запрещены, хотя тело модуля выполняется до первого запрещённого действия. Глубокий разбор не подключает файл вовсе, он читает контейнер как байты.
Что будет с описанием, если файл переименовать или перенести?
Ничего. Запись в library.json привязана к SHA-256 содержимого, путь и имя хранятся отдельными полями и обновляются при следующем обходе.
Почему обработка без правок оказалась новой версией?
Пересохранение в конфигураторе меняет байты файла, а с ними и хеш. Поэтому версии одной обработки связываются по имени из её описания, а хеш остаётся ключом конкретного файла.
Нужна ли в базе БСП, чтобы собрать из неё обработки?
Нет. Справочник ищется по форме данных: реквизит типа ХранилищеЗначения, в котором лежит контейнер 1С. Так находится и справочник БСП, и старый справочник внешних обработок. БСП нужна только для штатного расписания через карточку дополнительной обработки.
Какого пользователя завести под автосбор без БСП?
Отдельного, с правом только читать справочник обработок. Для пакетного запуска у него придётся выключить защиту от опасных действий, иначе платформа остановится на предупреждении. Пароль лучше держать в переменной окружения.
Обработка что-нибудь удаляет?
Нет. Лишние файлы и старые версии переносятся в подпапку _Архив после подтверждения, данные базы не меняются. Запуск непроверенной обработки или помеченной "чинить" прямо из каталога тоже идёт через подтверждение.
Бесплатный экспресс-аудит вашей 1С
За 1-2 дня посмотрим вашу базу, найдём, где теряется производительность, и скажем, что с этим делать. Без обязательств.
Обсудим задачу
Быстрее всего в WhatsApp: напишите пару строк о задаче, ответим в течение рабочего дня.