[ 
https://issues.apache.org/jira/browse/OFBIZ-12264?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Giulio Speri updated OFBIZ-12264:
---------------------------------
    Description: 
The ProductStore is set up to reserve inventory from more than one facility, so 
the flag oneInventoryFacility is set to N. 
 The we have 8 different facilities configured (each with a specific sequence 
num from 1 to 8) in the entity ProductStoreFacility.
  
 Due to customer requests I had to disable 6 out of 8 facilities associated 
with the store, so basically only facilities with (sequence) numbers 1 and 2 
are left. To achieve this I set the thruDate on the other six records.
  
 After that, an order came in with a variant product that had only 1 quantity 
left available in one of the disabled facilities and 0 in both the two 
facilities left enabled, but despite this the system reserved inventory from 
the disabled facility: I wouldn't expect that.
  
 The service responsible for the reservation is reserveStoreInventory that in 
our ofbiz version (13.07.03) is minilang and is implemented in 
ProductStoreServices.xml: I checked that service and I noticed that when the 
ProductStore is set to multi facility (oneInventoryFacility to N) and the list 
of productStoreFacility records are retrieved, they are not filtered by date, 
and this lead to a "bad" reservation.
 I took a look also at the current revision of ofbiz and the code (groovy 
script) is basically the same, so the issue is present there also.

 

ADDITIONAL NOTE:

The the reservation should not be done for this product, but this part is only 
the last step of the ecommerce sales order flow.

I think that with a scenario like the one above, the specific product variant 
should not even be added to the cart, so in the item page (productdetail) this 
particular variant should not have been visible/selected by the user.

But I have to take a better look at this part.

  was:
The ProductStore is set up to reserve inventory from more than one facility, so 
the flag oneInventoryFacility is set to N. 
The we have 8 different facilities configured (each with a specific sequence 
num from 1 to 8) in the entity ProductStoreFacility.
 
Due to customer requests I had to disable 6 out of 8 facilities associated with 
the store, so basically only facilities with (sequence) numbers 1 and 2 are 
left. To achieve this I set the thruDate on the other six records.
 
After that, an order came in with a variant product that had only 1 quantity 
left available in one of the disabled facilities and 0 in both the two 
facilities left enabled, but despite this the system reserved inventory from 
the disabled facility: I wouldn't expect that.
 
The service responsible for the reservation is reserveStoreInventory that in 
our ofbiz version (13.07.03) is minilang and is implemented in 
ProductStoreServices.xml: I checked that service and I noticed that when the 
ProductStore is set to multi facility (oneInventoryFacility to N) and the list 
of productStoreFacility records are retrieved, they are not filtered by date, 
and this lead to a "bad" reservation.
I took a look also at the current revision of ofbiz and the code (groovy 
script) is basically the same, so the issue is present there also.


> Multiple Facility Inventory reservation does not consider store facility thru 
> date
> ----------------------------------------------------------------------------------
>
>                 Key: OFBIZ-12264
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-12264
>             Project: OFBiz
>          Issue Type: Bug
>          Components: ecommerce, product
>    Affects Versions: 17.12.03, 17.12.04, 17.12.05, 17.12.06, 17.12.07
>         Environment: Linux/Ubuntu 18.04 LTS, Java jdk 8, OFBiz v13.07.03
>  
>            Reporter: Giulio Speri
>            Assignee: Giulio Speri
>            Priority: Major
>         Attachments: image-2021-06-24-00-35-10-392.png, 
> image-2021-06-24-00-37-21-890.png, image-2021-06-24-00-40-41-737.png, 
> image-2021-06-24-00-41-56-344.png, image-2021-06-24-00-43-33-640.png, 
> image-2021-06-24-00-46-17-924.png, image-2021-06-24-00-49-23-904.png
>
>
> The ProductStore is set up to reserve inventory from more than one facility, 
> so the flag oneInventoryFacility is set to N. 
>  The we have 8 different facilities configured (each with a specific sequence 
> num from 1 to 8) in the entity ProductStoreFacility.
>   
>  Due to customer requests I had to disable 6 out of 8 facilities associated 
> with the store, so basically only facilities with (sequence) numbers 1 and 2 
> are left. To achieve this I set the thruDate on the other six records.
>   
>  After that, an order came in with a variant product that had only 1 quantity 
> left available in one of the disabled facilities and 0 in both the two 
> facilities left enabled, but despite this the system reserved inventory from 
> the disabled facility: I wouldn't expect that.
>   
>  The service responsible for the reservation is reserveStoreInventory that in 
> our ofbiz version (13.07.03) is minilang and is implemented in 
> ProductStoreServices.xml: I checked that service and I noticed that when the 
> ProductStore is set to multi facility (oneInventoryFacility to N) and the 
> list of productStoreFacility records are retrieved, they are not filtered by 
> date, and this lead to a "bad" reservation.
>  I took a look also at the current revision of ofbiz and the code (groovy 
> script) is basically the same, so the issue is present there also.
>  
> ADDITIONAL NOTE:
> The the reservation should not be done for this product, but this part is 
> only the last step of the ecommerce sales order flow.
> I think that with a scenario like the one above, the specific product variant 
> should not even be added to the cart, so in the item page (productdetail) 
> this particular variant should not have been visible/selected by the user.
> But I have to take a better look at this part.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to