If there are multiple facilities for a store and insufficient
inventory in any facility reserving (back-order) against the first
facility sounds like a good "stop-gap", or default solution.
The problem with the multiple facility thing is that there are quite a
few ways to reserve across facilities and different companies do
things in different ways. Some factors include more central/larger
warehouses versus those closer to the point of sale, or closer to
where the order will actually be shipped, or whatever.
Anyway, I think the change you propose is fine. There is a lot more
work to do in this area to possibly fit the needs of a large variety
of companies, but that will probably be done one company/variation at
a time. With the current design implementors can also write their own
multi-facility reservation routines.
-David
On May 20, 2008, at 10:21 AM, Bilgin Ibryam wrote:
Hi all,
I'd like to ask a question about "reserveStoreInventory" service.
In general this service does the following:
If the productStore is "oneInventoryFacility" tries to reserve the
inventory in that facility.
Otherwise tries to find a facility from ProductStoreFacility list with
enough quantity to reserve and reserves there.
The bug appears if there is no facility with enough quantities to
reserve. In this case there is no reservation and the order can't be
issued/invocied/completed.
I think if there is no facility with enough quantity, the service
should
do one of (or a combination of) these 3 options:
1. Behave like productStore with "oneInventoryFacility" and tries to
reserve in the facility associated to the store.
2. Take the first facility from the ProductStoreFacility list and
tries
to reserve there.(The first one should be ok, because there is
sequenceNum field)
3. Choose a facility from the ProductStoreFacility list, which have
most
quantities for the product.
I'd like to add code (a combination of 1 and 2) so that, if the
productStore has a facilityId reserve there, otherwise choose the
first
facility from the list and reserve.
Is it ok this way?
Bilgin