Тормозит вставка в теповую таблицу в ОСВ по ГК
Коллеги, доброго дня. Нужна помощь коллективного опыта.
Разгоняю ГК \ Запросы \ Оборотно-сальдовая ведомость (развернуто), стала сильно тупить.
Индексы все достроил, спасибо подсказкам сиквела. Запрос стал выдавать 60 000 записей не за минуты, а за 2 сек.
Но тормоза остались. Я обнаружил их в методе \Classes\LedgerDetailedTurnoverEngine\insertLineSaldo. Там идет простая и незамсыловатая вставка каждой найденной записи ГК в темповую табличку tmpLedgerTurnoverResults. Метод простой как валенок, что то типа tmpLedgerTurnoverResults.initFromLedgerTrans(_ledgerTrans)
Он он блин работает 2 (две) минуты на 60 000 записей.
Сам цикл while (qr.next()) { .. } по курсору LedgerTrans в записей 60 000 работает быстро, а вот в виде while (qr.next()) { insertLineSaldo(ledgerTrans); } умирает
Сделал простой джоб-эмулятор типа
select firstonly _ledgerTrans;
for (i = 0; i <= 60000; i++ ) { вставка в tmpLedgerTurnoverResults }
Его время 6 секунд
Где копать?
Артем
MS DAX 4.0
|