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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.08.2015, 11:52   #1  
rkorchagin is offline
rkorchagin
Участник
 
81 / 69 (3) ++++
Регистрация: 26.09.2006
? Возможно ли сделать ф-цию с динамическим числом параметров наподобие strfmt или sysDict.callObject?
Возник теоретический вопрос: возможно ли в аксапте написать ф-цию с динамическим числом параметров наподобие strfmt или sysDict.callObject.

Именно чтоб было как myFunc(str _param1, ....)

Знаю, что можно дать 1 параметр типа массива или контейнера и заполнить чем хочешь, но именно интересно есть ли где в аксапте реализация динамических параметров.
Старый 28.08.2015, 12:10   #2  
axm2013
Гость
 
n/a
Цитата:
Сообщение от rkorchagin Посмотреть сообщение
..
Именно чтоб было как myFunc(str _param1, ....)
...
Как представляю делается подобное путем объявления типа динамического array-я

private static void Average(string title, params int[] values)

(С#)

В X++ такого нет
https://msdn.microsoft.com/en-us/library/cc967423.aspx
"An X++ array cannot be a parameter in a method."
Старый 28.08.2015, 12:21   #3  
rkorchagin is offline
rkorchagin
Участник
 
81 / 69 (3) ++++
Регистрация: 26.09.2006
Цитата:
В X++ такого нет
но как тогда сделан тот же strfmt?
Старый 28.08.2015, 12:24   #4  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5788 (200) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Так strfmt() - в ядре, ему можно...
Старый 28.08.2015, 12:24   #5  
axm2013
Гость
 
n/a
Цитата:
Сообщение от rkorchagin Посмотреть сообщение
но как тогда сделан тот же strfmt?
На уровне ядра и совсем не средствами X++. Имхо.
Старый 28.08.2015, 12:33   #6  
rkorchagin is offline
rkorchagin
Участник
 
81 / 69 (3) ++++
Регистрация: 26.09.2006
ради интереса попытался сделать оверрайд callObject - в SysDictClass - в результате аксапта генерит код который некомпилируется

X++:
public anytype callObject(str _methodName, Object _Called, ...)
{
    anytype ret;

    ret = super(_methodName, _Called, _p3);

    return ret;
}

Так, что скорее всего - действительно нельзя...
Старый 28.08.2015, 12:36   #7  
axm2013
Гость
 
n/a
Подождите 7-ку: мало ли
Старый 28.08.2015, 12:54   #8  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,429 / 1772 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Передача переменного числа параметров в метод
За это сообщение автора поблагодарили: mazzy (2), gl00mie (1), rkorchagin (1).
Теги
динамически, параметры, функции

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Не могу сформировать строку strFmt CasperSKY DAX: Программирование 9 17.04.2008 10:52

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

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

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