17.02.2016, 13:51 | #1 |
Участник
|
[Ax2009] Как сделать .SetTmp() из класса для датасурса формы?
День добрый.
Есть класс который вызывает форму. В классе готовятся данные которые .setTmpData() для датасурсов формы. Пытаюсь сделать так: X++: m_routeFormRun = ClassFactory::formRunClassOnClient( _args ); m_routeFormRun.init(); m_routeFormRun.dataSource( tableStr( Route ) ).cursor().setTmp(); m_routeFormRun.dataSource( tableStr( Route ) ).cursor().setTmpData( this.route() ); m_routeFormRun.dataSource( tableStr( RouteOpr ) ).cursor().setTmp(); m_routeFormRun.dataSource( tableStr( RouteOpr ) ).cursor().setTmpData( this.routeOpr() ); m_routeFormRun.run();
__________________
Бывает, что человек молчит, когда ничего не знает о данном предмете, но чаще – когда знает о нем все. (Джордж Бернард Шоу) |
|
17.02.2016, 14:14 | #2 |
Участник
|
Я когда-то замечал, что некоторые вещи, например, кэширование display-методов, корректно отрабатывают в классе только при условии, что соотв. метод вызывается внутри Form_DS.init() после super(). Казалось бы, формально без разницы, делать ли это внутри или после Form_DS.init(), однако, в последнем случае нужного эффекта достичь не удавалось. Возможно, с setTmp() та же история.
|
|
17.02.2016, 14:32 | #3 |
Гость
|
X++: FormRun m_routeFormRun; TABLE_XXX test; Args args = new args(); test.setTmp(); test.XXX = '123'; test.insert(); args.name(formStr(TABLE_XXX)); m_routeFormRun = ClassFactory::formRunClassOnClient( args ); m_routeFormRun.init(); m_routeFormRun.dataSource(1).cursor().setTmp(); m_routeFormRun.dataSource(1).cursor().setTmpData(test); m_routeFormRun.run(); m_routeFormRun.wait(); Попробуйте так же |
|
17.02.2016, 14:39 | #4 |
Участник
|
Может быть из-за того, что Вы класс выполняете на сервере (соответственно таблица там же "живет", а подпихнуть ее вы пытаетесь на клиенте)?
|
|
|
За это сообщение автора поблагодарили: Silence (1). |
17.02.2016, 14:41 | #5 |
Участник
|
|
|
17.02.2016, 14:52 | #6 |
Участник
|
Цитата:
Спасибо за подсказку. Был уверен, что класс стартует на клиенте, а оказалось не так. Извиняюсь, что ввел в заблуждение.
__________________
Бывает, что человек молчит, когда ничего не знает о данном предмете, но чаще – когда знает о нем все. (Джордж Бернард Шоу) |
|