(изменено: Slava.Coder.Vrn, 12 сентября 2007г. 09:31:02)

Тема: Как обновить родительскую форму ввода?

Условия: На форме объекта Obj1 есть выборка из объектов Obj2. В форме объекта Obj2 есть кнопка команды Cmd2, которая изменяет некоторые атрибуты родительского объекта Obj1. В конце команды выполняется инструкция

ThisObject.Parent.Update

Однако, если открыть объект Obj2 из выборки на форме объекта Obj1 и выполнить команду Cmd2, то после закрытия формы объекта Obj2 можно видеть, что значения атрибутов объекта Obj1 на форме не изменились, при том что сам объект Obj1 в базе уже изменен (вызов Update).
Вопрос: Как обновить значения атрибутов на открытой форме родительского объекта из команды?

(изменено: Anatoly, 12 сентября 2007г. 12:41:54)

Re: Как обновить родительскую форму ввода?

Слава, ну и задачку ты придумал....
Основная проблема в том, что надо вызвать refresh НУЖНОЙ формы ввода.

Как это делается:
На форму ввода первого объекта вешаем скрипт:

Sub Form_BeforeShow(Form, Obj)
    Obj.Permissions = SysAdminPermissions
    Set x = ThisApplication.Dictionary
    Set x("ThisForm") = Form
End Sub

На кнопку формы ввода второго объекта (там, где меняем значение) вешаем скрипт:

Set x = ThisApplication.Dictionary
Set Form = x("ThisForm")
Obj.Permissions = SysAdminPermissions
Form.Attributes("ATTR1") = "Значение :)"

Re: Как обновить родительскую форму ввода?

Спасибо. Не сообразил сам насчет всемогущего словаря  :)