Имя: Пароль:
1C
 
Обновить данные формы
0 nAPACEHAK
 
12.09.18
10:07
Доброго

Подскажите, можно ли, и если да, то где подсмотреть пример

например
есть документ. в документе реквизит: спр.пользователи и декорация.заголовок = спр.пользователи.физлицо

в этом документе если открыть пользователя и поменять ему физлицо, то  записав пользователя декорация не обновится.
Ну если заново перевыбрать пользователя то да, обновится, тут понятно

а можно ли обновить декорацию автоматически при записи отредактированного справочника?

эмм... сумбурно наверно. вот скрин
http://prntscr.com/ktf09h

открыть справочник, заполнить дату ВУ и при записи справочника автоматически обновить декорацию. а не снова перевыбрать реквизит водителя для изменения декорации.
1 Пуля
 
12.09.18
10:09
1c так не работает
2 nAPACEHAK
 
12.09.18
10:10
(1) печаль ((
тоесть если я изменю дату ВУ то в декорации останутся старые значения и их не обновить без костылей?
3 Гипервизор
 
12.09.18
10:13
(2) Ну если при записи пользователя сделаете оповещение, а в форме документа это оповещение обработаете, то будет вам счастье.
4 Гипервизор
 
12.09.18
10:15
А вообще как-то сложно у вас. Может просто при открытии формы перечитать данные о физ.лице?
5 s03
 
12.09.18
10:15
(1) разве? а как же "ОбновитьОтображениеДанных"?
6 DmitrO
 
12.09.18
10:15
Можно.
Надо сделать чтобы форма элемента справочника оповещала другие формы о том что объект записан (УправляемаяФорма.Оповестить()), а формы для которых это важно обрабатывали это оповещение (событие ОбработкаОповещения).
Или просто обработать событие Открытие у поля ввода и открывать форму справочника с оповещением о закрытии и тупо всегда обновлять декорацию при закрытии элемента справочника.
7 nAPACEHAK
 
12.09.18
10:33
(6) в принципе получилось. Спасибо за наводку

&НаКлиенте
Процедура Водитель1Открытие(Элемент, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    П = Новый Структура;
    П.Вставить ("Ключ", Объект.Водитель1);
    Оповещение = Новый ОписаниеОповещения ("Водитель1ПослеОткрытия", ЭтаФорма);
    ОткрытьФорму("Справочник.ДСУ_ВодителиАТ.ФормаОбъекта", П, ЭтаФорма, ЭтаФорма.УникальныйИдентификатор,,,Оповещение,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
    
КонецПроцедуры

&НаКлиенте
Процедура Водитель1ПослеОткрытия (Результат, ДопПараметры) Экспорт
    ПроверитьСрокДействияВУВодителей();    
КонецПроцедуры
8 DmitrO
 
12.09.18
10:37
(7)молодец, "тупо всегда обновлять", это наш 1Сный выбор ;)
9 Пуля
 
12.09.18
10:41
(5) И чо? Метод есть, но так как хочет (0) 1С его не использует
10 nAPACEHAK
 
12.09.18
10:43
(8) это вариант просто проверить как отработает а не тупо его оставить окончательным :)
11 DmitrO
 
12.09.18
10:47
(10)Да я понимаю, просто я считаю, что в некоторых ветках должно прозвучать имя нашего желтого бренда, это мой долг как программиста. )
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.