Ошибка «Неизвестный идентификатор формы» или «Параметр сеанса отсутствует или удален»
Платформенные ошибки, которые выскакивают, но не всегда. Пришлось разбираться, с чем связано и в итоге ответ был найден. Это ошибка платформы и чтобы ее не было, нужно избегать код описанный ниже или ждать исправления платформы от 1С.
Описанная проблема встречается только на СУБД`шных базах, на файловых таких проблем не возникает.
- Описание
- Подробнее
Описание
Столкнулся с проблемой, что иногда выскакивает ошибка "Неизвестный идентификатор формы", более редко "Параметр сеанса отсутствует или удален" с последующим закрытием 1С. Эти ошибки платформенные и я долго не мог понять в чем дело, пришлось потратить не один час, чтобы понять причину. Чтобы вам не тратить время как мне, опишу итог моих исследований в данном вопросе.
Если в модуле формы справочника или документа в событие "ПриСозданииНаСервере" прописано, что идет помещение во временное хранилище, то иногда возникают ошибки описанные выше. Ниже привожу пример кода:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ПоместитьВоВременноеХранилище(ПолучитьОбщийМакет("УИ_MonacoEditorWindows"), ЭтаФорма.УникальныйИдентификатор);
КонецПроцедуры
При этом УникальныйИдентификатор может быть сгенерированным, а не самой формы. Во временное хранилище в данном случае помещается совсем небольшой бинарник, который весит 1,28 МБ. Если же помещать килобайтный бинарник, то такой проблемы не будет. Чтобы избежать ошибку можно пойти обходным путем и разместить бинарный файл сразу в Temp-папку, но если этот файл нужен на стороне клиента, то тут уже возникают сложности, т.к. файл нужно переместить с серверной части на клиентскую, а с временным хранилищем возникают проблемы.
Ошибка возникает только на СУБД-базе, на файловой же все хорошо. Ошибка присутствует на платформе 8.3.24.1548 , на более ранних тоже была замечена. Тестировалась с СУБД MSSQL 2012.
В прикрепление выкладываю мини-базу на которой была воспроизведена проблема. Скачивать смысла нет, т.к. на скринах и так все видно.
Если столкнулись с такой же проблемой, то плюсуйте статью, может увидев реакцию, фирма 1С соизволит поправить косяк, который тянется с давних времен.