Имя: Пароль:
1C
 
Неверный тип значения при блокировке
0 MaiorovYury
 
22.06.20
11:49
Всем доброго дня!
Делаю расширение с версионированием. Скопировал стандартный механизм в расширение. Все работало ок.
Тут добавил новый документ в типы объекта расширения и при попытке заблокировать таблицу получаю следующую ошибку
{ЭИТ ОбщийМодуль.ЭИТ_ВерсионированиеОбъектов.Модуль(1402)}: Ошибка при вызове метода контекста (Заблокировать): Неверный тип значения: РегистрСведений.ЭИТ_ВерсииОбъектов.Объект

Вот код, который приводит к ошибке.

    Если ТранзакцияАктивна() Тогда
        БлокировкаДанных = Новый БлокировкаДанных();
        ЭлементБлокировки = БлокировкаДанных.Добавить("РегистрСведений.ЭИТ_ВерсииОбъектов");
        ЭлементБлокировки.УстановитьЗначение("Объект", Ссылка);
        БлокировкаДанных.Заблокировать();
    КонецЕсли;

проблема только в одной базе. Делаю ее копию через восстановление бэкапа sql - все работает
База продакшн почти 24/7, так что час на бэкап и его восстановление - непозволительная роскошь

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

Может у кого есть какие идеи?
1 MaiorovYury
 
22.06.20
13:01
никто с таким не сталкивался?
Уже думаю может банально дело в кеше
Почищу вечером - если поможет отпишусь
2 MaiorovYury
 
23.06.20
10:38
чистка кэша из папки C:\Program Files\1cv8\srvinfo\reg_1541\snccntxe22ee3fc-e895-45d7-8105-bde0f927249b решила проблему)
Надо бы преиодически это делать