Имя: Пароль:
1C
 
Обновить форму
0 Антанас
 
21.11.08
11:03
Открыта форма Документа1 и форма Документа2, при изменении в Документе2 программно изменяется значение в Документ1 (в справочнике списке Документа1 изменения отразились), на форме Документа1 - нет.
После попытки записать документ1 выдает ошибку о том, что запись была удалена или изменена, после "Перечитать данные объекта" значение показывается на форме и записывается документ.

Подскажите, как обновить форму Документа1 программно?

ЭтотОбъект.ПолучитьФорму("ФормаДокумента").Обновить(); Вот так не получается
1 ТелепатБот
 
гуру
21.11.08
11:03
2 Serg_1960
 
21.11.08
11:10
(0) Мьсье знает толк в извращениях :)

Глобальный контекст
Оповестить (Notify)
Синтаксис:
Оповестить(<Имя события>, <Параметр>, <Источник>)
Параметры:
<Имя события> (необязательный)
Тип: Строка. Имя события. Может быть использовано для идентификации сообщений принимающими их формами.
<Параметр> (необязательный)
Тип: Произвольный. Параметр сообщения. Могут быть переданы любые необходимые данные.
<Источник> (необязательный)
Тип: Произвольный. Источник события. Например, в качестве источника может быть указана другая форма.
Описание:
Посылает оповещение всем созданным формам и всем подключенным через метод ПодключитьОбработчикОповещения процедурам модуля приложения или общего модуля. Если для формы задана процедура-обработчик события ОбработкаОповещения, то она будет запущена, в процедуру будут переданы указанные параметры.
Данный механизм может, например, применяться для организации обмена сообщениями между открытыми формами.
Недоступен на сервере 1С:Предприятие. Не используется в модуле внешнего соединения.
3 Антанас
 
21.11.08
11:13
(2) Благодарю=)
4 Serg_1960
 
21.11.08
11:21
Пример-шутка алгоритма:

// в форме документа2:
Оповестить("ОбновиСвоюФормуПридурок!");

// в форме документа1
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
  Если (ИмяСобытия = "ОбновиСвоюФормуПридурок!" Тогда
     Обновить();
  КонецЕсли;
КонецПроцедуры