Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Semantic definitions #6

Open
gplanchat opened this issue Sep 20, 2016 · 1 comment
Open

Semantic definitions #6

gplanchat opened this issue Sep 20, 2016 · 1 comment

Comments

@gplanchat
Copy link
Member

gplanchat commented Sep 20, 2016

Hello,

I would need a hand to understand the semantics used in the code (class names and methods). @jakubbabiak and @24198 should have the answer(s).

What is an inventory allocation, and the difference between the quantity, the allocated quantity and the virtual quantity ?

Thanks

@brainOut
Copy link
Contributor

brainOut commented Nov 7, 2018

@gplanchat AFAIK,

  • Inventory Allocation is the process when a quantity of items is "reserved" for an order.
  • Inventory Quantity is the total qty of an Item in the warehouse (CE), or in warehouses (EE), it represents the total Quantity available really on stock (real stock)
  • Allocated Quantity is the part of the real stock reserved for the packing of orders. Allocated Quantity should be either less or equal to the Inventory Quantity.
  • Virtual Quantity is the difference between Inventory Quantity and Allocated Quantity, which is the real available stock right now for other orders.

In the actual marello's workflow :

  • Inventory Quantity, is defined when you create an Item, this Inventory Quantity can be increased or decreased afterwards.
  • In order creation process, you select items, and affect quantity to this orderItem. When you save this order which is not really an order, it passes to the state of Pending Order, which can be set to PickAndPack after invoicement.
  • This PickAndPack step allocate the quantity you set in the Order, to the Allocate Quantity for this item, and by the way decrease the Virtual Quantity (which is the difference of Inventory Quantity and Allocated Quantity)
  • When the order is shipped, items or not available anymore in the Inventory Quantity (Inventory Quantity minus Quantity shipped), and the Allocated Quantity, for this order is set to 0.

i.e:
Item A Inventory:
Inventory Quantity (IQ): 10
Allocated Quantity (AQ): 0
Virtual Quantity (VQ) : 10 (IQ - AQ)

Order #001 [Pending Order]
Item A x 5

==>

Order #001 set in PickAndPack state
Item A Inventory:
IQ : 10
AQ: 5
VQ: 5

This action is provided by a workflow post_action :marello_pick_pack_order, defined in workflow_actions.yml

Order #001 set in Shipped state
Item A Inventory:
IQ : 5
AQ: 0
VQ: 5

This action is provided by a workflow post_action :marello_ship_order, defined in workflow_actions.yml

Hope that helps :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants