При переходе с версии 1С:Бухгалтерия ПРОФ на КОРП многие специалисты сталкиваются с неприятным сюрпризом: время запуска программы в файловом режиме увеличивается в несколько раз. Если версия ПРОФ открывается за 5–15 секунд, то КОРП может «зависать» на этапе заставки до 3 минут, при этом аппаратные ресурсы компьютера (процессор, SSD, оперативная память) могут быть загружены незначительно. Рассмотрим подробнее, с чем это связано, и разберем по шагам, как диагностировать и устранить эту проблему.
Прежде всего, проанализируем ситуацию: почему на одном и том же оборудовании и одном релизе платформы версии ведут себя по-разному? Конфигурация 1С:Бухгалтерия КОРП — это значительно более «тяжелый» продукт с точки зрения метаданных. В ней реализован функционал обособленных подразделений, контролируемых сделок, расширенного налогового учета и консолидации данных.
В файловом режиме работы (File-server) платформа 1С критично относится к количеству обращений к таблицам базы данных. При запуске КОРП происходит следующее:
Перед тем как переходить к программному вмешательству, проверим стандартные процедуры оптимизации. Разберем по порядку:
Во-первых, выполним Тестирование и исправление (ТИИ). Нам важны пункты «Реиндексация таблиц» и «Сжатие таблиц». Это исключит фрагментацию файла 1Cv8.1CD. Однако, как показывает практика, для КОРП это дает лишь незначительный прирост скорости при входе.
Во-вторых, обратим внимание на Журнал регистрации. В КОРП из-за большого количества фоновых процессов журнал растет быстрее. Если его размер измеряется гигабайтами, инициализация сеанса замедляется. Рекомендуется сократить журнал регистрации или перевести его в новый формат (SQLite), если это еще не сделано.
В-третьих, проанализируем список лицензий. В КОРП механизм проверки прав на использование расширенного функционала может приводить к опросу всех доступных программных лицензий. Если в системе накоплено много «хвостов» от старых активаций, это может добавить лишние 20–30 секунд к запуску.
Когда стандартные методы не помогают, мы должны выяснить, на каком именно методе или событии «зависает» система. Для этого настроим Технологический журнал (ТЖ). Создадим файл logcfg.xml в папке conf платформы. Нам достаточно отслеживать события CALL (вызовы процедур и функций) с длительностью более нескольких секунд.
Проанализируем ситуацию: часто выясняется, что основная задержка происходит на этапе выполнения модуля управляемого приложения или в процедурах ПриНачалеРаботыСистемы. В версии КОРП одной из самых «дорогих» операций является обращение к внешним интернет-сервисам и проверка реквизитов организации.
Как показало исследование реальных кейсов, одной из скрытых причин долгого старта КОРП является механизм автоматической проверки реквизитов платежных поручений. Программа пытается сопоставить данные организации, банковские счета и актуальные требования законодательства через облачные сервисы. В файловом режиме это блокирует основной поток выполнения.
Чтобы ускорить вход, мы можем принудительно отключить эту проверку через ХранилищеОбщихНастроек. Это позволит миновать длительный процесс опроса сервисов при каждом запуске. Выясним, как это сделать программно.
Нам потребуется создать небольшую внешнюю обработку или выполнить код в консоли кода:
// Отключаем проверку реквизитов платежных поручений при старте
// Это существенно ускоряет инициализацию интерфейса в версии КОРП
ИмяНастройки = "ПроверкаРеквизитовПлатежныхПоручений";
КлючНастройки = "НеПроверятьПриНачалеРаботы";
ЗначениеНастройки = Истина;
ХранилищеОбщихНастроек.Сохранить(ИмяНастройки, КлючНастройки, ЗначениеНастройки);
Сообщить("Настройка успешно сохранена. Перезапустите программу для проверки скорости входа.");
После применения данного кода 1С перестанет тратить время на синхронизацию с онлайн-сервисами реквизитов именно в момент открытия окна. Это решение часто сокращает время входа со 180 до 15–20 секунд.
Разберем еще один важный аспект. В КОРП по умолчанию включено много заданий, которые не всегда нужны конкретному клиенту. Зайдем в раздел Администрирование — Обслуживание — Регламентные операции — Регламентные и фоновые задания.
Проанализируем список и отключим те, которые создают лишнюю нагрузку в первые минуты работы:
Важный момент: В файловом режиме регламентные задания выполняются последовательно. Если одно из них «зависло» из-за сетевого ожидания, все остальные (включая отрисовку интерфейса) будут ждать своей очереди.
Не забудем про встроенные инструменты конфигурации. Перейдем в раздел Администрирование — Производительность. Здесь мы можем снять флажки с пунктов, которые инициируют дополнительные расчеты при старте:
Подведем итог нашему исследованию. Медленный запуск 1С:Бухгалтерии КОРП в сравнении с ПРОФ — это не ошибка программы, а следствие более сложной архитектуры и обилия сервисных функций, которые «тяжелы» для файлового режима доступа к данным.
Рекомендуемый алгоритм действий:
.1CD, .lgd, .lgf в реальном времени.ХранилищеОбщихНастроек параметра НеПроверятьПриНачалеРаботы для реквизитов платежек.Следуя этим шагам, мы сможем добиться того, что версия КОРП будет стартовать почти так же быстро, как и привычная версия ПРОФ, обеспечивая комфортную работу пользователям.