Показать сообщение отдельно
Старый 29.12.2014, 15:56   #3  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,720 / 1207 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Это организация взаимных ссылок между формой и классом, который ее обслуживает. Просто разработчики исходили из предположения, что класс, из которого вызвана форма не обязательно будет тем классом, который используется при работе формы. Хотя, по-умолчанию, метод RunBase вернет ссылку на класс caller(). В данном случае на класс tutorial_RunbaseForm.

Это можно сравнить с методом RunBaseReport.queryRun(). Тот запрос, который используется в диалоге вовсе не обязательно будет тем же запросом, который используется при исполнении в отчете. Это можно организовать, если подсунуть в этот метод свою переменную.

На практике, метод runBase() используется в цепочке диалогов, когда из основной формы диалога вызываются вспомогательные диалоги настройки запросов и надо по ссылкам добраться до "корневого" класса цепочки. Конкретно RunBase нужен для того, чтобы быть уверенным, что будут существовать некие методы, созданные в классе RunBase.
__________________
- Может, я как-то неправильно живу?!
- Отчего же? Правильно. Только зря...
За это сообщение автора поблагодарили: Logger (3), S.Kuskov (5), MaxHammer (1).