Форум Чистова. Подготовка к экзаменам 1С

О форуме => Конфигурирование => Тема начата: Regina_20158 от Ноябрь 04, 2015, 10:55:48 am

Название: Как обновить форму
Отправлено: Regina_20158 от Ноябрь 04, 2015, 10:55:48 am
Добрый день! Подскажи пожалуйста, платформа 8.3 , управляемое приложение, обработка -> форма обработки -> код :
&НаКлиенте
Процедура ОбновитьКарту(Команда)
   ОбновитьКартуНаСервере();
   КонецПроцедуры

&НаСервере
Процедура ОбновитьКартуНаСервере()
Карта = БП.ПолучитьОбъект().ПолучитьКартуМаршрута();
КонецПроцедуры // ОбновитьКартуНаСервере()

При повторном нажатие , на кнопку обновить , карта маршрута не обновляется, необходимо перезакрыть форму, только потом обновляется, как обновить форму ?
 
Название: Re: Как обновить форму
Отправлено: Regina_20158 от Ноябрь 04, 2015, 10:59:11 am
извини, даже наверно не форму, а данные на форме, точнее карту маршрута ?
Название: Re: Как обновить форму
Отправлено: timeforlive от Декабрь 21, 2015, 09:46:36 am
У меня близкая по теме задача. Нужно обновить данные формы после проведения документа. Важно, чтобы обновление данных было автоматически, а не так, что пользователь вынужден закрыть форму и открыть ее снова.

Какие изменения происходят:
- программно заполняется поле "МетодСписания" (исходя из сегодняшнего метода списания). Можно, конечно, ПриОткрытии заполнить его, но появятся другие задачи, когда программно будут заполняться поля после проведения (когда будет вычисляться себестоимость, остатки и т.д.)


Подробнее:
Так как в контекст модуля формы не входит модуль объекта и наоборот, образовалась проблема с обновлением данных.
Мои варианты решения проблемы:

1. Создаем кнопку на форме, добавляем ей процедуру:
&НаСервере
Процедура ОбновитьДанныеНаСервере()

ЭтаФорма.Прочитать();

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

&НаКлиенте
Процедура ОбновитьДанные(Команда)

ОбновитьДанныеНаСервере();

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

2. Получить форму из модуля объекта (но не обновляет):
Объект1 = Ссылка.ПолучитьОбъект();
Объект1.Записать(РежимЗаписиДокумента.Запись);
Форма1 = Объект1.ПолучитьФорму("ФормаДокумента");
Форма1.ЭтаФорма.Прочитать();

3. Не понял как использовать метод ОбновитьИнтерфейс(), но форма не обновляется, хотя в F1 сказано:
Цитировать
Обновляет командный интерфейс, рабочий стол и открытые формы с учетом текущих значений функциональных опций и их параметров
Название: Re: Как обновить форму
Отправлено: MonkeyD от Март 09, 2017, 02:49:44 pm
ОбновитьОтображениеДанных();
Метод выполняется на клиенте