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

Результаты опроса: Как лучше оформлять несколько условий в select where?
Я предпочитаю указывать операторы до условия 27 60.00%
Я предпочитаю указывать операторы после условия 15 33.33%
Нет предпочтений: иногда делаю так, иногда иначе 3 6.67%
Не знаю/Мне все равно 0 0%
Голосовавшие: 45. Вы ещё не голосовали в этом опросе

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.06.2011, 14:13   #1  
kaw is offline
kaw
Участник
 
122 / 35 (2) +++
Регистрация: 23.03.2004
Адрес: Новосибирск
Цитата:
Сообщение от Zabr Посмотреть сообщение
Wamr меня опередил. В точности так. С той поправкой, что "текущее ощущение прекрасного" как правило заставляет выровнять знаки равенства:
X++:
&& RContractTable.RContractAccount == bankClientPayment_RU.RContractAccount
&& RContractTable.RContractCode    == bankClientPayment_RU.RContractCode
Возможно, кому такое выравнивание кажется плохой привычкой.
А как "текущее ощущение прекрасного" сочетается со знаком "!" ?

X++:
&& ! RContractTable.RContractAccount
или

X++:
&&  RContractTable.RContractAccount == ''
Старый 24.06.2011, 16:45   #2  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
mazzy, а можно синхронизировать понятия "вариант 1" и "вариант 2" из стартового сообщения с понятиями "до условия" и "после условия" ? например, явно прописать "вар 1" и "вар 2" в пунктах голосования, а то сейчас мне кажется, что они перекрестились (наверное, торможу к вечеру и к концу недели).

Мой выбор будет:
where (...)
&& (...)
&& (...)
это значит в какой пункт надо ткнуть?

Спасибо.
Старый 24.06.2011, 16:52   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
дописал.

Цитата:
Сообщение от Gustav Посмотреть сообщение
это значит в какой пункт надо ткнуть?
вариант 2.
__________________
полезное на axForum, github, vk, coub.
Старый 24.06.2011, 17:04   #4  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Цитата:
Сообщение от Gustav Посмотреть сообщение
Мой выбор будет:
where (...)
&& (...)
&& (...)
Одно время даже страдал таким выпендражем, как вставка в строку c where фиктивного условия типа where 1==1 или where true. В этом случае все реальные условия ниже единообразно начинались с && - было удобно комментировать условия в процессе отладки.
Старый 24.06.2011, 17:23   #5  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,719 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Цитата:
Сообщение от Gustav Посмотреть сообщение
это значит в какой пункт надо ткнуть?
Вот и я тоже не понял, пока mazzy только что не разъяснил. Почему написано "после", когда оно "до"? Ну, в смысле, в одной строке "до". Хотя, если "после" - это после первого условия, то как тогда понимать "до"? Ведь до первого условия поставить ничего нельзя. Совсем запутался.

У меня почему-то сильное подозрение, что большинство проголосовало не так, как они работают на самом деле по причине непонятности текста пунктов голосования. Я проголосовал только что, после четкого разъяснения чему же соответствуют пункты.
Старый 24.06.2011, 19:57   #6  
Link is offline
Link
Британский учённый
Аватар для Link
Соотечественники
 
568 / 523 (19) +++++++
Регистрация: 25.11.2005
Адрес: UK
Записей в блоге: 9
Последние несколько лет пишу так, кажется более удобным для чтения.
Заметил, что некоторые участники форума придерживается такой же структуры.

X++:
        if (    (   prodLabelType   == KAB_ProdLabelType::FinalLabel
                ||  prodLabelType   == KAB_ProdLabelType::ControlledLabel)
            &&  confirmedQty    > 0)
        {
X++:
    while select salesTable
        index StatusCustAccIdx
        where salesTable.SalesStatus  == SalesStatus::Backorder
            join TableId from CustTable
                index AccountIdx
                where       CustTable.AccountNum    == salesTable.CustAccount
                        &&  CustTable.CustGroup     != 'KSS'
                join forupdate salesLine
                    index SalesLineIdx
                    where       salesLine.SalesId               == salesTable.SalesId
                            &&  salesLine.RemainSalesPhysical   > 0
Теги
select, как правильно, оформление кода, условия

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
select в X++ и список значений в условии where Prophetic DAX: Программирование 20 17.08.2010 18:43
QueryBuildRange в select.. where propeller DAX: Программирование 11 30.09.2008 13:35
Разница NotInTTS и Found Logger DAX: База знаний и проекты 6 18.09.2008 12:35
Вопрос про Demand Planner slava09 DAX: Функционал 4 25.09.2006 11:43
select * where ... Perc DAX: Программирование 10 06.07.2005 12:31
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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