04.08.2012, 14:22 | #1 |
Участник
|
Расчет резервного запаса – бага?
По-моему в алгоритме расчета резервного запаса есть серьезная бага. И если я прав, то вообще не понятно как им можно пользоваться.
Для расчёта статистики, на основании которой затем считается уровень минимального запаса, формируется запрос типа: X++: SELECT WITH SELECT_ORDER, NESTED_LOOP, FORCE_PLACEHOLDERS INDEXISHINT SUM(Qty), MAX(DatePhysical) FROM InventTrans GROUP BY InventTrans.ItemId ASC USING INDEX ItemIdx WHERE ((DatePhysical>=01.01.2012 AND DatePhysical<=30.06.2012)) AND ((StatusReceipt = 0)) AND ((StatusIssue>= AND StatusIssue<=)) AND ((InvoiceReturned = )) AND ((PackingSlipReturned = )) JOIN INDEXISHINT * FROM InventDim GROUP BY InventDim.configId ASC, InventDim.InventSizeId ASC, InventDim.InventColorId ASC USING INDEX DimIdIdx WHERE InventTrans.inventDimId = InventDim.inventDimId Как по мне мы должны исключать из этого запроса переносы, которые не меняют аналитику из плана покрытия. Но этого не происходит. Т.е. если у вас склад в план покрытия не входит, а вы перемещаете номенклатуру со склада производства на склад продаж, то статистика потребностей будет завышена в два раза. См. метод newQueryInventTransIssue класса ReqItemJournalCreate З.Ы.: наткнулся я на это в 3-ке. Судя по коду в DAX2009 тоже самое. Позже проверю еще и DAX2012. Последний раз редактировалось Starling; 04.08.2012 в 15:13. |
|