Доброго дня всем! Столкнулся с такой штукой. Есть форма документа, в которой есть кнопка и декорация с надписью. По умолчанию видимость декорации = Ложь. При нажатии на кнопку начинается операция и вместе с тем видимость надписи становится Истина. Однако на форме он не появляется в процессе выполнения операции, только лишь по ее завершении. НО! Есть другая кнопка с другой операцией. И при нажатии на нее, если прописать такой же код - Элементы.ДекорацияОперации1.Видимость = Истина, то надпись появляется сразу же после выполнения этой строчки. Во второй операции еще много что отрабатывает до строки с видимостью декорации. Вот вопрос: что может влиять на моментальное отображение надписи после присвоения ей видимости? Пробовал ОбновитьОтображениеДанных(), Прочитать(), Записать() - ничего не помогает.
---
сколько раз про какой-то код упомянули? И где он?
Так вот, никаких галочек, должно быть просто понимание когда и как происходит рендеринг формы.
То что где-то вдруг сработало не штатно, то это именно не штатное поведение. На него ориентироваться вообще не стоит.
И тупо удерживать в отладчике и смотреть форму... это вот совсем не стоит делать. Хотите отзывчивого UI - используйте асинхронные вызовы и фоновые задания.
---
Еще влияет наличие пути к данным. Для поля на форме должено быть определено свойство "ПутьКДанным".
---
Это декорация, у нее нет пути к данным.
---
В первом случае скорей всего вызов у вас уходит на сервер и видимость меняется там. И пока вызов не вернется обратно на клиента ничего на форме не изменится. Во втором случае или все происходит на клиенте или запускаются фоновые задания и видимость меняется быстро.
---
Дополню. Визуально на форме вы тоже не увидите изменений, пока клиентский код не прекратит выполняться (перейдет в режим ожидания действий пользователя или уйдет на сервер). Вот только тогда визуально все отобразится.
---
Добавьте асинхронность, сделайте так:

```1c
    &НаКлиенте
    Процедура Команда_Сформировать(Команда)

    ПодключитьОбработчикОжидания("СформироватьНаКлиенте", 0.1, Истина);
    Декорация1.Доступность = Истина;

    КонецПроцедуры
```
---
ПодключитьОбработчикОжидания("СформироватьНаКлиенте", 0.1, Истина);
 Декорация1.Доступность = Истина;
Попробовал. В обработчик выполнение проваливается и да, в нем уже видна надпись. Но в процедуре, Команда_Сформировать нет. Хотя видимость установлена.
---
Ничего не понял.
Опечатался. Вместо "Доступность" нужно "Видимость" написать.

```1c
    &НаКлиенте
    Процедура Команда_Сформировать(Команда)

    ПодключитьОбработчикОжидания("СформироватьНаКлиенте", 0.1, Истина);
    Элементы.Декорация1.Видимость = Истина;

    КонецПроцедуры
```
---
"Опечатался. Вместо "Доступность" нужно "Видимость" написать." - это понятно.
Вот я имею ввиду (см. скрин)
---
Все правильно. Так и должно быть.
---
Ну а вот есть процедура, в которой сразу же после выполнения код Элементы.Декорация1.Видимость = Истина; делает так, что этот элемент появляется визуально. Как это может быть реализовано? Может какие-то галочки есть, или свойства, за это отвечающие, или еще что..?
---
сколько раз про какой-то код упомянули? И где он?
Так вот, никаких галочек, должно быть просто понимание когда и как происходит рендеринг формы.
То что где-то вдруг сработало не штатно, то это именно не штатное поведение. На него ориентироваться вообще не стоит.
И тупо удерживать в отладчике и смотреть форму... это вот совсем не стоит делать. Хотите отзывчивого UI - используйте асинхронные вызовы и фоновые задания.
---
Фоновые задания не запускаются, проверял. Попробовал поэкспериментировать с клиент-сервером на отдельной форме. Не получил нужного результата. Если устанавливать видимость на клиенте, потом уходить на сервер и возвращаться на клиент, то все равно визуально надпись появляется только после полного завершения процедуры. Точно так же при установке видимости на сервере. Но вот в той команде, выполняемой на клиенте, надпись появляется сразу же после строчки Элементы.ДекорацияОперации1.Видимость = Истина. До этой строки был вызов сервера, подключались всякие обработчики и много что еще выполнялось. Но как это может повлиять на работу именно такой строки кода, не понимаю?
---
Код в студию