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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.07.2005, 16:40   #1  
itfs is offline
itfs
Участник
 
277 / 43 (2) +++
Регистрация: 18.07.2005
Адрес: Moscow
display метод из кода.
Здравствуйте.

Помогите, пожалуйста, туплю 3-й день.
Нужно в методе класса получить со строки таблицы строку, возвращаемую ee дисплейным методом. Формы и контролы при этом, не беспокоя.

т.е. что-то типа

str getDisplayValue(common _comRec, str _MethodName)
{
Return _comRec(.RunDisplayMethodbyByName(_MethodName));
}

.. извиняюсь за выражение, просто хотелось быть максимально понятным.

С уважением, itfs
Старый 18.07.2005, 16:46   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
а зачем так сложно?
почему через common?
почему не через map?
__________________
полезное на axForum, github, vk, coub.
Старый 18.07.2005, 16:55   #3  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,288 / 3494 (123) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Из серии извратов..
\System Documentation\Classes\DictTable\callObject. В качестве аргумента нужно передать название метода, объект DictTable (new DictTable(YourTable.TableId)), а также аргументы. В аргумент можно запихнуть курсор (чтобы определить текущую запись)
Минус - именно до дисплейных методов так не достучаться, ибо у них курсор в параметрах (если курсор не нужен, тогда все ок)
Плюс - это то, что требовалось, а в дисплейном методе можно вызвать недисплейный метод

Вопрос лишь стоит ли игра свеч?
Данный механизм удобен когда пишется свое некое подобие обработчика событий (в частности на классах)
Старый 18.07.2005, 17:00   #4  
itfs is offline
itfs
Участник
 
277 / 43 (2) +++
Регистрация: 18.07.2005
Адрес: Moscow
Цитата:
Изначально опубликовано mazzy
а зачем так сложно?
почему через common?
почему не через map?
Чтобы через map, map должен существовать .... если я правильно понимаю.
(как впрочем и дисплейным метод), но ... кол-во разработчиков решающих свои
проблемы через map на порядок меньше, чем тех, кто подтаскивает дисплейные методы ... я не прав?
в данном случае я пытаюсь подсесть на хвост всем, кто пишет дисплейные методы,
выдергивая их для "визуализации" объектов.

С уважением, itfs
Старый 18.07.2005, 17:12   #5  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано itfs
Чтобы через map, map должен существовать .... если я правильно понимаю. (как впрочем и дисплейным метод)
Именно!
А мап как раз дает контроль типов на этапе компиляции, а не в рантайме.

Цитата:
Изначально опубликовано itfs
, но ... кол-во разработчиков решающих свои
проблемы через map на порядок меньше, чем тех, кто подтаскивает дисплейные методы ... я не прав?
Да, к сожалению.
Вот и получают пользователи странные ошибки при выполнении...
А апргейд превращается в пытку...

Цитата:
Изначально опубликовано itfs
в данном случае я пытаюсь подсесть на хвост всем, кто пишет дисплейные методы, выдергивая их для "визуализации" объектов.
Куда вы подсаживаетесь? На что?
Вы же должны знать имя вызываемого метода.
Причем такого метода, который возвращает строку неограниченной длины. Где вы нашли такие методы?

Зачем вам решение, которое кажется вам суперуниверсальным, но в котором напрочь отсутствует контроль типов и в котором не работают перекрестные ссылки?

Хочется рвать и метать, честное слово!

Возьмите мап. По человечески определите в АОТ связи. Укажите нормальный тип. Укажите в мапе столько разных дисплей-методов, сколько различных по смыслу действий у вас есть. Дайте методам нормальные имена. И вызывайте каждый одной строкой.

Вам же самим будет хорошо впоследствии. И те, кто будет делать апгрейд вам спасибо скажут...
__________________
полезное на axForum, github, vk, coub.
Старый 18.07.2005, 17:14   #6  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
про строки неограниченной длины - FAQ http://forum.mazzy.ru/index.php?showtopic=173
__________________
полезное на axForum, github, vk, coub.
Старый 18.07.2005, 17:18   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Re: Из серии извратов..
Цитата:
Изначально опубликовано sukhanchik
Вопрос лишь стоит ли игра свеч?
Данный механизм удобен когда пишется свое некое подобие обработчика событий (в частности на классах)
Еще, блн, один.
"В частности на классах" используйте нормальные человеческие интерфейсы.

Ребяты, ну зачем вы контроль типов переносите в рантайм?
Ведь потом же сами на этот чудо-код наступать будете.
Максимально старайтесь обеспечить проверки на этапе компиляции!

Динамический код - вреден в большинстве случаев.
Статический код - форева!
__________________
полезное на axForum, github, vk, coub.
Старый 18.07.2005, 17:31   #8  
itfs is offline
itfs
Участник
 
277 / 43 (2) +++
Регистрация: 18.07.2005
Адрес: Moscow
Цитата:
Изначально опубликовано mazzy

Вы же должны знать имя вызываемого метода.
Причем такого метода, который возвращает строку неограниченной длины. Где вы нашли такие методы?

Зачем вам решение, которое кажется вам суперуниверсальным, но в котором напрочь отсутствует контроль типов и в котором не работают перекрестные ссылки?

Ну я же сразу извинился ... в том числе и за str ... (str не пройдет! ) хотя контроль, естественно, получится абстрактный, но "для нужд визуализации (only)" греха в том страшного не вижу ... уж простите дурака. У меня простенькая но сквозная задача, которая должна сработать в 90% случаев, так что, что имеем, то имеем ....
Старый 18.07.2005, 17:37   #9  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
извините.
делайте мап. и не мучайтесь.
__________________
полезное на axForum, github, vk, coub.
Старый 18.07.2005, 19:32   #10  
itfs is offline
itfs
Участник
 
277 / 43 (2) +++
Регистрация: 18.07.2005
Адрес: Moscow
Большое спасибо. То что надо и для дисплейных методов все - ОК.

Результат приводить не буду из глубокого уважения в мнению Muzzy.

С уважением, itfs.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Grid и display-метод Russland DAX: Программирование 20 09.04.2007 09:25
display-метод Pavel Pustovalov DAX: Программирование 9 21.03.2006 10:03
Можно ли в display методе узнать для какого FormControl'а этот метод вызван? Dudnik Anton DAX: Программирование 3 01.02.2006 12:22
display метод с параметром Андре DAX: Программирование 5 11.01.2006 19:04
display метод на форме Shirmin Oleg DAX: Программирование 11 13.07.2004 16:58

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

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

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