Переход с версии 1С:ERP 2.2 на 2.4 — это не просто рядовое обновление, а серьезный технологический скачок. В версии 2.4 разработчики радикально переработали внутренние механизмы: расчет себестоимости, партионный учет, подсистему закупок и, что особенно важно для производительности, механизм RLS (ограничение доступа на уровне записей). Если после обновления вы столкнулись с тем, что отчеты, такие как расчетный листок, стали формироваться в несколько раз медленнее, нам необходимо провести комплексную диагностику и оптимизацию системы. Рассмотрим пошагово, какие действия помогут вернуть системе былую скорость.
Разберем первоочередные действия, которые необходимо выполнить на стороне СУБД. После масштабного обновления структуры таблиц и индексов в ERP 2.4, старые статистические данные SQL-сервера становятся неактуальными, что заставляет оптимизатор запросов выбирать неэффективные планы выполнения.
Проанализируем необходимые регламентные операции:
Max Degree of Parallelism в значение 1. Это предотвратит попытки SQL-сервера распараллеливать запросы там, где это создает избыточную нагрузку и блокировки.Выясним причину, связанную с механизмом полнотекстового поиска. Часто после обновления этот механизм инициирует полную переиндексацию данных, что создает колоссальную нагрузку на дисковую подсистему и процессор.
Разберем, как управлять этой функцией в управляемом интерфейсе 1С:ERP:
Как показывает практика, простое отключение этой опции может значительно ускорить работу системы, особенно в моменты массового формирования отчетов.
В ERP 2.4 многие процессы обновления перенесены в фоновый режим. Система может казаться доступной, но в фоне будут работать десятки заданий, пересчитывающих остатки или заполняющих новые регистры. Пока эти задания не закончены, Расчетный листок и другие тяжелые отчеты будут "тормозить".
Проверим статус обновления:
Зайдем в НСИ и администрирование — Обслуживание — Обновление программы — Результаты обновления. Убедимся, что все процедуры завершены на 100%. Если есть зависшие или ошибочные задания, их необходимо запустить повторно или устранить причину сбоя.
Проанализируем используемую платформу. В исходном вопросе упоминается версия 8.3.10.2639. Для конфигурации ERP 2.4.3 и выше данная платформа является морально устаревшей. Разработчики оптимизировали работу с временными таблицами и менеджером памяти в более свежих релизах.
Рекомендуется выполнить переход на платформу не ниже 8.3.12, а оптимально — на актуальные версии 8.3.17 или 8.3.22+ (в зависимости от требований конкретного релиза конфигурации). Это напрямую влияет на скорость формирования отчетов в подсистеме ЗУП, так как там активно используются сложные запросы к виртуальным таблицам.
Механизм RLS в версии 2.4 претерпел изменения. Посмотрим на настройки прав доступа:
При переходе между такими крупными релизами, как 2.2 и 2.4, структура метаданных меняется настолько сильно, что старый кэш сеансовых данных может стать причиной необъяснимых задержек. Выполним "жесткую" очистку:
snccntx в каталоге профиля службы.reg_1541.Поскольку проблема остро проявляется в расчетном листке, проанализируем специфику блока расчета зарплаты. В ERP 2.4 (соответствует ЗУП 3.1) существует настройка Выполнять расчет зарплаты без дозаполнения данных. Если она активна, система не будет пытаться актуализировать все связанные данные в момент формирования отчета, что может существенно ускорить процесс для одного сотрудника.
Также стоит проверить справочник Сотрудники на предмет дублей физических лиц, которые могли некорректно сопоставиться при конвертации данных. Избыточные связи в регистрах сведений по зарплате создают лишнюю нагрузку при построении расчетного листка.
ERP 2.4 активно использует временные таблицы. Убедимся, что база TempDB на SQL-сервере настроена правильно:
TempDB на несколько файлов (обычно по количеству ядер процессора, но не более 8).TempDB на самый быстрый диск (NVMe или SSD с высоким IOPS).Применяя эти рекомендации в комплексе, мы сможем добиться стабильной и быстрой работы 1С:ERP 2.4, минимизировав время ожидания пользователей при формировании отчетности.