|
|
#1 |
|
Участник
|
Опять оптимизация запроса
while select AccountNum, Voucher, AmountCur
from rAssetTrans //Ищем все ОС, которые введены в эксплуатацию where rAssetTrans.AssetTransType == RAssetTransType::Acquisition && rAssetTrans.TransDate <= transDate join rAssetStandards where rAssetStandards.AssetId == rAssetTrans.AccountNum && rAssetStandards.AssetGroup != 'СО' && rAssetStandards.AssetGroup != '01' && rAssetStandards.PostingProfile != 'НМА' { ledgerAccount = ( select firstonly firstfast AssetDebAccountNum_ru from LedgerJournalTrans where LedgerJournalTrans.Voucher == _voucher && (LedgerJournalTrans.AssetDebAccountNum_ru != 'XX-00-00-з001' || LedgerJournalTrans.AssetDebAccountNum_ru != '') ).AssetDebAccountNum_ru; .................... } |
|
|
|
|
#2 |
|
Участник
|
опять же используем
join, но использовать строки журналов - это вульгарно ![]() ищите счета в бух проводках, т.е. в LedgerTrans |
|
|
|
|
#3 |
|
Участник
|
Согласен с тобой по LedgerTrans.
Но join с LedgerTrans увеличивает время запроса |
|
|
|
|
#4 |
|
Участник
|
Надо делать 1 большой запрос к БД.
1 запрос на много записей отработает быстрее, чем много запросов по 1 записи
|
|
|
|
|
Похожие темы
|
||||
| Тема | Ответов | |||
| Оптимизация запроса - ranges | 13 | |||
| Изменить план выполнения запроса | 2 | |||
| Оптимизация запроса | 16 | |||
| Оптимизация запроса | 1 | |||
| Ускорение выполнения запроса Oracle + MS Axapta | 17 | |||
| Опции темы | Поиск в этой теме |
| Опции просмотра | |
|