Показать сообщение отдельно
Старый 04.03.2014, 14:17   #2  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Цитата:
Сообщение от raniel Посмотреть сообщение
Добрый день. Уже который день бьюсь с производительностью функции «Расчёт цены» -> «Цена номенклатуры»(AX2009). У меня есть номенклатура спецификация которой в свою очередь состоит из 5000 спецификаций. Полный расчёт её проходит за 30часов!!! Облазил весь код. В принципе особо что там и не соптимизируешь. Весь расчёт выполняется в одной транзакции(что уже не есть гуд). В ней строится дерево ну и потом бежит с самого низа веточек рассчитывается и сумма поднимается вверх. Понятно что объём большой, но это же ведь ERP… и уж если на то пошло, я так думаю, в России есть не мало производств где и посложнее номенклатуры обсчитыватся. Кстати посмотрел как этот функционал реализован в 12-шке… один в один без изменений.
Кто нить сталкивался с подобной проблемой?
Сталкивался, в машиностроении. Остается только итеративный расчет, где начинаем с нижних узлов (InventTable.BOMLevel), а на верхних насильственно прерываем расчет на первом уровне спецификации (по типу BOMCalcGroup.StopExplosion). Для этого используется метод расчета SingleLevel.

Последний раз редактировалось EVGL; 04.03.2014 в 14:20.
За это сообщение автора поблагодарили: gl00mie (2), raniel (1).