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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.03.2007, 19:07   #1  
FirstOnly is offline
FirstOnly
Участник
 
7 / 10 (1) +
Регистрация: 29.03.2007
Тормозит запрос
Подскажите почему возникают тормоза вот в этом месте
Как избавиться от этого, queryRun оптимизирован, но все равно возникают тормоза.



while( _queryRun.next() )
Выборка идет по таблице ProdBoom (n:1) [ProdBOM.ProdId=ProdTable.ProdId] ProdTable (n:1) [ProdTable.InventRefId = ProdTable.ProdId] ProdTable
В Качестве критерия указывается значение в поле Номер ссылки во втором производственном заказе [ProdTable.InventRefId]

в _queryRun firstfast = false firstonly=false

Последний раз редактировалось FirstOnly; 29.03.2007 в 19:15.
Старый 29.03.2007, 19:36   #2  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Телепаты в отпуске.
Смотрите план запроса.
Старый 29.03.2007, 21:25   #3  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
В таблице ProdTable нет индекса по InventRefId. Может быть, Вам ProdTable.CollectRefId сойдет (идентификатор самого главного производственного заказа)?
Старый 30.03.2007, 08:56   #4  
FirstOnly is offline
FirstOnly
Участник
 
7 / 10 (1) +
Регистрация: 29.03.2007
К сожалению не сойдет. В номер ссылки содержится номер заказа (Заказа из модуля расчеты с клиентами). И фильтровать нужно по этому номеру.
Старый 30.03.2007, 14:09   #5  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
ну так добавьте индекс по ProdTable.InventRefId
Старый 07.04.2007, 15:26   #6  
FirstOnly is offline
FirstOnly
Участник
 
7 / 10 (1) +
Регистрация: 29.03.2007
План исполнения запроса:
SELECT A.PRODID,A.LINENUM,A.PRODLINETYPE,A.BOMCONSUMP,A.ITEMID,A.BOMQTY,A.DIM1,A.DIM2,A.DIM3,A.DIM4,A.DIM5,A.ROUNDUP,
A.ROUNDUPQTY,A.POSITION,A.QTYBOMCALC,A.REMAINBOMPHYSICAL,A.REMAINBOMFINANCIAL,A.QTYINVENTCALC,A.RESERVATION,
A.INVENTTRANSID,A.RAWMATERIALDATE,A.REMAININVENTPHYSICAL,A.DIMENSION,A.DIMENSION2_,A.DIMENSION3_,A.INVENTREFTYPE,
A.INVENTREFID,A.INVENTREFTRANSID,A.VENDID,A.UNITID,A.BACKORDERSTATUS,A.CALCULATION,A.QTYINVENTSTUP,A.QTYBOMSTUP,
A.DEL_SCRAPTYPEID,A.BOMID,A.FORMULA,A.DEL_CONFIGID,A.BOMREFRECID,A.BOMQTYSERIE,A.ITEMBOMID,A.INVENTDIMID,A.REQPOID,
A.REQPLANIDSCHED,A.SCRAPVAR,A.SCRAPCONST,A.CONSTANTRELEASED,A.RECVERSION,A.RECID,B.ITEMID,B.NAME,B.PRODGROUPID,
B.PRODSTATUS,B.PRODTYPE,B.QTYSCHED,B.QTYSTUP,B.DLVDATE,B.STUPDATE,B.FINISHEDDATE,B.SCHEDSTART,B.SCHEDEND,B.HEIGHT,
B.WIDTH,B.DEPTH,B.DENSITY,B.QTYCALC,B.REALDATE,B.RESERVATION,B.PRODPOSTINGTYPE,B.INVENTTRANSID,B.DIMENSION,B.DIMENSION2_,
B.DIMENSION3_,B.INVENTREFTYPE,B.INVENTREFID,B.INVENTREFTRANSID,B.COLLECTREFLEVEL,B.COLLECTREFPRODID,B.BOMDATE,
B.BACKORDERSTATUS,B.PRODPOOLID,B.PROFITSET,B.CALCDATE,B.REMAININVENTPHYSICAL,B.BOMID,B.DEL_CONFIGID,B.REQPLANIDSCHED,
B.REQPOID,B.REFLOOKUP,B.PRODID,B.INVENTDIMID,B.PRODORIGID,B.PRODPOSITION,B.CREATEDDATE,B.CREATEDTIME,B.CREATEDBY,
B.RECVERSION,B.RECID,C.ITEMID,C.NAME,C.PRODGROUPID,C.PRODSTATUS,C.PRODTYPE,C.QTYSCHED,C.QTYSTUP,C.DLVDATE,C.STUPDATE,
C.FINISHEDDATE,C.SCHEDSTART,C.SCHEDEND,C.HEIGHT,C.WIDTH,C.DEPTH,C.DENSITY,C.QTYCALC,C.REALDATE,C.RESERVATION,
C.PRODPOSTINGTYPE,C.INVENTTRANSID,C.DIMENSION,C.DIMENSION2_,C.DIMENSION3_,C.INVENTREFTYPE,C.INVENTREFID,C.INVENTREFTRANSID,
C.COLLECTREFLEVEL,C.COLLECTREFPRODID,C.BOMDATE,C.BACKORDERSTATUS,C.PRODPOOLID,C.PROFITSET,C.CALCDATE,C.REMAININVENTPHYSICAL,
C.BOMID,C.DEL_CONFIGID,C.REQPLANIDSCHED,C.REQPOID,C.REFLOOKUP,C.PRODID,C.INVENTDIMID,C.PRODORIGID,C.PRODPOSITION,C.CREATEDDATE,
C.CREATEDTIME,C.CREATEDBY,C.RECVERSION,C.RECID
FROM PRODBOM A,PRODTABLE B,PRODTABLE C
WHERE (A.DATAAREAID='VRT')
AND ((B.DATAAREAID='VRT')
AND ((B.COLLECTREFLEVEL=1)
AND (A.PRODID=B.PRODID)))
AND ((C.DATAAREAID='VRT')
AND ((((C.INVENTREFID=' 089641') OR (C.INVENTREFID=' 071192'))
AND (C.INVENTREFTYPE=1))
AND (B.COLLECTREFPRODID=C.PRODID)))
ORDER BY A.DATAAREAID,A.PRODID,A.LINENUM,A.RECID OPTION(FAST 8)
Старый 07.04.2007, 16:20   #7  
Ed1k is offline
Ed1k
Участник
 
