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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.08.2012, 14:40   #1  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
Узнать, где находится объект (сервер или клиент)?
Каким образом это сделать для любого объекта, если метод Object.objectOnServer() ругается:

Цитата:
Объект не имеет метода objectOnServer
Старый 01.08.2012, 14:52   #2  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Для того, что бы пользоваться этим методом, класс должен наследовать от Object (через цепочку наследования)

Либо пользоваться методом
X++:
xGlobal::objectOnServer(anytype object)
__________________
Axapta v.3.0 sp5 kr2
За это сообщение автора поблагодарили: Eldar9x (5).
Старый 01.08.2012, 14:56   #3  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от AndyD Посмотреть сообщение
Для того, что бы пользоваться этим методом, класс должен наследовать от Object (через цепочку наследования)
А что разве не все классы в аксапте являются наследниками Object? Как объявить класс не являющийся потомком Object?
Старый 01.08.2012, 14:57   #4  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
А что разве не все классы в аксапте являются наследниками Object? Как объявить класс не являющийся потомком Object?
Не наследовать от Object

Object совместим со всеми классами, но не все классы являются его потомками
__________________
Axapta v.3.0 sp5 kr2
За это сообщение автора поблагодарили: lev (2), S.Kuskov (1).
Старый 01.08.2012, 15:11   #5  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
Цитата:
Сообщение от AndyD Посмотреть сообщение
...
X++:
xGlobal::objectOnServer(anytype object)
Спасибо огромное!
Старый 09.01.2020, 17:40   #6  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,953 / 3230 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от AndyD Посмотреть сообщение
Либо пользоваться методом
X++:
xGlobal::objectOnServer(anytype object)
В CIL почему-то падает.

А Object.ObjectOnServer работает нормально.
Старый 09.01.2020, 22:13   #7  
Omeo is offline
Omeo
Участник
 
129 / 50 (2) ++++
Регистрация: 18.03.2004
Адрес: Moscow
Цитата:
Сообщение от AndyD Посмотреть сообщение
Не наследовать от Object

Object совместим со всеми классами, но не все классы являются его потомками
Что такое "совместим" с классами ?
Старый 10.01.2020, 09:35   #8  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,953 / 3230 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от Omeo Посмотреть сообщение
Что такое "совместим" с классами ?
Вероятно, имелось в виду, что переменной с типом Object можно присвоить экземпляр любого класса (для определенности MyClass), не обязательно являющегося наследником Object и все будет работать как обычно.

Но конечно если вызвать методы класса Object которые не реализованы в MyClass то будет ошибка времени выполнения. Например если MyClass объявлен как
X++:
class MyClass // extends Object
{
}
то будет ошибка времени выполнения в таком примере, хотя код успешно скомпилируется:

X++:
MyClass   my = New MyClass();
Object  ob = my;
;

ob.objectOnServer(); // вызовет ошибку времени выполнения
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Не запускается клиент AX 2009 propeller DAX: Администрирование 23 31.05.2013 11:57
Как программно узнать текущий объект и метод в котором выполняется код? McCoy DAX: Программирование 15 25.02.2011 23:34
axforum blogs: Подружить Аксапту и клиент-банк Blog bot DAX Blogs 0 14.01.2011 09:11
Как узнать в каких проектах содержится объект репозитария? MironovI DAX: База знаний и проекты 4 09.11.2005 19:41
Как определить где исполняется код - сервер или клиент ? Logger DAX: Программирование 4 26.10.2004 13:29

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

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

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