Slava.Coder.Vrn пишет:Ну вот и сюда тоже красивый клип сделал :)
Проблема ясна. Тут вся загвоздка в том, что для выборки на форме ThisObject существует, а при выборе атрибута выборка создаётся "в воздухе", т.е. ThisObject отсутствует.
Как вариант, можно воспользоватся словарём, который инициализируется при открытии формы.
Инициализация словаря:
Sub Form_BeforeShow(Form, Obj)
Set d = ThisApplication.Dictionary
Set d("CurrentObject") = ThisObject
End Sub
Заполнение параметра выборки:
Sub Query_BeforeExecute(Query, Obj, Cancel)
Set d = ThisApplication.Dictionary
If Not ThisObject Is Nothing Then
Query.Parameter("Obj") = ThisObject
ElseIf Not IsEmpty(d("CurrentObject")) Then
If Not d("CurrentObject") Is Nothing Then
Query.Parameter("Obj") = d("CurrentObject")
Else
MsgBox "Объект не найден!",,vbCritical
Cancel = True
End If
End If
End Sub