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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.08.2012, 18:15   #1  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,983 / 3273 (117) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от Bega Посмотреть сообщение
Она прервет выполнение, но не откатит то, что уже наколбасила, то есть часть номенклатур будет отменена, а часть - нет. Так?
Да.
Старый 23.08.2012, 08:19   #2  
TravellerInTime is offline
TravellerInTime
Участник
Аватар для TravellerInTime
 
130 / 36 (2) +++
Регистрация: 14.07.2003
Адрес: Россия, Тула
Кстати, я нашел запрос, точнее это оказался апдейт, который вызывал тормоза.
Класс InventCostClosingCancel_WorkInvent метод duplicateSettlements()
X++:
update_recordset inventSettlement
        setting Cancelled             = NoYes::Yes,
                QtySettled            = -1 * inventSettlement.QtySettled,
                CostAmountSettled     = -1 * inventSettlement.CostAmountSettled,
                CostAmountAdjustment  = -1 * inventSettlement.CostAmountAdjustment
        where inventSettlement.Voucher                == newVoucher
           && inventSettlement.TransDate              == newTransDate
           // <GEEU>
           && inventSettlement.InventTransCurrency_RU == inventTransCurrency
           // </GEEU>
           && inventSettlement.Cancelled              == NoYes::No
           && inventSettlement.ItemId                 == itemId;
Анализ показал, что sql server применял не правильный индекс.
Как указать в update_recordset индекс я не нашел, поэтому изменил индекс ItemDateIdx, добавив в него поле Voucher. После этого склад отменяется за минуты вместо часов.
За это сообщение автора поблагодарили: mazzy (2), Bega (5), androzavr (1).
Старый 23.08.2012, 10:34   #3  
vallys is offline
vallys
Developer
 
146 / 108 (0) +++++
Регистрация: 18.01.2005
Цитата:
Сообщение от TravellerInTime Посмотреть сообщение
...
Анализ показал, что sql server применял не правильный индекс.
Как указать в update_recordset индекс я не нашел, поэтому изменил индекс ItemDateIdx, добавив в него поле Voucher. После этого склад отменяется за минуты вместо часов.
Цитата:
Сообщение от vallys Посмотреть сообщение
...
В качестве оптимизации, можно добавить в индекс ItemDateIdx поля Voucher, ...


P.S. Из тех полей что писал в первом сообщении можно и нужно добавлять как раз поле Voucher
Теги
index hint, закрытие склада, отмена закрытия склада

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ошибка при отмене закрытия склада Geo DAX: Функционал 6 18.02.2011 16:45
Разная себестоимость проводок в операции переноса после закрытия склада Mikky DAX: Функционал 2 27.07.2009 11:52
Отмена закрытия склада, или есть варианты ? CasperSKY DAX: Администрирование 2 12.11.2008 01:11
Отмена закрытия склада. AlexeyBP DAX: Функционал 2 16.01.2008 07:47
Отмена закрытия склада Penguin DAX: Функционал 4 18.05.2005 15:08

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

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

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