Обновление условного оформления

1. Ramir555 1 21.07.17 07:37 Сейчас в теме
Программном заполнении табличной части формы не срабатывает условное оформление. Решается следующая задача, нужно по результатам отчета создать документ:

Форма = ПолучитьФорму("Документ.ЗаказНаПеремещение.ФормаОбъекта");
ДанныеФормы = Форма.Объект;
СформироватьДокументНаСервере(ДанныеФормы);
КопироватьДанныеФормы(ДанныеФормы, Форма.Объект);

Форма.Открыть();
Форма.Модифицированность = Истина;


в процедуре "СформироватьДокументНаСервере" происходит заполнение объекта и методом "КопироватьДанныеФормы", копируется в форму. У документа есть условное оформление, которое делает не доступным характеристики, если их нет у номенклатуры. Так вот, у номенклатуры есть характеристики, но условное оформление, после копирование не срабатывает. Для того, чтобы условное оформление сработало, нужно перезаполнить вручную номенклатуру

Методы Форма.Прочитать(), Форма.ОбновитьОтображениеДанны(), Форма.Элементы.Товары.Обновить() не помогают. А вот метод Форма.Записать() помогает, но он не подходит.

Может кто знает решение этой проблемы?
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. sergpogo 2 21.07.17 08:32 Сейчас в теме
Как вариант можно попробовать дважды изменить видимость какого нибудь элемента, это должно привести к перерисовке формы
3. Ramir555 1 21.07.17 08:40 Сейчас в теме
(2) нет, это не помогает, т.к. дело не в перерисовке, надо заставить форму применить условное оформление. Перерисовать можно методом ОбновитьОтображениеДанны().
4. hopter 36 18.08.17 04:05 Сейчас в теме
(3) не нашли решение? та же проблема
5. Ramir555 1 23.08.17 18:03 Сейчас в теме
(4) Пришлось записывать объект, а потом его открывать.
6. hopter 36 25.08.17 04:59 Сейчас в теме
(5) не совсем то
смысл в том чтобы была полностью заполненная форма, но не записанный объект, вдруг пользователь откажется
7. smit1c 106 12.01.19 19:08 Сейчас в теме
8. Westbound 04.03.24 15:15 Сейчас в теме
(7) та же проблема. Используется процедура УстановитьУсловноеОформление, как в типовых документах. Так вот после изменения данных, влияющих на отображение условного оформления, я снова вызываю метод УстановитьУсловноеОформление, тогда все работает. Вариант мне, конечно, не нравится, но другого я не придумал.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот