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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.11.2003, 16:09   #10  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Re: знатокам query
Погоди, Максим. Ты прав с технической стороны.

Чтобы сделать то, что andreynikolai сказал на человеческом языке, запрос вообще по другой таблице делать надо.

Сгруппируйте по клиенту CustTransOpen.
Вы получите список клиентов с открытыми проводками.
Далее из этого списка надо выбрать тех, кто имеет проводки для сопоставления.

Я бы чуть изменил условия задачи и показывал всех клиентов у которых число проводок больше 2. С практической точки зрения, этого вполне достаточно.

Если условия задачи не менять, то надо показать клиентов у которых есть проводки с положительной и отрицательной суммой в custTransOpen.

Далее возникает сложность как в одном запросе сделать max,min, если Аксапта не позволяет подставлять алиасы для полей. Но у нас есть два поля с суммами, а нам нужен только +-.

поэтому select, по которому должен строится запрос должен выглядеть так
Код:
CusttransOpen cto;
select minof(AmountCur), maxof(AmountMST) from cto
    group by AccountNum;
Далее, возникает проблема с тем, что в Аксапте нет Having и нельзя одним запросом отобрать те строки в которых сумма и положительная и отрицательная. Но можно это выделить цветом в форме.

В чем состоит мораль:
1. выразите на простом человеческом языке ваше желание.
2. посмотрите есть ли уже готовая функциональность для этого
3. поищите существующие таблицы
4. если нет прямого ответа, то может стоит чуть модифицировать ваше желание?

Дополнительно: профилируйте запросы. Старайтесь не задавать SQL'ю работу по перебору проводок от начала времен. Тем более, в сложных join'ах.

Query и форма для Аксапты 3.0 прилагаются в проекте.
Обратите внимание, что query лучше не строить динамически, а задавать в АОТе.


//// Интересно как php показал Group By... Попробуем так...
Вложения
Тип файла: xpo mazaxforum.xpo (45.4 Кб, 629 просмотров)
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
знатокам Query Nikolaich DAX: Программирование 4 02.05.2007 13:22
Dynamics AX Geek: Using query() Blog bot DAX Blogs 0 28.10.2006 16:40
знатокам query Nikolaich DAX: Программирование 8 16.06.2006 18:18
Знатокам Query Ser DAX: Программирование 2 16.09.2003 09:16
Вопрос знатокам QBE и Query в AXAPTA Maxim Gorbunov DAX: Программирование 6 27.12.2002 13:19

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

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

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