![]() |
#1 |
Гость
|
Обращение к datasourсe
Кто-нибудь подскажет, как можно из класса обратиться к датасоурсу формы, если MyForm_ds. не срабатывает?
|
|
![]() |
#2 |
Moderator
|
Это смотря как у вас взаимосвязаны класс и форма. Как класс ссылается на форму? Если через переменную типа FormRun, можно через formRun.datasource(tableStr(<имя_таблицы>)).
__________________
Андрей. |
|
![]() |
#3 |
Гость
|
вообще-то ситуация у меня примерно такая, как описана в этом посте
http://www.axforum.info/forums/showt...EB%E5%ED%E8%E5 т.е. есть форма, есть класс обработчик в котором запись вставляется в таблицу, а на форме она отображается только при повторном открытии. мне нужно обратиться к datasource формы , чтобы выполнить executeQuery(), а вот так не получается MyForm_ds... |
|
![]() |
#4 |
Moderator
|
Обращение ИмяТаблицы_DS работает только в контексте самой формы. В классе же нужно иметь какую-либо ссылку для связи с формой или DS, создаваемую при запуске класса: если есть args.record(), то обращаться через args.record().datasource(); если args.caller() - то через него, как я писал в предыдущем посте (formRun = args.caller(); и т.д.).
Если ясности все еще нет, почитайте про класс Args в System Documentation. Или вообще передавайте этот несчастный datasource в класс в качестве параметра, чтобы не мучиться ![]()
__________________
Андрей. |
|
![]() |
#5 |
Administrator
|
Цитата:
Изначально опубликовано Dron AKA andy можно через formRun.datasource(tableStr(<имя_таблицы>)).
![]() С другой стороны, если враг переименует DataSource в исходной форме, метод перестанет работать ![]()
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
![]() |
#6 |
Moderator
|
Это да
![]() Но ведь враг - он такой, может много чего такого наделать, что вылезет только в run-time ![]()
__________________
Андрей. |
|