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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.08.2009, 21:53   #1  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
В методе executeQuery(), непосредственно перед super() вставьте код

X++:
void executeQuery()
{
    ...
    info(this.query().dataSourceTable(tablenum(smmActivities)).toString());
    super();
}
Вы увидете результирующий запрос, по нему и ищите ошибку.
За это сообщение автора поблагодарили: Dima_Dima (1).
Старый 07.08.2009, 10:24   #2  
Dima_Dima is offline
Dima_Dima
Участник
 
144 / 11 (1) +
Регистрация: 09.10.2008
Цитата:
Сообщение от DSPIC Посмотреть сообщение
Вы увидете результирующий запрос, по нему и ищите ошибку.
Спасибо за совет!

Первый (рабочий) запрос выглядит так:

X++:
SELECT * FROM smmActivities USING INDEX SortIndex WHERE ((Category = 0)) AND ((Sensitivity = 0)) AND ((IsTemplate = 0)) 
        EXISTS JOIN * FROM EmplTable WHERE smmActivities.ResponsibleEmployee = EmplTable.EmplId 
        EXISTS JOIN * FROM EmplTable WHERE smmActivities.ResponsibleEmployee = EmplTable.EmplId 
        EXISTS JOIN * FROM EmplTable WHERE smmActivities.ResponsibleEmployee = EmplTable.EmplId 
        EXISTS JOIN * FROM EmplTable WHERE smmActivities.ResponsibleEmployee = EmplTable.EmplId AND ((DispatchTeamId = N'1 K'))
Второй (если меняю фильтр) оочень интересный:

X++:
SELECT * FROM smmActivities USING INDEX SortIndex WHERE ((Category = 0)) AND ((Sensitivity = 0)) AND ((IsTemplate = 0)) 
        EXISTS JOIN * FROM EmplTable WHERE smmActivities.ResponsibleEmployee = EmplTable.EmplId 
        EXISTS JOIN * FROM EmplTable WHERE smmActivities.ResponsibleEmployee = EmplTable.EmplId 
        EXISTS JOIN * FROM EmplTable WHERE smmActivities.ResponsibleEmployee = EmplTable.EmplId 
        EXISTS JOIN * FROM EmplTable WHERE smmActivities.ResponsibleEmployee = EmplTable.EmplId AND ((DispatchTeamId = N'1 K')) 
        EXISTS JOIN * FROM EmplTable WHERE smmActivities.ResponsibleEmployee = EmplTable.EmplId AND ((DispatchTeamId = N'2 M'))
т.е.

EXISTS JOIN * FROM EmplTable WHERE smmActivities.ResponsibleEmployee = EmplTable.EmplId AND ((DispatchTeamId = N'1 K'))

живет еще при втором запросе!!!

Есть ли способ его скинуть???
Старый 07.08.2009, 10:41   #3  
Dima_Dima is offline
Dima_Dima
Участник
 
144 / 11 (1) +
Регистрация: 09.10.2008
Вопрос снят.
clearRanges() - помог.

2 DSPIC. Спасибо еще раз!
.
Теги
crm, поиск, фильтр

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Фильтр на форме InventClassifierItemSelection Andrux DAX: Программирование 11 06.05.2009 10:48
Фильтр на форме в гриде vale15 DAX: Программирование 1 18.09.2007 11:50
Фильтр на Веб форме egorych DAX: Программирование 3 21.06.2007 18:32
Фильтр на форме sah DAX: Программирование 5 10.11.2005 11:31
Не работает стандартный фильтр на форме Julietta DAX: Прочие вопросы 4 06.12.2004 13:30

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

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

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