![]() |
#3 |
Боец
|
0. Тему бы раздел "Программирование"
1. Какой SQL используете? 2. Посмотреть бы ещё на кверю GroupFinancLedgerJournalTrans, возможно туда можно подцепить JournalNum, тогда от одного цикла можно было бы избавиться - это самый злой момент. X++: (while select RecId, budget, JournalNum, Voucher, AccountNum, AmountCurCredit from ledgerTrans where ledgerTrans.RecId == qLedgerTrans.RecId join JournalNum, Posted, JournalType from ledgerTable index hint PostedJournalNumIdx where ledgerTable.JournalNum == ledgerTrans.JournalNum && ledgerTable.Posted == NoYes::Yes) 3. "join ... from ledgerTable" заменить на "exists join ... from ledgerTable" 4. Заменить индекс OffsetVoucherIdx на TransIndex X++: while select OffsetTransVoucher, AccountNum, OffsetRecid, TransRecId, SettleAmountCur from custSettlement index hint TransIndex //orig: index hint OffsetVoucherIdx //where custSettlement.OffsetTransVoucher == ledgerTrans.Voucher && // custSettlement.AccountNum == ledgerTrans.AccountNum && where custSettlement.TransRecId == custTrans.RecId && custSettlement.AccountNum == custTrans.AccountNum && custSettlement.CanBeReversed == NoYes::Yes |
|
|
За это сообщение автора поблагодарили: Alexanderrrr (1). |