Openbravo Issue Tracking System - Modules
View Issue Details
0043835ModulesOMSpublic2020-04-23 11:572020-08-12 10:44
vmromanos 
Triage Omni OMS 
normalminorN/A
newopen 
5
 
 
0043835: Inventory Status support in OMS engine
The OMS considers as available stock the one with qty on hand - reserved qty > 0. This is a valid and simple to understand rule: "if something is not reserved, it's available for the OMS engine".

However, there are scenarios where, for whatever reason, we might have exceptions to this rule, like for example when the stock is in the store window (valid stock but we don't want to issue) or when the stock is damaged. In these cases the OMS shouldn't take it into account.

Inventory Status should have a new flag called "Available for OMS" to control the stock that is exposed for the OMS. By default in existing installations it will be set equal to the "Available" flag.

With this new configuration, for example, the bin associated to the store window should have associated an inventory status with the "Available for OMS" flag set to false, so the OMS can automatically bypass it.


The Stock By Warehouse window, which is the input stock for the OMS engine execution, should show a new column in grid view "Quantity Available for OMS", which will be the one taken into account by the OMS engine. Existing fields "Qty on Hand" and "Nettable Qty" will remain in form view but they will be hidden in grid view.


This change represents a functional API change that should be properly communicated.

NA
In Inventory Status definition we will add a new mandatory Y/N column "Available for OMS", with a default value equal to the "Available" flag.

In Stock By Warehouse window we will add the new column to display the "Quantity Available for OMS".

The triggers that populate the Stock By Warehouse window (OBOMS_LOCATOR_TRG and OBOMS_STORAGE_DETAIL_TRG) should be adapted to maintain the new column. The logic is similar to the already implemented QTYNETTEABLE.

The org.openbravo.oms.retail.hook.StockByWarehouseHook OrderLoaderHook should be adapted to update the new "Quantity Available for OMS", in a similar way to the QTYNETTEABLE.

Adapt the OMS engine (StockProposedHelper.java) to use the new "Quantity Available for OMS" instead of the current quantity on hand [in insertAvailableStock() method, replace sbw.quantityOnHand by the new column].

Finally it is necessary to adapt the OMS module script that populates the Stock By Warehouse table (PopulateStockByWarehouse_data.xsql) to calculate the new column (similar logic to the already implemented QTYNETTEABLE).
No tags attached.
Issue History
2020-04-23 11:57vmromanosNew Issue
2020-04-23 11:57vmromanosAssigned To => Triage Finance
2020-04-23 12:12vmromanosDescription Updatedbug_revision_view_page.php?rev_id=20857#r20857
2020-04-28 14:22vmromanosSummaryNetteable support in OMS engine => Inventory Status support in OMS engine
2020-04-28 14:22vmromanosDescription Updatedbug_revision_view_page.php?rev_id=20905#r20905
2020-04-28 14:22vmromanosProposed Solution updated
2020-08-12 10:44davidverrierNote Added: 0122001

Notes
(0122001)
davidverrier   
2020-08-12 10:44   
We have implemented this in the Caroll projects.