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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.09.2013, 20:02   #7  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,715 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Как мне кажется, единственное решение именно через typeOf(). Возможно, в комбинации с prmIsDefault(). Причем, значение typeOf(null) = 44, несмотря на то, что Types имеет значения от 0 до 17.

X++:
static client void Job_test(Args _args)
{
    void test(anytype _var = null)
    {
        if (prmIsDefault(_var))
            info('default parameters');
        else
            info('not default parameters');
            
        if (_var)
            info('exist value');
        else
            info('not exists value');

        if (typeOf(_var))
            info(strFmt('exist type \"%1\" typesNum = %2', typeOf(_var), int2str(typeOf(_var))));
        else
            info('not exists type');

    }
    ;

    warning('without parameters');
    test();
    info('');
    
    warning('set null');
    test(null);
    info('');
    
    warning('set empty string');
    test('');
    info('');
    
    warning('set value');
    test(1);
    info('');

    return;
}
PS: Хотя, скорее всего, анализ значения NULL и не нужен. Обычно подобные задачи возникают когда нет достаточно ясного понимания того, что же именно надо сделать. Как правило, в процессе реализации выясняется, что все это не очень-то и нужно...
__________________
- Может, я как-то неправильно живу?!
- Отчего же? Правильно. Только зря...
За это сообщение автора поблагодарили: PMS (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
sashanazarov: Value cannot be null. Parameter name: x Blog bot DAX Blogs 0 30.11.2012 16:11
Real Data Type - No of decimals Yprit DAX: Программирование 10 30.03.2009 12:17
C# and AX Development: Using the COM Business Connector in C#, the easy way (AX/Axapta) Blog bot DAX Blogs 0 15.12.2007 20:35
Ошибка SQL в модуле "Расчеты с персоналом" Карбофос DAX: Функционал 5 02.08.2002 12:44
Ошибка SQL в модуле "Расчеты с персоналом" Карбофос DAX: Программирование 0 31.07.2002 17:20

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

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

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