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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.12.2003, 13:14   #1  
Atani is offline
Atani
Участник
 
77 / 15 (1) ++
Регистрация: 25.07.2003
Адрес: г. Королёв М.О.
? Ещё один "сложный" запрос
Здравствуйте!

Как задать условие на DataSource типа Table1.date1 > Table1.date2 или Table1.Qty1 != Table1.Qty2 ?
Старый 26.12.2003, 14:46   #2  
wavetrain is offline
wavetrain
Участник
 
11 / 10 (1) +
Регистрация: 15.08.2003
Адрес: Москва
Что-то типа

qbds.addRange(fieldNum(Table1, Date1)).value(strfmt("(%1.%2 > %1.%2)", qbds.name(), fieldStr(Table1, Date1), fieldStr(Table1, Date2)));

qbds.addRange(fieldNum(Table1, Qty1)).value(strfmt("(%1.%2 != %1.%2)", qbds.name(), fieldStr(Table1, Qty1), fieldStr(Table1, Qty2)));

не помогает ?
Старый 26.12.2003, 17:14   #3  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Название таблицы задавать не надо. Все равно, сравнивать можно только поля таблицы, в QueryBuildDataSource которой добавляется Range.

Вообще-то, про такие условия написано здесь: http://technet.navision.com/default....put&NEWSID=351

Пример из этой статьи:
PHP код:
strFmt('((%1 == %2) || (%3 == %4))',
        
fieldStr(MyTable,A), x,
        
fieldStr(MyTable,B), y
Соответствует условию MyTable.A == x || MyTable.B == y.

Легко можно переделать и на ваши условия.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 26.12.2003, 17:31   #4  
wavetrain is offline
wavetrain
Участник
 
11 / 10 (1) +
Регистрация: 15.08.2003
Адрес: Москва
Цитата:
Название таблицы задавать не надо. Все равно, сравнивать можно только поля таблицы, в QueryBuildDataSource которой добавляется Range.
Если вы про qbds.name(), то я писал про общий случай. Таким образом можно сравнивать поля из разных datasource. Например, можно делать так :

qbds2.addRange(fieldNum(Table2, Date)).value(strfmt("(%1 > %2.%3)", fieldStr(Table2, Date), qbds1.name(), fieldStr(Table1, Date)));

qbds2 должен быть присоединен к qbds1.
Старый 26.12.2003, 17:49   #5  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
OK, понял.
Извиняюсь.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 30.12.2003, 11:48   #6  
Atani is offline
Atani
Участник
 
77 / 15 (1) ++
Регистрация: 25.07.2003
Адрес: г. Королёв М.О.
Спасибо, помогло.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Почему на форме "Пользовательские настройки", когда я перехожу в нее из формы, отсутствует закладка "Запрос"? Hans DAX: Администрирование 0 05.07.2007 13:52
Подставлять "ранее использованный запрос" при открытии формы Plushy DAX: Функционал 4 16.01.2006 16:23
Запрос "Фактура" rtreh DAX: Функционал 5 27.12.2005 13:21
Сложный запрос в DataSoource формы Vasilenko Alexsandr DAX: Программирование 11 27.12.2003 14:54
Как наложить на запрос сложный фильтр? glibs DAX: Программирование 10 04.02.2003 12:50
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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