|
![]() |
#1 |
Разработчик
|
![]() Цитата:
Сообщение от Falcon
Код: ... SELECT FROM SALESLINE A(UPDLOCK) WHERE ((DATAAREAID=?) AND (SALESID=?)) ORDER BY A.DATAAREAID,A.SALESID,A.LINENUM OPTION(FAST 9) И еще вопрос, Вам действительно так важна сортировка по номерам строк заказа поле LINENUM. Может ее тоже лучше исключить из запроса в классе SalesFormLetter метод updateQueryBuild закомментировав строку Код: chooseLines.query().dataSourceTable(tableNum(SalesLine)).addSortField(fieldNum(SalesLine, lineNum)); Интересно, а какая она К и как хорошо там, если не секрет? Последний раз редактировалось perestoronin; 02.05.2006 в 18:35. |
|
![]() |
#2 |
Участник
|
Цитата:
Сообщение от perestoronin
Попробуйте изменить оригинальный запрос (или логику кода) так, чтобы не было нужды сортировать вывод по компаниям (поле DATAAREAID). Я полагаю это наверное лишне, т.к. у Вас в запросе и так стоит стоит условие - выборка по компании (только я не нашел где добавляется эта сортировка в русской локализации). При попытке сортировки по компании могут вылетать даже Enterprise Manager и Обозреватель таблиц.
И еще вопрос, Вам действительно так важна сортировка по номерам строк заказа поле LINENUM. Может ее тоже лучше исключить из запроса в классе SalesFormLetter метод updateQueryBuild закомментировав строку Полагаю это сделано специально под существующие на таблицах индексы. Неявная подсказка оптимизатору базы данных, так сказать. Так как он учитывает порядок полей в запросе по которым делается сортировка и по которым условие where есть. |
|
Теги |
ax3.0 |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|