Значение типа Произвольный не сохраняется в настройках формы

Это плохая новость. Я в своей универсальной обработке загрузки номенклатуры использовал такие реквизиты формы.

Но хорошая новость в том, что для ссылочных типов можно заменить на «Любая ссылка».

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

Небольшая полезняшка!

fixin

Программирую на 1С с 1999 года. В 1С просто Гений. В 2020 году ушел из офиса на вольные хлеба фриланса. Принимаю заказы.

Читайте также:

комментариев 7

  1. rzd:

    «Значение типа Произвольный не сохраняется в настройках формы»
    «При этом значения чудесным образом подставляются, даже если были сохранены при закрытии формы из произвольного типа»

    Так сохраняются или нет? Тут нужно их загрузить?

    Создаем реквизит с именем «Структура» и ставим ему признак Автосохранение.

    &НаКлиенте
    Процедура СоздатьСтруктуру(Команда)
    Структура = Новый Структура;
    Для й=1 По 42 Цикл
    Структура.Вставить(«Эл»+й,й);
    КонецЦикла;
    КонецПроцедуры

    &НаСервере
    Процедура ПриЗагрузкеДанныхИзНастроекНаСервере(Настройки)

    Структура = Настройки.Получить(«Структура»);

    Если ТипЗнч(Структура)=Тип(«Структура») Тогда
    Для каждого Эл Из Структура Цикл
    Сообщить(Эл.Ключ+» = «+Эл.Значение);
    КонецЦикла;
    КонецЕсли;

    КонецПроцедуры

    • Ты хочешь сказать, что настройки произвольного типа сохраняются, но не восстанавливаются автоматически?
      А смысл? Это косяк 1С. Галочка должна работать. Вместо использования кода восстановления настроек я ограничил тип.

      • rzd:

        Я хочу сказать, что все работает. Достаточно написать:
        Структура = Настройки.Получить(«Структура»); в событии восстановления настроек

        Изменение типа не всегда решает проблему

        • Да, но согласись, что это косяк от 1С. Казалось бы, почему бы платформе самой не восстанавливать значения произвольного типа?
          Ведь сохранять их она умеет.
          А то ты начинаешь «стокгольмский синдром», когда получаешь удовольствия от косяков разработчиков платформы 1С.

          • rzd:

            Откуда знаешь от чего я получаю удовольствие?
            Теперь по теме — платформа очевидно сохраняет такие данные и есть возможность их прочитать. Посыл в статье неверный

          • статья про косяк автоматического сохранения. Спасибо за уточнение, как такие данные можно восстановить, но автоматом не работает.
            Поэтому самый простой способ побороть косяк — типизировать произвольный объект.

  1. 16.01.2024

    […] уже писал ранее, что реквизиты произвольного типа автоматически не […]

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *