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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.01.2006, 11:47   #1  
Hidden is offline
Hidden
Участник
 
199 / 15 (1) ++
Регистрация: 25.03.2004
Адрес: Moscow
Как правильно сделать проверку условия?
Нужно проверить у номенклатуры начальные буквы от которых зависит к какой группе номенклатуры она относится. Не знаю как сделать конструкцию для проверки нескольких условий(с использованием like), так как я сделал работает правильно, но загромождает код. Вопрос как сделать более корректно?(предполагаю что можно макросами, но не знаю ни одного подобного примера.) Спасибо!

PHP код:
    if (inventJournalTrans.inventTable().ItemId like "ММС*"
        
|| inventJournalTrans.inventTable().ItemId like "МПК*"
        
|| inventJournalTrans.inventTable().ItemId like "МФР*"
        
|| inventJournalTrans.inventTable().ItemId like "ММК*"
        
|| inventJournalTrans.inventTable().ItemId like "МОТ*")

        {

        
//некоторый код
        
}
    } 
Старый 11.01.2006, 12:24   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
1. Можно побрюзжать?
Ваши проблемы связаны с тем, что вы нарушили первую нормальную форму. Ваши значимые идендификаторы нужно было продублировтаь в отдельном вспомогательном поле. Тогда вам не пришлось бы мучаться с Like и можно было бы использовать нормальное равенство. Запросы были бы намного проще...

2. Ответ по теме.
Используйте Global::inRange
X++:
if( inRange("ММС*,МПК*,МФР*,ММК*,МОТ*",inventJournalTrans.inventTable().ItemID) )
{
__________________
полезное на axForum, github, vk, coub.
Старый 11.01.2006, 13:05   #3  
Hidden is offline
Hidden
Участник
 
199 / 15 (1) ++
Регистрация: 25.03.2004
Адрес: Moscow
Цитата:
Сообщение от mazzy
1. Можно побрюзжать?
Ваши проблемы связаны с тем, что вы нарушили первую нормальную форму. Ваши значимые идендификаторы нужно было продублировтаь в отдельном вспомогательном поле. Тогда вам не пришлось бы мучаться с Like и можно было бы использовать нормальное равенство. Запросы были бы намного проще...

2. Ответ по теме.
Используйте Global::inRange
X++:
if( inRange("ММС*,МПК*,МФР*,ММК*,МОТ*",inventJournalTrans.inventTable().ItemID) )
{
Спасибо! Заработало!
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как сделать фильтр по группе пользователей? Zabr DAX: Программирование 12 08.04.2009 11:40
Заумный отчет по ОС, как сделать? Бриллиантик DAX: Программирование 13 09.07.2008 16:36
Как сделать проверку? Hidden DAX: Функционал 5 19.05.2005 15:28
Как лучше сделать? Smith DAX: Программирование 7 12.10.2004 13:57
дизайн отчета (как сделать его с разделителями между столбцами?) puz DAX: Программирование 7 02.09.2003 08:50

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

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

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