Как исправить ошибку «Параметр сеанса отсутствует или удален» при формировании отчетов в 1С

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

При работе с крупными отчетами в системе 1С:Предприятие, такими как «Анализ ФОТ по начислениям» за длительный период (год и более), пользователи часто сталкиваются с неприятной ситуацией. В толстом клиенте система выдает сообщение «Параметр сеанса отсутствует или удален» или «Возникла непредвиденная ошибка», а в тонком клиенте отчет попросту не формируется, показывая пустой результат.

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

Разберем техническую природу ошибки

Прежде чем переходить к активным действиям, выясним причину сбоя. Ошибка «Параметр сеанса отсутствует или удален» обычно возникает в тот момент, когда отчет формируется во вторичном (фоновом) задании. Для повышения производительности 1С часто выносит построение тяжелых отчетов в фон.

Когда фоновое задание завершает работу, оно должно передать результат (структуру данных) обратно в основной сеанс пользователя. Если в этот момент связь между фоновым заданием и контекстом сеанса разрывается или данные в специальном хранилище на сервере оказываются повреждены, система «теряет» параметры сеанса. Это может происходить из-за нехватки оперативной памяти, блокировок файлов антивирусом или некорректной работы менеджера временных хранилищ платформы.

Решение №1: Очистка сеансовых данных на сервере (Основной метод)

Как показывает практика и подтверждают участники обсуждения, наиболее эффективным способом является физическая очистка временных данных кластера серверов 1С. Проанализируем, как это сделать правильно, чтобы не повредить рабочую базу.

Алгоритм действий для серверной базы:

  1. Остановим службу 1С:Предприятия. Это критически важно, так как при запущенной службе файлы будут заблокированы процессом rmngr или rphost. Перейдите в «Службы» (services.msc) и остановите Агент сервера 1С:Предприятия.
  2. Перейдем в каталог данных кластера. Обычно он располагается по пути: C:\Program Files\1cv8\srvinfo\reg_1541\ Здесь reg_1541 — это идентификатор вашего кластера (номер может отличаться, если вы меняли порты).
  3. Найдем и удалим папку snccntx. Именно в этой директории хранятся контексты сеансов. Со временем там могут накапливаться «битые» файлы, которые мешают корректной инициализации параметров.
  4. Запустим службу 1С снова. После запуска платформа заново создаст структуру папок, и ошибка должна исчезнуть.

Решение №2: Сброс настроек отчета к стандартным

Иногда проблема кроется не в сервере, а в «испорченных» пользовательских настройках конкретного отчета. Если отчет перестал открываться только у одного пользователя или после внесения изменений в структуру, рассмотрим следующий вариант:

  1. Откроем форму отчета и перейдем в меню «Еще» -> «Настройки...».
  2. Установим вид «Расширенный».
  3. Снова нажмем «Еще» и выберем пункт «Настройки для технического специалиста».
  4. В открывшемся окне нажмем «Еще» -> «Стандартные настройки».

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

Решение №3: Особенности файловых баз и веб-серверов

Если ваша база работает в файловом режиме и опубликована на веб-сервере (например, IIS или Apache), то папки snccntx в привычном понимании может не быть. В этом случае проанализируем работу веб-компонентов:

Решение №4: Проверка целостности данных и метаданных

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

В такой ситуации рекомендуется выполнить Тестирование и исправление (ТиИ):

  1. Запустим базу в режиме «Конфигуратор».
  2. Выберем пункт меню «Администрирование» -> «Тестирование и исправление».
  3. Обязательно отметим пункты:
    • Реструктуризация таблиц информационной базы;
    • Проверка логической целостности;
    • Пересоздание данных сеансов (если доступно в вашей версии).

Дополнительные факторы: Память и Лимиты

Проанализируем ситуацию, когда ошибка возникает только при выборе очень большого периода (например, отчет за 3 года). Это явный признак того, что процесс rphost достигает лимита выделенной ему памяти.

Посмотрим на настройки в консоли администрирования кластера 1С:

  1. Откройте «Администрирование серверов 1С Предприятия».
  2. Перейдите в свойства рабочего сервера.
  3. Проверьте параметры «Безопасный расход памяти за один вызов» и «Максимальный объем памяти рабочих процессов».
  4. Если значения отличны от нуля, попробуйте временно увеличить их или установить в 0 (без ограничений). Если памяти физически не хватает, сервер убивает «прожорливый» процесс, что и приводит к потере параметров сеанса.

Также стоит проверить настройки SQL-сервера. Если база данных tempdb переполнена или расположена на диске с малым объемом свободного места, это может приводить к сбоям при формировании временных таблиц для тяжелых отчетов.

Резюмируем: в большинстве случаев «лечение» заключается в очистке папки snccntx и перезапуске служб. Если же проблема повторяется, следует обратить внимание на объем оперативной памяти сервера и настройки лимитов в консоли кластера.

← На главную