Как сразу отобразить изменения на форме

1. user1342811 17 21.03.22 02:54 Сейчас в теме
Добрый день.
На форме сеть кнопка, по которой заполняется данные контрагента, там же заполняется контактная информация при помощи следующего кода:
Если ЗначениеЗаполнено(Адрес) Тогда
	СтруктураКИ = Новый Структура;
	СтруктураКИ.Вставить("Представление", Адрес);
	УправлениеКонтактнойИнформацией.ЗаполнитьКонтактнуюИнформациюОбъекта(Объект.Ссылка,
		ПредопределенноеЗначение("Справочник.ВидыКонтактнойИнформации.ЮрАдресКонтрагента"),
		СтруктураКИ);
КонецЕсли;
Показать

После выполнения кода. На форме изменяются, только данные контрагента, но не контактной информации. При нажатии кнопки сохранить, отображается сообщение, что данные были изменены другим пользователем. После следующего открытия контактная информация уже заполнена. Пробовал, после вышеуказанного вызывать Прочитать(), но после этого контактная информация очищалась (при закрытии не было сообщения, что было изменено другим пользователем и после открытия контактная информация была уже пустой).
Собственно вопрос:
Как сделать, чтобы контактная информация заполнялся по нажатию кнопки и сразу же отображалась на форме.
Информации по этой БСП не очень много смог найти.
Версии
Управление торговлей, редакция 11.0.9.5 (Сильно допиленная)
БСП 2.0.1.19
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. laperuz 46 21.03.22 04:18 Сейчас в теме
Потому что вы заполняете не у объекта КИ(т.е. у текущего контекста формы), а у ссылки(т.е. у объекта в БД), надеюсь понимаете отличия.

Сделайте вот так:

Если ЗначениеЗаполнено(Адрес) Тогда
    СтруктураКИ = Новый Структура;
    СтруктураКИ.Вставить("Представление", Адрес);
    УправлениеКонтактнойИнформацией.ЗаполнитьКонтактнуюИнформациюОбъекта(Объект,
        ПредопределенноеЗначение("Справочник.ВидыКонтактнойИнформации.ЮрАдресКонтрагента"),
        СтруктураКИ);
КонецЕсли;
3. user1342811 17 21.03.22 04:45 Сейчас в теме
(2)
Если вызвать с параметром Объект, то ошибка:

{ОбщийМодуль.УправлениеКонтактнойИнформацией.Модуль(1208)}: Метод объекта не обнаружен (Метаданные)
ИмяОбъектаПриемника = Приемник.Метаданные().Имя;
4. laperuz 46 21.03.22 05:00 Сейчас в теме
(3)Да, там предполагается, что объект это СправочникОбъект, поэтому нужно сделать еще получение объекта и обратно в данные формы:

Если ЗначениеЗаполнено(Адрес) Тогда
    ОбъектПартнер = РеквизитФормыВЗначение("Объект");
    СтруктураКИ = Новый Структура;
    СтруктураКИ.Вставить("Представление", Адрес);
    УправлениеКонтактнойИнформацией.ЗаполнитьКонтактнуюИнформациюОбъекта(ОбъектПартнер,
        ПредопределенноеЗначение("Справочник.ВидыКонтактнойИнформации.ЮрАдресКонтрагента"),
        СтруктураКИ);
    ЗначениеВРеквизитФормы(ОбъектПартнер, "Объект");
КонецЕсли;
Показать
5. user1342811 17 21.03.22 05:27 Сейчас в теме
(4)
При таком коде контактная информация не сохраняется. При сохранении нет никаких сообщений.
6. laperuz 46 21.03.22 07:13 Сейчас в теме
(5)Ну тут уже смотрите отладкой. На самой старой из имеющихся у меня УТ11 работает
7. user1342811 17 21.03.22 07:37 Сейчас в теме
(6) Спасибо, за помощь. Буду дальше копать.
8. user1342811 17 21.03.22 23:45 Сейчас в теме
Не нашёл, позже вернусь
Оставьте свое сообщение

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