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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.06.2006, 20:18   #1  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Сортировка в гриде
Столкнулся со странной проблемой.

В грид на форме выводятся данные из трех таблиц, соединенных обычным InnerJoin
(InventSum join InventDim join InventTable) - джойнятся обе к InventSum
Нет ни группировок, ни сортировок - в executeQuery InventSum добавлено несколько фильтров перед super();

Дисплей методов тоже нет - контролы на грид перетаскивались из датасорсов.

И вот, в гриде он сортирует только по полям основного (InventSum) датасорса.
По другим не хочет.

Пользоватальский запрос не меняется (queryRun().query()).
Фильтры накладываются на this.query()

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

если группировки заданы, то сортировку можно менять только в пределах полей одной таблицы. НО порядок таблиц уже не меняется.

Попробуй изменить порядок сортировки в любом отчете, где есть группировка в датасорсе.
Станет понятно.
__________________
полезное на axForum, github, vk, coub.
Старый 28.06.2006, 20:26   #3  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Да нет, я ж пишу, что группировки не добавлял - специально - если б группировал, то и вопроса бы не было.
С таким же успехом это могли быть любые другие 3 таблицы.

Последний раз редактировалось kashperuk; 28.06.2006 в 20:31.
Старый 28.06.2006, 20:34   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от kashperuk
Да нет, я ж пишу, что группировки не добавлял
Протормозил.
inventSum - без группировок... надо же...

Не знаю. Смотри tutorial_Form_Join - там вроде сортировка работает.
__________________
полезное на axForum, github, vk, coub.
Старый 28.06.2006, 21:05   #5  
db is offline
db
Роман Долгополов (RDOL)
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
 
393 / 692 (24) +++++++
Регистрация: 01.04.2004
Адрес: Москва
2 kashperuk
Проблема в том, что когда в одном гриде собираются столбцы из разных датасорсов
то кликанье по заголовку столбца накладывает сортировку по соответсующему полю
а кликанье по другому столбцу снимает предыдущую сортировку только в пределах
датасорса к которому принадлежит этот другой столбец. т.е сортировки в дргугих датасорсах не трогаются и остаются жить - все это легко можно увидеть включив трассировку

если сразу после открытия формы или удаления фильтра кликнуть по нужному столбцу то все замечательно отсортируется.

в общем очень похоже на багу.
вариантов обхода вижу два - каждый со своими недостатками
1. перед каждой новой сортировкой нажимать кнопочку удаления фильтра, при этом на датасорсах не должно быть указано никаких индексов
2. закодить обработчики события sort на всех контролах грида чтобы они счищали с запроса все сортировки

2 mazzy
tutorial_form_join ведет себя также

версия 3.0 SP3. на более поздних не проверял
может кто знает какое нибудь радикальное средство на эту тему?
Старый 28.06.2006, 21:15   #6  
db is offline
db
Роман Долгополов (RDOL)
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
 
393 / 692 (24) +++++++
Регистрация: 01.04.2004
Адрес: Москва
забыл про третий способ - создать вьюшку. правда он не намного лучше, так как лечит частные проявления общей проблемы
Старый 28.06.2006, 21:18   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от db
tutorial_form_join ведет себя также
может быть.
только я проверил когда отвечал в своем первом посте.
у меня 3.0 KR2. Вроде нормально.

kashperuk, можешь проект выложить? проверю.
только убери из него, пожалуйста, всю специфику. сделай так, чтобы он запускался на стандартной аксапте.
__________________
полезное на axForum, github, vk, coub.
Старый 28.06.2006, 21:28   #8  
db is offline
db
Роман Долгополов (RDOL)
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
 
393 / 692 (24) +++++++
Регистрация: 01.04.2004
Адрес: Москва
Цитата:
Сообщение от mazzy
может быть.
только я проверил когда отвечал в своем первом посте.
у меня 3.0 KR2. Вроде нормально.
Да и без проекта можно проверить - достаточно того же туториала
сначала сортируем по самому левому столбцу (Key) по убыванию, потом сразу по самому правому (Details) по возрастанию

если результат будет в нем будет
Details for Item2
Other Details for Item2
Details for Item1

то не работает. но лучше бы работало
Старый 28.06.2006, 21:30   #9  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
угу. спасибо.
не работает.
__________________
полезное на axForum, github, vk, coub.
Старый 28.06.2006, 21:31   #10  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
вернее, сортирует по каждому датасорсу отдельно.
даже если они в пределах одного грида.
а не по гриду, как ожидается.
__________________
полезное на axForum, github, vk, coub.
Старый 28.06.2006, 21:36   #11  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
:(
Да, вот и у меня так же получается.

И еще, если индексы установлены на датасорсах, то он сортирует по ним, и не меняет соритровку вообще, хотя вроде как пользовательские сортировки должны быть выше индекса указанного (overrideить должны)

Вот и формочка
Вложения
Тип файла: xpo InventOnHendItem_UAI.xpo (48.5 Кб, 204 просмотров)
Старый 29.06.2006, 09:18   #12  
ViV is offline
ViV
Axapta Retail User
Самостоятельные клиенты AX
Axapta Retail User
 
200 / 79 (3) ++++
Регистрация: 14.09.2005
Сортировка в гриде с двумя DataSource
Вот тут есть замечательное вложение
За это сообщение автора поблагодарили: mazzy (5).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Сортировка в гриде с двумя DataSource ViV DAX: Программирование 15 05.06.2014 15:55
FormListControl сортировка maximka DAX: Программирование 2 26.12.2008 13:44
Открытие формы с деталями активной записи в гриде sweeper DAX: Программирование 4 19.09.2008 15:55
Сортировка в гриде Pegiy DAX: Функционал 15 06.12.2006 08:21
Глючит сортировка записей dd DAX: Функционал 5 17.08.2004 20:34

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

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

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