|
| 1 | +=============== |
| 2 | +Cluster picking |
| 3 | +=============== |
| 4 | + |
| 5 | +.. _inventory/misc/cluster_picking: |
| 6 | + |
| 7 | +.. |SO| replace:: :abbr:`SO (Sales Order)` |
| 8 | +.. |SOS| replace:: :abbr:`SOs (Sales Orders)` |
| 9 | + |
| 10 | +Cluster picking is an advanced order fulfillment approach derived from :ref:`batch picking |
| 11 | +<inventory/misc/batch_picking>`. |
| 12 | + |
| 13 | +In this strategy, pickers load a cart with multiple packages, each designated for a specific *sales |
| 14 | +order* (SO). Then, the picker travels to each storage location, and places the products directly in |
| 15 | +the package of the associated order. |
| 16 | + |
| 17 | +This method is most efficient for medium-sized companies, with high order volumes, and relatively |
| 18 | +few unique products, since the method eliminates the need for sorting products into packages for |
| 19 | +customers after picking. |
| 20 | + |
| 21 | +However, cluster picking does have some disadvantages. For instance, urgent orders cannot be |
| 22 | +prioritized, and optimized batches must be manually created beforehand. As a result, the picking |
| 23 | +process can lead to bottlenecks. |
| 24 | + |
| 25 | +.. _inventory/misc/cluster_picking/example: |
| 26 | + |
| 27 | +.. example:: |
| 28 | + #. |SO| 1 calls for one apple and orange |
| 29 | + #. |SO| 2 calls for one apple and banana |
| 30 | + #. |SO| 3 calls for one apple, orange, and banana |
| 31 | + |
| 32 | + Apples are stored in Shelf A, oranges in Shelf B, and bananas in Shelf C. |
| 33 | + |
| 34 | + To pick products for three orders at once, the cart is loaded with three empty packages. |
| 35 | + |
| 36 | + Starting at Shelf A, the picker places apples into each package. Next, the picker navigates to |
| 37 | + Shelf B, and places oranges in the packages designated for |SO| 1 and |SO| 3. Finally, the picker |
| 38 | + pushes the cart to Shelf C, and loads packages for |SO| 2 and |SO| 3 with a banana, each. |
| 39 | + |
| 40 | + With the packages for all three |SOS| packed, the picker pushes the cart to the output location, |
| 41 | + where the packages are sealed and prepared for shipment. |
| 42 | + |
| 43 | + .. image:: cluster_picking/cluster-example.png |
| 44 | + :align: center |
| 45 | + :alt: Show example of fulfilling sales orders 2 and 3 at once. |
| 46 | + |
| 47 | +Configuration |
| 48 | +============= |
| 49 | + |
| 50 | +To enable cluster picking, begin by navigating to :menuselection:`Inventory app --> Configuration |
| 51 | +--> Settings`. Under the :guilabel:`Operations` heading, activate the :guilabel:`Packages` and |
| 52 | +:guilabel:`Batch Transfers` options. |
| 53 | + |
| 54 | +.. image:: cluster_picking/configs.png |
| 55 | + :align: center |
| 56 | + :alt: Activate *Packages* and *Batch Transfers* features in the settings. |
| 57 | + |
| 58 | +Since batch picking is used to optimize the *pick* operation in Odoo, the :guilabel:`Storage |
| 59 | +Locations` and :guilabel:`Multi-Step Routes` options, under the :guilabel:`Warehouse` heading, must |
| 60 | +also be checked on this settings page. |
| 61 | + |
| 62 | +*Storage locations* allow products to be stored in specific locations they can be picked from, while |
| 63 | +*multi-step routes* enable the picking operation itself. |
| 64 | + |
| 65 | +When finished, click :guilabel:`Save`. |
| 66 | + |
| 67 | +.. image:: cluster_picking/locations-routes-checkbox.png |
| 68 | + :align: center |
| 69 | + :alt: Enable *Storage Locations* and *Multi-Step Routes* Inventory > Configuration > Settings. |
| 70 | + |
| 71 | +.. _inventory/misc/create-package: |
| 72 | + |
| 73 | +Packages setup |
| 74 | +-------------- |
| 75 | + |
| 76 | +After the :guilabel:`Packages` feature is enabled, navigate to :menuselection:`Inventory app --> |
| 77 | +Products --> Packages`, and click the :guilabel:`New` button to create a new package. |
| 78 | + |
| 79 | +On the new package form, the :guilabel:`Package Reference` is pre-filled with the next available |
| 80 | +`PACK` number in the system. :guilabel:`Pack Date` is automatically set to the creation date of the |
| 81 | +form. |
| 82 | + |
| 83 | +For the :guilabel:`Package Use` field, the :guilabel:`Disposable Box` option should be selected if |
| 84 | +the package is used for a shipping. Alternatively, the :guilabel:`Reusable Box` option should be |
| 85 | +selected if the package is simply used as a method of grouping products from the same |SO| together |
| 86 | +before they are moved to the intended shipping box at the output location. |
| 87 | + |
| 88 | +.. seealso:: |
| 89 | + :ref:`Packages <inventory/management/packages>` |
| 90 | + |
| 91 | +.. example:: |
| 92 | + A package intended for cluster picking is named `CLUSTER-PACK-3` for easy identification. For |
| 93 | + this workflow, the products are directly packed using their intended shipping boxes, so |
| 94 | + :guilabel:`Package Use` is set to :guilabel:`Disposable Box`. |
| 95 | + |
| 96 | + .. image:: cluster_picking/cluster-package.png |
| 97 | + :align: center |
| 98 | + :alt: Create new package form. |
| 99 | + |
| 100 | +Create cluster batch |
| 101 | +==================== |
| 102 | + |
| 103 | +To see how cluster picking works in Odoo, navigate to the :menuselection:`Sales` app, and create |
| 104 | +|SOS| that will be fulfilled together in the same batch. After confirming an |SO|, the |
| 105 | +:guilabel:`Delivery` smart button becomes visible. Displayed inside the icon is a number |
| 106 | +representing the amount of steps in the outgoing shipment process. |
| 107 | + |
| 108 | +.. example:: |
| 109 | + Begin by creating three |SOS| for the apples, oranges, and bananas, as shown in the :ref:`example |
| 110 | + above <inventory/misc/cluster_picking/example>`. |
| 111 | + |
| 112 | + After confirming the |SO|, the :guilabel:`Delivery` smart button displays the number `2`, |
| 113 | + indicating there are two operations to complete: `Pick` and `Delivery`. |
| 114 | + |
| 115 | + .. image:: cluster_picking/create-sales-order.png |
| 116 | + :align: center |
| 117 | + :alt: Example sales order for an apple, orange, and banana. |
| 118 | + |
| 119 | +With the |SOS| created, orders now must be grouped into batches. To do so, navigate to the |
| 120 | +*Inventory* dashboard and select the operation type card, :guilabel:`Delivery Orders` or |
| 121 | +:guilabel:`Pick` (whichever is the first operation in the delivery flow). |
| 122 | + |
| 123 | +Doing so displays a filtered list of outgoing operations with the :guilabel:`Ready` status, |
| 124 | +indicating that all the products in the |SO| are in stock. |
| 125 | + |
| 126 | +.. note:: |
| 127 | + Cluster pick batches can be created for outgoing shipments in one, two, or three steps. |
| 128 | + |
| 129 | +.. seealso:: |
| 130 | + - :ref:`Delivery in one step <inventory/receipts_delivery_one_step>` |
| 131 | + - :ref:`Delivery in two steps <inventory/receipts_delivery_two_steps>` |
| 132 | + - :ref:`Delivery in three steps <inventory/delivery_three_steps>` |
| 133 | + |
| 134 | +Click the checkbox to the left of the corresponding outgoing operation to add them to the batch. |
| 135 | +With the desired pickings selected, click the :guilabel:`⚙️ Actions (gear)` button, and select the |
| 136 | +:guilabel:`Add to batch` option from the resulting drop-down menu. |
| 137 | + |
| 138 | +.. example:: |
| 139 | + To create a cluster batch, as shown in the :ref:`example above |
| 140 | + <inventory/misc/cluster_picking/example>`, in a warehouse configured with two-step outgoing |
| 141 | + shipments, the following pick operations are selected: |
| 142 | + |
| 143 | + - `WH/PICK/00007`: linked to |SO| 88 for one apple and orange. |
| 144 | + - `WH/PICK/00008`: linked to |SO| 89 for one apple and banana. |
| 145 | + - `WH/PICK/00009`: linked to |SO| 90 for one apple, orange, and banana. |
| 146 | + |
| 147 | + .. image:: cluster_picking/select-picks.png |
| 148 | + :align: center |
| 149 | + :alt: Use *Add to batch* button, from the *Action* button's list. |
| 150 | + |
| 151 | +Doing so opens an :guilabel:`Add to batch` pop-up window, wherein the employee |
| 152 | +:guilabel:`Responsible` for the picking can be assigned. |
| 153 | + |
| 154 | +Choose from the two options in the :guilabel:`Add to` field to either: add to :guilabel:`an existing |
| 155 | +batch transfer`, or create :guilabel:`a new batch transfer`. |
| 156 | + |
| 157 | +To create draft batch pickings to be confirmed at a later date, select the :guilabel:`Draft` |
| 158 | +checkbox. |
| 159 | + |
| 160 | +Conclude the process by clicking :guilabel:`Confirm`. |
| 161 | + |
| 162 | +.. image:: cluster_picking/add-to-batch-window.png |
| 163 | + :align: center |
| 164 | + :alt: Show *Add to batch* window to create a batch transfer. |
| 165 | + |
| 166 | +Process batches |
| 167 | +=============== |
| 168 | + |
| 169 | +To process batches, navigate to :menuselection:`Inventory app --> Operations --> Batch Transfers`. |
| 170 | +Click on a batch to select it. |
| 171 | + |
| 172 | +In the :guilabel:`Detailed Operations` tab, products that are to be picked are grouped by location. |
| 173 | + |
| 174 | +Under the :guilabel:`Source Package` or :guilabel:`Destination Package` field, enter the package |
| 175 | +used for the picking. |
| 176 | + |
| 177 | +.. note:: |
| 178 | + Use the :guilabel:`Source Package` field when the picking package is configured as *reusable* on |
| 179 | + the :ref:`package form <inventory/misc/create-package>`. This means the products are temporarily |
| 180 | + placed in a container during picking, before getting transferred to their final shipping box. |
| 181 | + |
| 182 | + Alternatively, use the :guilabel:`Destination Package` field when the product is directly placed |
| 183 | + in its *disposable* shipping box during picking. |
| 184 | + |
| 185 | +.. example:: |
| 186 | + Process the cluster batch for the three orders of apples, oranges, and bananas :ref:`example |
| 187 | + <inventory/misc/cluster_picking/example>` by assigning each picking to a dedicated package. |
| 188 | + |
| 189 | + At the storage location for apples, `WH/Stock/Shelf A`, assign the apples in all three pickings |
| 190 | + to one of the three disposable packages, `CLUSTER-PACK-1`, `CLUSTER-PACK-2`, or `CLUSTER-PACK-3`. |
| 191 | + |
| 192 | + Record this in Odoo using the :guilabel:`Destination Package` field in the :guilabel:`Detailed |
| 193 | + Operations` tab. |
| 194 | + |
| 195 | + .. image:: cluster_picking/cluster-batch-example.png |
| 196 | + :align: center |
| 197 | + :alt: Example of processing cluster pickings in *Inventory*. |
| 198 | + |
| 199 | +In Barcode |
| 200 | +---------- |
| 201 | + |
| 202 | +To process cluster pickings directly from the *Barcode* app, select the :guilabel:`Batch Transfers` |
| 203 | +button from the *Barcode* dashboard. Then, select the desired batch. |
| 204 | + |
| 205 | +On the batch transfer screen, the products in the picking are grouped by location, and each line is |
| 206 | +color-coded to associate products in the same picking together. |
| 207 | + |
| 208 | +Then, follow the prompt to :guilabel:`Scan the source location` barcode for the storage location of |
| 209 | +the first product. Then, scan the barcode for the product and package to process the transfer. |
| 210 | + |
| 211 | +Repeat this for all products, and click the :guilabel:`Validate` button. |
| 212 | + |
| 213 | +.. note:: |
| 214 | + To find the package barcode, navigate to :menuselection:`Inventory app --> Products --> |
| 215 | + Packages`, select the desired package, click the :guilabel:`⚙️ (gear)` icon at the top of the |
| 216 | + package form, and select the :guilabel:`Print` option. |
| 217 | + |
| 218 | + Next, select one of the three print options to generate the package barcode from the |
| 219 | + :guilabel:`Package Reference` field. |
| 220 | + |
| 221 | + .. image:: cluster_picking/find-package-barcode.png |
| 222 | + :align: center |
| 223 | + :alt: Display where the package barcode can be generated. |
| 224 | + |
| 225 | +.. example:: |
| 226 | + Begin processing the cluster picking by going to the first storage location, `Shelf A`, and |
| 227 | + scanning the :ref:`location barcode <barcode/setup/location>`. Doing so highlights all the |
| 228 | + pickings that need products from this particular location. |
| 229 | + |
| 230 | + Scan the barcode for the apple, which highlights the picking (labeled in red) for the product |
| 231 | + `Apple`, for the picking, `WH/PICK/00007`. |
| 232 | + |
| 233 | + Then, scan the `CLUSTER-PACK-1` package barcode, and place the product in the designated package. |
| 234 | + |
| 235 | + .. image:: cluster_picking/batch-barcode.png |
| 236 | + :align: center |
| 237 | + :alt: Example of cluster batch from the *Barcode* app. |
| 238 | + |
| 239 | +.. tip:: |
| 240 | + After creating a batch transfer and assigning a package to a picking, Odoo suggests the specified |
| 241 | + package by displaying the name *in italics* under the product name, ensuring pickers place |
| 242 | + products into the correct boxes. |
| 243 | + |
0 commit comments