Значение типа Произвольный не сохраняется в настройках формы
Это плохая новость. Я в своей универсальной обработке загрузки номенклатуры использовал такие реквизиты формы.
Но хорошая новость в том, что для ссылочных типов можно заменить на «Любая ссылка».
При этом значения чудесным образом подставляются, даже если были сохранены при закрытии формы из произвольного типа:
Небольшая полезняшка!
«Значение типа Произвольный не сохраняется в настройках формы»
«При этом значения чудесным образом подставляются, даже если были сохранены при закрытии формы из произвольного типа»
Так сохраняются или нет? Тут нужно их загрузить?
Создаем реквизит с именем «Структура» и ставим ему признак Автосохранение.
&НаКлиенте
Процедура СоздатьСтруктуру(Команда)
Структура = Новый Структура;
Для й=1 По 42 Цикл
Структура.Вставить(«Эл»+й,й);
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ПриЗагрузкеДанныхИзНастроекНаСервере(Настройки)
Структура = Настройки.Получить(«Структура»);
Если ТипЗнч(Структура)=Тип(«Структура») Тогда
Для каждого Эл Из Структура Цикл
Сообщить(Эл.Ключ+» = «+Эл.Значение);
КонецЦикла;
КонецЕсли;
КонецПроцедуры
Ты хочешь сказать, что настройки произвольного типа сохраняются, но не восстанавливаются автоматически?
А смысл? Это косяк 1С. Галочка должна работать. Вместо использования кода восстановления настроек я ограничил тип.
Я хочу сказать, что все работает. Достаточно написать:
Структура = Настройки.Получить(«Структура»); в событии восстановления настроек
Изменение типа не всегда решает проблему
Да, но согласись, что это косяк от 1С. Казалось бы, почему бы платформе самой не восстанавливать значения произвольного типа?
Ведь сохранять их она умеет.
А то ты начинаешь «стокгольмский синдром», когда получаешь удовольствия от косяков разработчиков платформы 1С.
Откуда знаешь от чего я получаю удовольствие?
Теперь по теме — платформа очевидно сохраняет такие данные и есть возможность их прочитать. Посыл в статье неверный
статья про косяк автоматического сохранения. Спасибо за уточнение, как такие данные можно восстановить, но автоматом не работает.
Поэтому самый простой способ побороть косяк — типизировать произвольный объект.