Как получить список используемых внешних отчетов в конфигурации 1С 7.7?

Программист 1С v7.7 IT и автоматизация бизнеса
← На главную

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

Анализ ссылок в конфигурации с помощью GCOMP

Одним из самых надежных методов определения используемых объектов является поиск по тексту конфигурации. Поскольку стандартные инструменты 1С 7.7 не всегда позволяют удобно искать в коде, мы воспользуемся утилитой GCOMP. Она декомпилирует конфигурацию в текстовый вид, что позволит нам искать программные вызовы внешних файлов.

Рассмотрим процесс работы:

  1. Выгрузите конфигурацию в текстовые файлы с помощью GCOMP.
  2. Используйте любой файловый менеджер или утилиту поиска текста (например, Total Commander или Notepad++) для поиска подстроки ОткрытьВнешний или ОткрытьФорму.
  3. Проанализируйте найденные вхождения. Вы увидите пути к файлам вида .\ExtForms\Остатки.ert, что позволит составить список тех отчетов, которые явно прописаны в коде конфигурации.

Использование инструментов анализа интерфейса

Если ссылки на отчеты прописаны непосредственно в пунктах меню, а не в модулях, задача усложняется. В этом случае прямая выборка по коду не даст результата. Рекомендуем использовать специализированные инструменты:

  1. RWidget: Данный инструмент позволяет программно обращаться к элементам меню и интерфейсным формам. С его помощью вы сможете выгрузить структуру меню и понять, какие внешние файлы привязаны к конкретным пунктам интерфейса.
  2. Formex: Этот объектный движок предоставляет расширенные возможности для управления формами. Используя его, можно перехватывать действия пользователей и определять, какие внешние обработки вызываются при тех или иных манипуляциях в интерфейсе.

Метод временного логирования запуска отчетов

Самый точный способ узнать, что именно запускают пользователи — это внедрить «счетчик» использования. Разберем, как реализовать механизм регистрации вызовов:

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


// Пример логики для логирования запуска
Процедура ЗаписатьЛогЗапуска(ИмяФайла)
    ТекстЛога = СоздатьОбъект("Текст");
    ТекстЛога.ОткрытьФайл("C:\Log\ReportsUsage.txt");
    ТекстЛога.ДобавитьСтроку(ТекущаяДата() + " " + ТекущееВремя() + " : " + ИмяФайла);
    ТекстЛога.Записать();
КонецПроцедуры

После внедрения этого механизма оставьте систему поработать на один квартал. Те файлы, которые не появятся в логах за этот период, с высокой долей вероятности являются кандидатами на перемещение в архив.

Организация системы «Навигатор внешних отчетов»

Чтобы избежать хаоса в дальнейшем, настоятельно рекомендуем использовать Навигатор дополнительных отчетов и обработок. Это специализированная разработка, которая позволяет:

Правила безопасности при очистке папки ExtForms

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

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

← На главную