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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.11.2005, 16:01   #1  
Кандидат is offline
Кандидат
начальный
 
69 / 6 (1) +
Регистрация: 19.09.2005
Адрес: Москва
Усложнение задачи.Как в case проверить условие вхоэждения?
switch (true)
{
case (Diff)>=0 && <=365 ://тогда это
info("Годовалый клиент");
break;

case (Diff))>=0 && <=182 :
info("ПолуГодовалый клиент");
break;
}
Так не работает. А как установить интервал для значения?
Подскажите, кто знает.
Старый 01.11.2005, 16:13   #2  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Измените на Diff>=0 && Diff<=365

Правда в таком виде никогда не попадет во второй case, т.к. он является подмножеством первого
__________________
Axapta v.3.0 sp5 kr2
Старый 01.11.2005, 16:15   #3  
Zan is offline
Zan
Участник
 
104 / 25 (1) +++
Регистрация: 22.07.2004
Адрес: I live in Moscow
Немного не так сравниваете.

PHP код:
static void Job66(Args _args)
{
    
int i 3,
        
6,
        
4;
;
    switch(
true)
    {
        case 
&& 
            
info('1');
        break;
        default :
            
info('2');
    }
 

Старый 01.11.2005, 16:16   #4  
Zan is offline
Zan
Участник
 
104 / 25 (1) +++
Регистрация: 22.07.2004
Адрес: I live in Moscow
to AndyD

Вот так всегда
Старый 01.11.2005, 16:26   #5  
Кандидат is offline
Кандидат
начальный
 
69 / 6 (1) +
Регистрация: 19.09.2005
Адрес: Москва
Спасибо за помощь!!!
Заработало.
Старый 03.11.2005, 15:13   #6  
Andrew K. is offline
Andrew K.
Участник
 
29 / 12 (1) ++
Регистрация: 02.12.2004
Адрес: Minsk
А как же високосный год? Для такой задачи можно приспособить стандарт..
TransDate dt1 = mkDate(1,1,2004);
TransDate dt2 = mkDate(31,12,2004);
;
info (strfmt("Difference %1, Difference year %2", dt2 - dt1, yearDiff(dt2, dt1)));
dt2 = mkDate(1,1,2005);
info (strfmt("Difference %1, Difference year %2", dt2 - dt1, yearDiff(dt2, dt1)));
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
AX UK: Additional Customer Case studies for AX 2009 Blog bot DAX Blogs 1 01.04.2009 07:41
поля, содержащие RecId somebody DAX: Программирование 15 16.05.2008 17:50
AX UK: Newly Published Case studies Blog bot DAX Blogs 0 27.01.2007 01:04

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

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

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