|
| 1 | +========================== |
| 2 | +Temporary reordering rules |
| 3 | +========================== |
| 4 | + |
| 5 | +Some businesses require certain products to always have a minimum quantity of stock on-hand at any |
| 6 | +given time. To avoid stock falling below a certain threshold, companies can create *reordering |
| 7 | +rules* in Odoo to automate purchase orders for specific products. |
| 8 | + |
| 9 | +Reordering rules keep the forecasted stock levels above a certain threshold, without exceeding a |
| 10 | +specified upper limit, or maximum amount. When a product with a reordering rule falls below a |
| 11 | +specified quantity, Odoo generates an order using the specified *route* (e.g. *Buy* or |
| 12 | +*Manufacture*) to replenish the stock. |
| 13 | + |
| 14 | +In certain cases, businesses might opt for *temporary reordering rules* when they do not want |
| 15 | +specific products to be replenished automatically. |
| 16 | + |
| 17 | +In Odoo, a "temporary" reordering rule is created in the replenishment dashboard when a product: |
| 18 | + |
| 19 | +#. is configured with a *Buy* route |
| 20 | +#. has no reordering rule configured |
| 21 | +#. has `0` quantity in stock |
| 22 | +#. is included in a sales order (SO). |
| 23 | + |
| 24 | +This rule is deleted upon confirmation of the purchase order (PO) generated for the product. |
| 25 | + |
| 26 | +.. seealso:: |
| 27 | + - :doc:`../../inventory/product_management/product_replenishment/reordering_rules` |
| 28 | + - :doc:`../../purchase/products/reordering` |
| 29 | + |
| 30 | +Configuration |
| 31 | +============= |
| 32 | + |
| 33 | +To configure a product that triggers temporary reordering rules when its stock reaches `0`, begin by |
| 34 | +going to :menuselection:`Inventory app --> Products --> Products`, and click :guilabel:`New`. |
| 35 | + |
| 36 | +.. note:: |
| 37 | + The same configurations can also be made on an existing product, by going to |
| 38 | + :menuselection:`Inventory app --> Products --> Products`, and selecting an existing product. |
| 39 | + |
| 40 | +On the product form, enter the product name, and ensure the :guilabel:`Can be Sold` and |
| 41 | +:guilabel:`Can be Purchased` options are enabled, located beneath the :guilabel:`Product Name` |
| 42 | +field. |
| 43 | + |
| 44 | +Then, set the :guilabel:`Product Type` to `Storable Product`, under the :guilabel:`General |
| 45 | +Information` tab. |
| 46 | + |
| 47 | +Next, click the :guilabel:`Purchase` tab, and under :guilabel:`Vendor`, click :guilabel:`Add a line` |
| 48 | +to select a vendor from the drop-down menu. Then, set a purchase price under :guilabel:`Price`. |
| 49 | + |
| 50 | +.. important:: |
| 51 | + A vendor **must** be set for temporary reordering rules to work. While a :abbr:`PO (purchase |
| 52 | + order)` can still be created automatically, attempting to replenish the product from the |
| 53 | + :guilabel:`Replenishment` dashboard in the *Inventory* app triggers a warning to add a vendor on |
| 54 | + the product form. |
| 55 | + |
| 56 | + .. image:: temporary_reordering/temporary-reordering-warning-popup.png |
| 57 | + :align: center |
| 58 | + :alt: Warning pop-up upon clicking to replenish product with no set vendor. |
| 59 | + |
| 60 | +Before creating a :abbr:`SO (sales order)` for the product, ensure the :guilabel:`On Hand` smart |
| 61 | +button on the product form reads `0.00 Units`. Then, ensure that the :guilabel:`Reordering Rules` |
| 62 | +smart button reads `0`, indicating there are no rules applied to this product. |
| 63 | + |
| 64 | +.. image:: temporary_reordering/temporary-reordering-smart-buttons.png |
| 65 | + :align: center |
| 66 | + :alt: Product form smart button row displaying reordering rules and on hand buttons. |
| 67 | + |
| 68 | +Trigger temporary reordering rule |
| 69 | +================================= |
| 70 | + |
| 71 | +To trigger a temporary reordering rule, create a new sales order for a product by navigating to |
| 72 | +:menuselection:`Sales app --> New`. |
| 73 | + |
| 74 | +Then, add a customer in the :guilabel:`Customer` field, and click :guilabel:`Add a product` under |
| 75 | +the :guilabel:`Product` column in the :guilabel:`Order Lines` tab. Next, select the desired product |
| 76 | +from the drop-down menu. Lastly, :guilabel:`Confirm` the :abbr:`SO (sales order)`. |
| 77 | + |
| 78 | +.. image:: temporary_reordering/temporary-reordering-sales-order.png |
| 79 | + :align: center |
| 80 | + :alt: Sales order for product with no set reordering rules. |
| 81 | + |
| 82 | +Check replenishment report |
| 83 | +========================== |
| 84 | + |
| 85 | +To see the temporary reordering rule created for the out-of-stock product included in the sales |
| 86 | +order, navigate to :menuselection:`Inventory app --> Operations --> Replenishment`. Doing so opens |
| 87 | +the :guilabel:`Replenishment` dashboard. |
| 88 | + |
| 89 | +On this dashboard, locate the product for which the temporary reordering rule was created. On its |
| 90 | +product line, its :guilabel:`On Hand` quantity, negative :guilabel:`Forecast` quantity, *Buy* |
| 91 | +:guilabel:`Route`, and :guilabel:`To Order` quantity to replenish can be seen. |
| 92 | + |
| 93 | +Additionally, two replenishment options are located to the far-right of the row: :guilabel:`Order |
| 94 | +Once` and :guilabel:`Automate`. |
| 95 | + |
| 96 | +.. image:: temporary_reordering/temporary-reordering-replenishment-dashboard.png |
| 97 | + :align: center |
| 98 | + :alt: Replenishment report displaying temporary reordering rule and options. |
| 99 | + |
| 100 | +To use the one-time, temporary reordering rule, click :guilabel:`Order Once`. This action triggers a |
| 101 | +confirmation pop-up window in the top-right corner, reading :guilabel:`The following replenishment |
| 102 | +order has been generated`, along with a new purchase order number. |
| 103 | + |
| 104 | +.. tip:: |
| 105 | + Once the purchase order has been generated after clicking :guilabel:`Order Once`, refresh the |
| 106 | + page. The temporary reordering rule for the product no longer appears in the |
| 107 | + :guilabel:`Replenishment` dashboard. |
| 108 | + |
| 109 | +Complete purchase order |
| 110 | +======================= |
| 111 | + |
| 112 | +To view the purchase order created from the :guilabel:`Replenishment` dashboard, navigate to the |
| 113 | +:menuselection:`Purchase app`, and select the generated :abbr:`PO (purchase order)` from the |
| 114 | +:guilabel:`Requests for Quotation` overview. |
| 115 | + |
| 116 | +From here, click :guilabel:`Confirm Order`, then click :guilabel:`Receive Products`. Finally, click |
| 117 | +:guilabel:`Validate` to complete the purchase order. |
| 118 | + |
| 119 | +.. image:: temporary_reordering/temporary-reordering-purchase-order.png |
| 120 | + :align: center |
| 121 | + :alt: Purchase order for product ordered with temporary reordering rule. |
| 122 | + |
| 123 | +Now, the original sales order can be delivered and invoiced. |
| 124 | + |
| 125 | +.. note:: |
| 126 | + Once the :abbr:`SO (sales order)` is delivered and invoiced, ensure there are no reordering rules |
| 127 | + on the product form. |
| 128 | + |
| 129 | + Go to :menuselection:`Inventory app --> Products --> Products`, select the product, and confirm |
| 130 | + that the :guilabel:`Reordering Rules` smart button displays `0`. |
0 commit comments