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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.09.2009, 16:56   #1  
HorrR is offline
HorrR
Участник
 
340 / 30 (2) +++
Регистрация: 18.02.2008
Адрес: Киев
Как же все-таки работает свойство CalledFrom?
Никак не могу понять принцип работы этого свойства.
Логично было бы предположить, что класс будет отрабатывать на клиенте или сервере в зависимости от того, где был создан его инстанс.
Но вот не совсем так. Создаю инстанс класса с CalledFrom в серверном классе, а он все-равно выполняется на клиенте. В общем, по моим наблюдениям CalledFrom классы практически всегда отрабатывают на клиенте.
Практически. Но не всегда. По какому принципу же система определяет, когда CalledFrom классы будут работать на сервере - для меня загадка.

Буду рад, если кто-то прояснит ситуацию.
__________________
Axapta has seduced me deadly!
Старый 28.09.2009, 17:05   #2  
corner77 is offline
corner77
Участник
 
18 / 25 (1) +++
Регистрация: 28.04.2009
Свойство calledFrom говорит о том, что экземпляр (инстанс) класса может создаваться на сервере или на клиенте в зависимости от условий его вызова. То есть, если некий метод, выполняемый на сервере, создает этот класс, то он будет создан на сервере, если на клиенте, то соответственно на клиенте. Если класс CalledFrom вызывается через меню, то он будет на клиенте, так как само меню существует на клиенте.
Старый 28.09.2009, 17:06   #3  
corner77 is offline
corner77
Участник
 
18 / 25 (1) +++
Регистрация: 28.04.2009
Не дописал
Свойство calledFrom = client/server
Старый 28.09.2009, 17:08   #4  
HorrR is offline
HorrR
Участник
 
340 / 30 (2) +++
Регистрация: 18.02.2008
Адрес: Киев
Смотрите выше, пожалуйста) Я уже писал о том, что не всегда это так. Создаю инстанс calledFrom класса из серверного класса, а он все-равно отрабатывает на клиенте.
__________________
Axapta has seduced me deadly!
Старый 28.09.2009, 17:10   #5  
_scorp_ is offline
_scorp_
Участник
Аватар для _scorp_
MCBMSS
 
488 / 369 (13) ++++++
Регистрация: 25.07.2007
Адрес: Москва
Почитайте здесь
Старый 28.09.2009, 17:30   #6  
HorrR is offline
HorrR
Участник
 
340 / 30 (2) +++
Регистрация: 18.02.2008
Адрес: Киев
_scorp_, хотелось бы уточнить. Если я хочу, чтобы система поняла, что CalledFrom - не свойство по умолчанию, а осознанно выбранное мною свойство и чтобы система правильно его обрабатывала, мне нужно добавлять этот комментарий?
__________________
Axapta has seduced me deadly!
Старый 28.09.2009, 18:04   #7  
corner77 is offline
corner77
Участник
 
18 / 25 (1) +++
Регистрация: 28.04.2009
Давайте уточним. Экземпляр класса создается из объектного метода класса, уже созданного на сервере. Вы это знаете точно и отследтили это в дебагере - метод помечен иконкой сервера. При вызове new MyClass() класса, с указанием в свойствах RunOn=CalledFrom вы проваливаетесь в метод new() и он помечен иконкой клиента. Так?
Старый 28.09.2009, 18:05   #8  
_scorp_ is offline
_scorp_
Участник
Аватар для _scorp_
MCBMSS
 
488 / 369 (13) ++++++
Регистрация: 25.07.2007
Адрес: Москва
Цитата:
Сообщение от HorrR Посмотреть сообщение
_scorp_, хотелось бы уточнить. Если я хочу, чтобы система поняла, что CalledFrom - не свойство по умолчанию, а осознанно выбранное мною свойство и чтобы система правильно его обрабатывала, мне нужно добавлять этот комментарий?
Нет, комментарии влияют только на генерацию сообщений best practice. В Вашем случае, скорее всего, где-то происходит переопределение места выполнения. Например, в свойствах класса стоит CalledFrom = Client, а на его статическом методе прописано "server". В итоге метод будет выполняться на сервере.
Теги
calledfrom, клиент-сервер

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как работает список рассылки? fialka DAX: Функционал 2 26.06.2008 09:15
Не работает пакетная обработка dreamer DAX: Программирование 4 19.12.2007 10:43
Не работает документо-оборот в ДАX4-портале Delfins DAX: Программирование 2 12.09.2007 12:40
Как же все таки добраться из Axapta до SQL Кандидат DAX: Программирование 5 02.12.2005 11:50
Резервирование партионного товара с FIFO по сроку хранения: делал ли кто-нибудь? Falcon DAX: Функционал 9 15.02.2003 00:47

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 05:34.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.