Openbravo Issue Tracking System - Openbravo ERP
View Issue Details
0017004Openbravo ERP04. Warehouse managementpublic2011-05-04 15:022011-05-24 12:28
adrianromero 
adrianromero 
immediatemajorhave not tried
closedfixed 
5
2.50MP28 
pi2.50MP30 
Core
No
0017004: M_INOUT_CREATE, Products are not taken in the correct order. Movements between bins modifies the FIFO order.
Selection of products for Shipments is based in the CREATED field of the M_STORAGE_DETAIL as done in the related issue 15796. This is not the correct order in all cases because movements between bins modifies the order the product is took.

A best option instead of the CREATED field of the table M_STORAGE_DETAIL is the CREATED field of the table M_ATTRIBUTESETINSTANCE because this record is created when goods are created and are not modified when goods are moved from one bin to another...

Create a new product, stocked and with an attributeset that has lot and with a price.

Create and complete an Income Shipment with the following details:
Org: F&B España - Región Norte
Warehouse: España Región Norte
Product: The new created product.
Lot: 0
Bin: RN-1-0-0
Movement Quantity: 100

Create and complete another Income Shipment with the following details:
Org: F&B España - Región Norte
Warehouse: España Región Norte
Product: The new created product.
Lot: 1
Bin: RN-2-0-0
Movement Quantity: 100

After this verify that the stock for the new created product is:
Lot #0 RN-1-0-0 100 units
Lot #1 RN-2-0-0 100 units

Create and complete a goods movement with the following details:
Org: F&B España - Región Norte
Product: The new created product.
Lot: 0
Bin: RN-1-0-0
Movement Quantity: 100
New Storage Bin: RN-0-0-0

After this verify that the stock for the new created product is:
Lot #0 RN-0-0-0 100 units
Lot #1 RN-2-0-0 100 units

Create a sales order with the following details:
Org: F&B España - Región Norte
Product: The new created product.
Quantity: 100

Go to Sales Management || Transactions || Create Shipments from Orders
Select the order created and process.

Now you can see the stock is:
Lot #0 RN-0-0-0 100 units
Lot #1 RN-2-0-0 99 units

It has been taken first the second lot of goods instead of the first becouse of the movement. The right option to follow a FIFO approach is to take the the first lot of goods.
As explained in the description to use the CREATED field of the table M_ATTRIBUTESETINSTANCE

When fixing this issue verify also that issue 15796 still works properly.
No tags attached.
blocks defect 0017003pi closed dalsasua M_INOUT_CREATE, Products are not taken in the correct order. Movements between bins modifies the FIFO order. 
Issue History
2011-05-04 15:04adrianromeroTypedefect => backport
2011-05-04 15:04adrianromerofix_in_branch => 2.50
2011-05-04 15:04adrianromeroversionpi => 2.50MP28
2011-05-06 12:45hgbotCheckin
2011-05-06 12:45hgbotNote Added: 0036502
2011-05-06 12:45hgbotStatusscheduled => resolved
2011-05-06 12:45hgbotResolutionopen => fixed
2011-05-06 12:45hgbotFixed in SCM revision => http://code.openbravo.com/erp/stable/2.50/rev/fb72eee864084ae4b22f56db459f724406ff4f4b [^]
2011-05-09 09:30adrianromeroNote Added: 0036539
2011-05-24 07:16dalsasuaIssue Monitored: dalsasua
2011-05-24 12:28maiteNote Added: 0037371
2011-05-24 12:28maiteStatusresolved => closed
2011-05-24 12:28maiteFixed in Version => 2.50MP30

Notes
(0036502)
hgbot   
2011-05-06 12:45   
Repository: erp/stable/2.50
Changeset: fb72eee864084ae4b22f56db459f724406ff4f4b
Author: Adrián Romero <adrianromero <at> openbravo.com>
Date: Wed May 04 18:11:19 2011 +0200
URL: http://code.openbravo.com/erp/stable/2.50/rev/fb72eee864084ae4b22f56db459f724406ff4f4b [^]

Fixes issue 0017004: M_INOUT_CREATE, Products are not taken in the correct order. Movements between bins modifies the FIFO order.
It has been modified the sentence that gets the bin to priorityze by the CREATED field of the M_ATTRIBUTESETINSTANCE table

---
M src-db/database/model/functions/M_INOUT_CREATE.xml
M src-db/database/model/functions/M_PRODUCTION_RUN.xml
---
(0036539)
adrianromero   
2011-05-09 09:30   
The solution implemented uses the created field of the attribute set instance table to establish priorities of bin used. With this solution products with instantiables attributes will work using the date wne the attribute has been created. It has to be taken into account that it will not be used the date of the shipment nor any other date.


* Testing the issue

Kindly follow the steps to test and verify no that at the end the stock is:

Lot #0 RN-0-0-0 99 units
Lot #1 RN-2-0-0 100 units

So independently of the movement of bin of the Lot #0 of goods it has been selected this because its attribute set instance has been created.

Verify also that the case described in issue 15796 continues working properly

Verify also that in BOM productions the order of products taken is the same as in M_INOUT_CREATE. To test this create a new product for BOM production that has in his list the created product, and verify that when executing a BOM production the product used is also the same as in the shipments creation, the Lot #0

* Other areas affected.

No other areas affected appart from the window Create Shipment from Orders and Bill of Material Production
(0037371)
maite   
2011-05-24 12:28   
verified.
tested all described cases: issue 17004 , issue 15796 and BOM productions