Цитата:
Сообщение от
raz
ГТД не является правильной складской аналитикой. Не стоит её считать таковой и использовать. Если вы сравните в коде ГТД с любой другой аналитикой, вы все поймете.
Вечером попробую с другой аналитикой.
Но насколько я понял, что в кишках происходит, ГТД тут не причём, этот эффект должен и на других аналитиках повториться.
Просто он мне подруку подвернулся.
Да и забыл написать как исправил:
InventUpd_Estimated\updateDepreciateReceipt()
Место
X++:
while select forupdate inventTrans
index hint TransIdIdx
order by statusReceipt desc,inventRefTransId,inventDimId desc
where inventTrans.inventTransId == movement.transId() &&
inventTrans.transChildType == movement.transChildType() &&
inventTrans.transChildRefId == movement.transChildRefId() &&
inventTrans.statusIssue == StatusIssue::None &&
inventTrans.statusReceipt >= StatusReceipt::Ordered &&
inventTrans.statusReceipt <= StatusReceipt::QuotationReceipt
поставил
X++:
while select forupdate inventTrans
index hint TransIdIdx
order by statusReceipt desc,inventRefTransId,inventDimId
//order by statusReceipt desc,inventRefTransId,inventDimId desc
where inventTrans.inventTransId == movement.transId() &&
inventTrans.transChildType == movement.transChildType() &&
inventTrans.transChildRefId == movement.transChildRefId() &&
inventTrans.statusIssue == StatusIssue::None &&
inventTrans.statusReceipt >= StatusReceipt::Ordered &&
inventTrans.statusReceipt <= StatusReceipt::QuotationReceipt
Не знаю у всех так или нет, но в силу наших бизнес процессов.
InventDimId без ГТД появляются раньше. Следовательно между ними такая связь.
InventDimId(без ГТД) < InventDimId(с ГТД)
Этим и воспользовался. Просто сортировку поменял.