AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.11.2004, 08:32   #1  
Paul_ST is offline
Paul_ST
Участник
 
144 / 11 (1) +
Регистрация: 26.11.2003
Адрес: Екатеринбург
RunOn у классов
Добрый день!

Итересует такая ситуация: первый класс выполняется на сервере (RunOn = server) и внутри себя вызывает второй класс, который выполняется на клиенте (RunOn = client).
Где в итоге будет выполняться второй класс?

Спасибо!
__________________
Paul_ST
Старый 22.11.2004, 09:30   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
new произойдет на сервере.
затем будет вызван метод pack.
упакованные параметры будут переданы на клиента.
где будет вызван свой new и unpack.
выполнение второго класса будет происходить на клиенте.
затем при помощи pack/unpack результаты будут переданы обратно на сервер.

см. best practice, паттерн pack/unpack
Старый 22.11.2004, 09:56   #3  
Paul_ST is offline
Paul_ST
Участник
 
144 / 11 (1) +
Регистрация: 26.11.2003
Адрес: Екатеринбург
Спасибо за ответ!

Т.е. RunOn не равный "Called from" - жёстко определяет место выполнения класса и не может нарушаться?
__________________
Paul_ST
Старый 22.11.2004, 12:25   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
определяет жестко.
а вот насчет нарушаться...

может. но точный условий - не знаю.
например, если job вручную через F5, то он всегда будет выполняться на клиенте что бы ни было написано в модификаторе.
для того, чтобы job запустить на сервере, его надо запускать через menuitem.

наверное для классов тоже какая-нибудь подобная фигня есть.
но это эксперементировать надо.
Старый 22.11.2004, 12:52   #5  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Не встречал, чтобы свойство RunOn у классов не учитывалось ядром.

С Job'ами ситуация ясная. Они всегда выполняются Called From, независимо от модификаторов. Поэтому, если вызвать их из интерефейса, они будут запускаться на клиенте. MenuItem позволяет регулировать, откуда будет вызываться Job.

И еще одно (про паттерн pack/unpack): Методы pack и unpack никогда не будут вызваться ядром автоматически. Их можно использовать для того, чтобы перебросить объект с клиента на сервер или наоборот, но для этого из надо вызывать явно. Также их можно использовать в составе более общего паттерна - работа с SysLastValue.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 22.11.2004, 13:20   #6  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Спасибо. Значит, я ошибался.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Поведение equal() метода в классе RunOn Server v3.0 SP4 Russland DAX: Программирование 7 15.11.2007 16:12
DAX виснет при импорте классов Tony Green DAX: Программирование 4 17.07.2007 16:34
Изменение RunOn у сабклассов Logger DAX: Программирование 11 19.08.2005 12:33
Как быстро освоить библиотеку классов Аксапты? spartan DAX: Программирование 9 11.05.2005 12:07
RunOn=Server Проблема listener DAX: Программирование 7 06.10.2003 13:30
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 00:57.