Почему зависает или выдает ошибку недостаточно памяти отчет Т-2 в 1С:ЗУП 2.5 у одного пользователя и как это исправить?

Пользователь 1С v8.3 (Обычные формы) 1С:Зарплата и Управление Персоналом
← На главную

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

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

Симптомы и диагностика ошибки

При длительном ожидания вывода результата система генерирует следующую ошибку контекста:

{Отчет.УнифицированнаяФормаТ2.МодульОбъекта(86)}: Ошибка при вызове метода контекста (Вывести)
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
по причине: Ошибка вывода результата
по причине: Ошибка при выводе результата
по причине: Ошибка получения данных
по причине: Ошибка создания набора данных "Данные"
по причине: Ошибка при исполнении запроса набора данных
по причине: Ошибка выполнения запроса
по причине: Недостаточно памяти для получения результата запроса к базе данных

Выясним причину такого поведения. Отчет «Унифицированная форма Т-2» построен на основе Схемы компоновки данных (СКД) и собирает информацию из десятков кадровых регистров сведений (сведения о стажах, образовании, составе семьи, воинском учете, кадровых перемещениях). Когда у конкретного пользователя сохранены индивидуальные варианты настроек, отборов или группировок, механизм СКД динамически перестраивает SQL-запрос.

Если в настройках пользователя присутствует искажение или специфический отбор, запрос к СУБД начинает порождать дублирование строк (декартово произведение) при соединении таблиц. Это приводит к критическому росту объема временных таблиц в оперативной памяти и превышению допустимых лимитов рабочего процесса 1С.

Основное решение: Сброс настроек отчета на стандартные

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

Рассмотрим по шагам, как восстановить корректную работу отчета:

  1. Откроем отчет «Унифицированная форма Т-2» под учетной записью пользователя, у которого возникает ошибка.
  2. Нажмем кнопку «Кнопка "Настройка..."» (или перейдем в меню выбора вариантов настроек отчета).
  3. Нажмем кнопку «Восстановить стандартные настройки» (значок стрелки или соответствующий пункт меню).
  4. Подтвердим сброс пользовательских настроек к заводским параметрам.
  5. Повторно сформируем отчет.

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

Дополнительные действия при сохранении проблемы

Если сброс настроек внутри отчета не помог, проанализируем альтернативные варианты решения:

  1. Очистка пользовательского кэша 1С: Завершим сеанс работы пользователя и удалим каталоги локального кэша сеанса из папок профиля Windows (AppData\Local\1C\1Cv82 и AppData\Roaming\1C\1Cv82).
  2. Очистка сохраненных настроек через административные функции: В режиме 1С:Предприятие перейдем в справочник пользователей или регистр сохраненных настроек и удалим сохраненные варианты для отчета УнифицированнаяФормаТ2 у данного пользователя.
  3. Проверка кадровой истории сотрудника: Если отчет зависает только при выборе одного конкретного сотрудника, необходимо проверить регистры сведений по данному физическому лицу. Записи с накладывающимися периодами или дублирующимися датами в регистрах сведений (например, о составе семьи или стажах) могут вызывать зацикливание при выполнении запроса СКД.
← На главную