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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.08.2005, 16:27   #1  
axaLearner is offline
axaLearner
Участник
 
88 / 17 (1) ++
Регистрация: 24.06.2004
Адрес: God knows
? "Программный" вызов метода класса!?
Проблема такова: я хочу вызвать метод класса, но название этого метода я узнаЮ только на этапе выполнения. Как мне добиться желаемого? Через dictClass, насколько я понял не получится, потому что мне нужно запустить метод именно с уже работающего, инстанцированного класса.
Старый 15.08.2005, 16:38   #2  
Gad is offline
Gad
Участник
 
136 / 18 (1) ++
Регистрация: 21.05.2003
Адрес: Москва
Тут я так понимаю, в зависимости от результатов одного блока логики надо вызвать другой блок. Так кто же мешает просто написать if или если вариантов много, то switch и в нем в зависимости от какого-либо параметра вызвать тот или иной метод?
Старый 15.08.2005, 16:55   #3  
Ruff is offline
Ruff
Дмитрий Ерин
Аватар для Ruff
1C
 
475 / 388 (13) ++++++
Регистрация: 18.09.2003
Адрес: Тула
А откуда этот метод должен вызываться? Из экземпляра того же класса, то есть
this.хренЗнаетКакойМетод();
или извне?
Старый 15.08.2005, 17:03   #4  
axaLearner is offline
axaLearner
Участник
 
88 / 17 (1) ++
Регистрация: 24.06.2004
Адрес: God knows
2 Ruff
Вообще в моем случае должен вызываться из экземпляра того же класса, т.е. через this. А какая разница?
2 Gad
if\switch здесь не подходят - из-за бесконечного множества вариантов.
Старый 15.08.2005, 17:05   #5  
mazzy is offline
mazzy
Administrator
Аватар для mazzy
Most Valuable Professional
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
28,848 / 3764 (183) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Бесконечное множество методов?!!!
Вы уверены, что хорошо понимаете задачу, которую решаете?
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 15.08.2005, 17:08   #6  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,228 / 2421 (89) +++++++++
Регистрация: 16.01.2004
Адрес: Москва
Может помочь функция RunBuf.

в DictClass.callObject явно передается объект
так что


PHP код:
Object o=...;
DictClass theClass=new DictClass(classIdGet(o));
;
theClass.callObject("myMethod"o"theParameter"); 
сможет помочь
__________________
https://axcoder.github.io
Старый 15.08.2005, 17:19   #7  
axaLearner is offline
axaLearner
Участник
 
88 / 17 (1) ++
Регистрация: 24.06.2004
Адрес: God knows
2 mazzy думаю да
Задача: написать метод getDynaHieght() для определения высоты сроки отчета.
На входе будут подаваться названия reportStringControl, относительно которых нужно определять высоту, например ItemName и VendorName. Далее getDynaHieght() должен запустить dispay методы, соответстующие reportStringControls (названия методов и полей одинаковы), получить значения и выяснить влазят ли они в текущую высоту и, если нет, поправь высоту строки. Т.е. в getDynaHieght() мы получаем строковые название методов, которые надо выполнить.
Старый 15.08.2005, 17:28   #8  
axaLearner is offline
axaLearner
Участник
 
88 / 17 (1) ++
Регистрация: 24.06.2004
Адрес: God knows
Thumbs up
2 belugin
Спасибо, именно то, что я искал!
Старый 15.08.2005, 17:39   #9  
mazzy is offline
mazzy
Administrator
Аватар для mazzy
Most Valuable Professional
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
28,848 / 3764 (183) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
вы пытаетесь использовать совсем не те инструменты для решения пустой задачи.
впрочем, как вам угодно

см. также
http://www.axforum.info/forums/showt...&threadid=7818
http://www.axforum.info/forums/showt...&threadid=8608
http://www.axforum.info/forums/showt...&threadid=3533
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 15.08.2005, 18:13   #10  
axaLearner is offline
axaLearner
Участник
 
88 / 17 (1) ++
Регистрация: 24.06.2004
Адрес: God knows
2 mazzy
Достаточно давно сталкиваюсь с этой проблемой - не могли бы вы подсказать как грамотно решить эту задачу?
Я смотрел ссылки, которые вы дали выше - но решения не нашел - получается свойствами отчета можно создать динамику, но только без сетки. У меня отчет с сеткой. Что делать?
Старый 15.08.2005, 18:20   #11  
mazzy is offline
mazzy
Administrator
Аватар для mazzy
Most Valuable Professional
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
28,848 / 3764 (183) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Цитата:
Изначально опубликовано axaLearner
Что делать?
Изменить условия задачи, если это возможно.
Если сетка нужна только для облегчения восприятия, то воспользуйтесь отчетом tutorial_ColourLines
__________________
GitHub, Facebook, mazzy.priot, mazzy.music, coub.
Старый 15.08.2005, 18:26   #12  
axaLearner is offline
axaLearner
Участник
 
88 / 17 (1) ++
Регистрация: 24.06.2004
Адрес: God knows
Спасибо, попробую.
Старый 15.08.2005, 19:15   #13  
eugene egorov is offline
eugene egorov
Участник
Аватар для eugene egorov
 
269 / 91 (4) ++++
Регистрация: 05.06.2002
Адрес: Москва
Я обычно пользуюсь для решения этой задачи кодом, подсмотренным тут :

\Reports\CustVendFacture_RU\Designs\Facture\Generated Design\Section Group: FactureJour_RU\Body:JourBody\Section Group: FactureTrans_RU\Body:TransBody\Methods\prepareDynamicSection
__________________
любитель портвейна и снов с прокисшей капустой в усах
Старый 16.08.2005, 08:12   #14  
Ruff is offline
Ruff
Дмитрий Ерин
Аватар для Ruff
1C
 
475 / 388 (13) ++++++
Регистрация: 18.09.2003
Адрес: Тула
Цитата:
Изначально опубликовано axaLearner
2 Ruff
Вообще в моем случае должен вызываться из экземпляра того же класса, т.е. через this. А какая разница?
Да уже никакой Это я стормозил. Хотел предложить вариант, описанный выше belugin-ым, но почему-то меня переклинило, что с this эта фича не пройдет.
Старею... Спасибо, belugin !
Теги
высота строк отчета, программно

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Вызов метода базового класса Eldar9x DAX: Программирование 15 22.03.2008 19:10
Вызов класса из другого класса Protey DAX: Программирование 9 26.02.2007 11:01
Вызов метода класса из HTML Chezer DAX: Программирование 2 26.12.2006 15:34
добраться из ClassFactory "обратно" до класса somebody DAX: Программирование 18 11.08.2005 18:07
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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