Цитата:
Сообщение от
Cathome
500, и в этом случае, честно говоря, за весь рабочий день не дождалась результата. Не могу понять, с чем это связано, при 100 3-4 пересчёта занимают минут 20-30.
deadlock к каким-то периодическим заданием в пакетнике.
==============================
общий совет, как контролировать и оптимизировать процедуру закрытия
у закрытия есть "список расчета".
список содержит номенклатуры, себестоимость которых надо рассчитать на очередной итерации.
заглядывайте туда. смотрите какие номенклатуры там появляются, с каким номером итерации.
кроме того, на расчет очень сильно влияет последовательность расчета.
особенно, если у вас есть спецификации и переносы со склада на склад.
у каждой номенклатуры есть поле - уровень.
этот уровень пересчитывается в процедуре закрытия перед основным циклом.
в списке расчета есть этот уровень.
далее список упорядочивается по уровню и номеру расчета.
хитрость при закрытии состоит в том, чтобы помочь аксапте понять в каком порядке нужно рассчитывать себестоимость, чтобы минимизировать число итераций. для этого нужно грамотно проставлять уровень в списке расчета.
поэтому, вместо того, чтобы создавать новый класс, который повторяет расчеты.
разберитесь с кодом, который устанавливает уровни в списке расчета.
наделите этот код большим интеллектом в соответствии с вашим бизнесом.
в идеале, закрытие должно выполняться за (1-2 * максимальная_глубина_спецификации) итераций. максимум за (10 * максимальная_глубина_спецификации) итераций.
Цитата:
Сообщение от
Cathome
Со вторым параметром, честно, не пробовала играться, т.к.подозреваю, что он замедляет процесс ещё больше.
судя по вашим скриншотам, у вас там 0.01 )
сделайте чуток больше.