102 / 42 (2) +++
Регистрация: 19.07.2006
Цитата:
Сообщение от FirstOnly Посмотреть сообщение
План исполнения запроса:
SELECT A.PRODID,A.LINENUM,
....
ORDER BY A.DATAAREAID,A.PRODID,A.LINENUM,A.RECID OPTION(FAST 8)
Не... это не план), план не такой
Старый 07.04.2007, 17:15   #8  
FirstOnly is offline
FirstOnly
Участник
 
7 / 10 (1) +
Регистрация: 29.03.2007
Цитата:
Сообщение от Ed1k Посмотреть сообщение
Не... это не план), план не такой
Разве не отсюда брать:

Администрирование \ Запросы \ База данных \ Журнал трассировки SQL запросов \ Кнопка План исполнения
???
Старый 07.04.2007, 17:30   #9  
Ed1k is offline
Ed1k
Участник
 
102 / 42 (2) +++
Регистрация: 19.07.2006
Цитата:
Сообщение от FirstOnly Посмотреть сообщение
Разве не отсюда брать:
Администрирование \ Запросы \ База данных \ Журнал трассировки SQL запросов \ Кнопка План исполнения
???
Аха, ещё нужно жмакнуть кнопку рассчитать новый план и увидеть его
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Почему join запрос разбивается на подзапросы!? 3oppo DAX: Программирование 59 28.06.2007 11:52
Долго отрабатывает запрос по таблице InventItemLocation AlexeyBP DAX: Администрирование 1 30.05.2007 17:33
Тормозит запрос. Сильно умная аксапта Perc DAX: Программирование 19 28.03.2007 16:34
Не работает запрос на нескольких компаниях Bega DAX: Программирование 3 16.09.2005 10:21
Форма тормозит... Alks DAX: Программирование 2 02.12.2004 06:27

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

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

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