Доброго времени суток, уважаемые программисты, гуру Аксапты

У нас существует отчет "Оплата по группам финансирования", выбирающий данные из таблиц Custtrans, CustInvoiceJour и LedgerJournalTrans (Axapta 3.0 SP5). Работал он работал, и вот однажды утром снова стал работать гораздо медленнее. Включив мониторинг запросов, выяснил, что очень долго проходит кверик по custtrans.
Привожу код метода:
X++:
void insertTmpFromCustTrans()
{
CustTrans qCustTrans;
RContractTable qContractTable,
contractTable;
;
queryRun.query().dataSourceTable(tableNum(CustTrans)).addRange(fieldNum(CustTrans,TransDate)).value(queryRange(dateNull(),datefrom-1));
if (accountNum)
queryRun.query().dataSourceTable(tableNum(CustTrans)).addRange(fieldNum(CustTrans,AccountNum)).value(accountNum);
if (contractAccount)
{
queryRun.query().dataSourceTable(tableNum(RContractTable)).addRange(fieldNum(RContractTable,RContractCode)).value(contractCode);
queryRun.query().dataSourceTable(tableNum(RContractTable)).addRange(fieldNum(RContractTable,RContractAccount)).value(contractAccount);
queryRun.query().dataSourceTable(tableNum(RContractTable)).addRange(fieldNum(RContractTable,RContractPartnerCode)).value(accountNum);
}
while (queryRun.next())
{
qCustTrans = queryRun.get(tableNum(CustTrans));
qContractTable = queryRun.get(tableNum(RContractTable));
if (qCustTrans)
{
tmpTable.clear();
tmpTable.GroupFinancName = GroupsFinancTable::find(qContractTable.GroupFinancId).GroupFinancName;
tmpTable.AccountNum = qCustTrans.AccountNum;
tmpTable.AccountName = CustTable::find(qCustTrans.AccountNum).NameAlias;
tmpTable.ContractNumberDate = qContractTable.contractNumberDate;
tmpTable.Voucher = qCustTrans.Voucher;
tmpTable.Advance = NoYes::No;
tmpTable.DebtBeginPeriod = qCustTrans.AmountCur;
tmpTable.CurrentPayTotal = tmpTable.BPayCurrent + tmpTable.PayCurrent;
tmpTable.PayPeriodTotal = tmpTable.BPay + tmpTable.Pay + tmpTable.CurrentPayTotal;
tmpTable.CurrentDebt = tmpTable.AddAmount + tmpTable.CurrentPayTotal;
tmpTable.EndDebt = tmpTable.DebtBeginPeriod + tmpTable.AddAmount + tmpTable.PayPeriodTotal;
tmpTable.insert();
}
}
queryRun.query().addDataSource(tableNum(TmpGroupFinancingTable));
}
Проблемы с этим отчетом уже были (
Проблема с LedgerJournalTrans), но они не касались этого метода..
Реиндексацию индексов custtrans делал, не помогло..