Автор Тема: Как обновить форму  (Прочитано 21649 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Regina_20158

  • Пользователь
  • **
  • Сообщений: 12
  • ФИО: Регина Счастливая
Как обновить форму
« : Ноябрь 04, 2015, 10:55:48 am »
Добрый день! Подскажи пожалуйста, платформа 8.3 , управляемое приложение, обработка -> форма обработки -> код :
&НаКлиенте
Процедура ОбновитьКарту(Команда)
   ОбновитьКартуНаСервере();
   КонецПроцедуры

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

При повторном нажатие , на кнопку обновить , карта маршрута не обновляется, необходимо перезакрыть форму, только потом обновляется, как обновить форму ?
 

Regina_20158

  • Пользователь
  • **
  • Сообщений: 12
  • ФИО: Регина Счастливая
Re: Как обновить форму
« Ответ #1 : Ноябрь 04, 2015, 10:59:11 am »
извини, даже наверно не форму, а данные на форме, точнее карту маршрута ?


timeforlive

  • Новичок
  • *
  • Сообщений: 5
Re: Как обновить форму
« Ответ #2 : Декабрь 21, 2015, 09:46:36 am »
У меня близкая по теме задача. Нужно обновить данные формы после проведения документа. Важно, чтобы обновление данных было автоматически, а не так, что пользователь вынужден закрыть форму и открыть ее снова.

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


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

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

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

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

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

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

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

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

3. Не понял как использовать метод ОбновитьИнтерфейс(), но форма не обновляется, хотя в F1 сказано:
Цитировать
Обновляет командный интерфейс, рабочий стол и открытые формы с учетом текущих значений функциональных опций и их параметров

MonkeyD

  • Новичок
  • *
  • Сообщений: 3
  • ФИО: Савонов Денис
Re: Как обновить форму
« Ответ #3 : Март 09, 2017, 02:49:44 pm »
ОбновитьОтображениеДанных();
Метод выполняется на клиенте