[ADD] inventory: dispatch management system

closes odoo/documentation#11268

X-original-commit: ad6843be92
Signed-off-by: Felicia Kuan (feku) <feku@odoo.com>
Co-authored-by: larm-odoo <121518652+larm-odoo@users.noreply.github.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com>
This commit is contained in:
Felicious 2024-10-09 18:47:36 +00:00
parent 11cc952979
commit eed7e42a14
15 changed files with 274 additions and 0 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

View File

@ -192,6 +192,12 @@ The order of the list does not affect the database in any way. However, it may b
the vehicle categories in a specific order, for example, by size, or the numbers of passengers the
vehicle can carry.
.. note::
When used with the **Inventory** app, the :guilabel:`Max Weight` and :guilabel:`Max Volume`
fields track a vehicle's capacity. This helps manage in-house deliveries by :doc:`showing how
much space and weight remain for loading products
<../../inventory_and_mrp/inventory/shipping_receiving/setup_configuration/dispatch>`.
.. image:: models/categories.png
:align: center
:alt: List view of the models in the fleet.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.0 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -285,3 +285,4 @@ delivery order. To add or change the delivery method on the delivery itself, go
setup_configuration/label_type
setup_configuration/multipack
setup_configuration/print_on_validation
setup_configuration/dispatch

View File

@ -0,0 +1,267 @@
==========================
Dispatch management system
==========================
The *dispatch management system* feature in Odoo is used to plan and build shipments. Key features
include:
- **Load building**: Group products for specific carriers, assign those :doc:`batches
<../picking_methods/batch>` to loading docks, and manage vehicle assignments based on fleet
capacity. This ensures the right products are packed into the appropriate trucks for delivery.
- :doc:`Fleet management <../../../../hr/fleet>`: Track and manage the capacity of in-house
delivery vehicles.
Configuration
=============
To use the dispatch management system, the following setup must be completed:
#. :ref:`Install <general/install>` the **Fleet** application.
#. Configure vehicle :ref:`capacity (volume and weight)
<inventory/shipping_receiving/vehicle-capacity>`.
#. Enter vehicle :doc:`car model(s) <../../../../hr/fleet/models>`.
#. Enable :ref:`necessary features <inventory/shipping_receiving/inventory-features>` in the
**Inventory** app.
#. Set up :ref:`vehicles as delivery methods
<inventory/shipping_receiving/delivery-method-for-carrier>`.
#. Create :ref:`dock locations <inventory/shipping_receiving/docks>`.
.. _inventory/shipping_receiving/vehicle-capacity:
Vehicle capacity
----------------
To configure the vehicle capacity, go to :menuselection:`Fleet app --> Configuration -->
Categories`.
Next, click :guilabel:`New` to add a new category, or click into an existing category to modify it.
In the :guilabel:`Name` field, enter the type of vehicle (e.g., `Pick-up truck`, `Van`, or `Cargo
truck`). Then, enter the vehicle capacity in the :guilabel:`Max Weight` (in kilograms) and
:guilabel:`Max Volume` (in cubic meters) fields.
.. image:: dispatch/categories.png
:alt: Vehicle categories with defined weight and volume.
.. note::
The units of measurement for vehicle capacity are assigned at the global level in the
**Settings** app, in the :guilabel:`Units of Measure` section.
.. image:: dispatch/settings.png
:alt: Show units of measure settings.
.. seealso::
:ref:`Vehicle category <fleet/categories>`
Car model
---------
Configuring a vehicle's car model is required when adding vehicles in Odoo. Ensure the correct
*Category* is selected for a car model. Doing so automatically applies weight and volume capacities
to all vehicles of that type.
To configure, navigate to :menuselection:`Fleet app --> Configuration --> Models`.
From the :guilabel:`Models` list, select an existing model, or click :guilabel:`New` in the top-left
corner to create a new model. Then, set the relevant :guilabel:`Category` field to the relevant
vehicle category.
.. seealso::
:doc:`Create car model <../../../../hr/fleet/models>`
.. _inventory/shipping_receiving/inventory-features:
Inventory settings
------------------
Next, go to :menuselection:`Inventory app --> Configuration --> Settings`, and enable the required
features for dispatch management.
In the :guilabel:`Operations` section, tick the :guilabel:`Batch, Wave & Cluster Transfers`
checkbox to prepare batches of orders for delivery.
In the :guilabel:`Shipping` section, tick the :guilabel:`Delivery Methods` and :guilabel:`Dispatch
Management System` checkboxes. Doing so allows specific vehicles to be :ref:`set as carriers
<inventory/shipping_receiving/delivery-method-for-carrier>`.
In the :guilabel:`Warehouse` section, tick the :guilabel:`Storage Locations` checkbox to assign
specific locations in the warehouse as loading zones for delivery trucks.
Then, once all the configurations are complete, be sure to click :guilabel:`Save`.
.. _inventory/shipping_receiving/delivery-method-for-carrier:
Delivery method
---------------
Next, assign each delivery vehicle as a *Carrier* by configuring a delivery method.
To configure delivery methods, go to :menuselection:`Inventory app --> Configuration --> Delivery
Methods`. Select an existing delivery method, or click :guilabel:`New`.
.. seealso::
:doc:`Configure delivery method <../setup_configuration>`
On the :guilabel:`Delivery Method` form, enter a name for the delivery method. It is recommended to
use identifying information, such as the vehicle description and license plate number (e.g. `Truck
123-ABCD`).
Since the delivery methods are managed internally, set the :guilabel:`Provider` to either
:guilabel:`Fixed Price` or :guilabel:`Based on Rules`. For more information about how shipping
prices are calculated, refer to the :doc:`Delivery method <../setup_configuration>` article.
Next, set a :guilabel:`Delivery Product`, which is the product that shows up as the customer's
:ref:`delivery charge <inventory/shipping_receiving/delivery-product>` on the sales order or
invoice.
Optionally, in the :guilabel:`Availability` tab, set the :guilabel:`Countries`, :guilabel:`States`,
or :guilabel:`Zip Prefixes` to limit the range of local delivery.
.. figure:: dispatch/delivery-method.png
:alt: Delivery method form.
Example delivery method, with the :guilabel:`Zip Prefixes` set to San Francisco's zip code.
.. _inventory/shipping_receiving/docks:
Dock locations
--------------
Each loading dock must have a dedicated location. To create or configure dock locations, go to
:menuselection:`Inventory app --> Configuration --> Locations`.
Click the desired location, which opens the :guilabel:`Location` form. In the :guilabel:`Additional
Information` section, tick the :guilabel:`Is a Dock Location` checkbox.
.. figure:: dispatch/dock-location.png
:alt: Location configuration.
Location configuration page with :guilabel:`Is a Dock Location` checkbox ticked.
Build loads
===========
Once setup is complete, :ref:`assign orders to a carrier
<inventory/shipping_receiving/assign-carrier>` and :ref:`group them into batches
<inventory/shipping_receiving/create-batch>`. Then, :ref:`configure the batch form
<inventory/shipping_receiving/batch-form>`, as needed.
To group products, go to the :menuselection:`Inventory app --> Operations --> Deliveries`, which
reveals a list of outgoing deliveries.
.. seealso::
Since this article is about a specific use case, explore details about each picking method in
their dedicated articles.
- :doc:`../picking_methods/batch`
- :doc:`Wave picking <../picking_methods/wave>`
- :doc:`../picking_methods/cluster`
.. _inventory/shipping_receiving/assign-carrier:
Carrier assignment
------------------
Reveal the *Carrier* column, if it is not visible by default, by clicking the
:icon:`oi-settings-adjust` :guilabel:`(settings)` icon in the top-right corner, and ticking the
:guilabel:`Carrier` checkbox.
.. tip::
Other useful columns to enable can be :guilabel:`Zip` code, :guilabel:`Shipping Weight`, and
:guilabel:`Shipping Volume`.
Select the delivery orders for the batch by ticking the checkboxes on the left. Next, click into the
line's :guilabel:`Carrier` fields. In the resulting drop-down menu, choose the desired vehicle's
:ref:`delivery method <inventory/shipping_receiving/delivery-method-for-carrier>`. A
:guilabel:`Confirmation` pop-up window appears, indicating the number of orders being added to the
batch. Click :guilabel:`Confirm`, and the carrier is updated for all the selected records.
.. figure:: dispatch/set-carrier.png
:alt: Set carrier.
The delivery method `Truck 1-MER-001` is set as the :guilabel:`Carrier` for two delivery orders.
.. _inventory/shipping_receiving/create-batch:
Create batch
------------
With the carrier set, begin adding orders to a batch or wave transfer by ticking the checkbox.
.. note::
If a delivery order is already assigned to a batch transfer, assigning a batch transfer here does
**not** update it.
Then, click the :icon:`fa-cog` :guilabel:`Actions` button, and click either :guilabel:`Add to batch`
or :guilabel:`Add to wave`. In the pop-up window, ensure :guilabel:`Add to` is set to :guilabel:`a
new [batch/wave] transfer`, then click :guilabel:`Confirm`.
.. figure:: dispatch/add-to-wave.png
:alt: Example wave.
Delivery orders are selected to be grouped into a wave transfer.
Alternative batch creation method
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Another place to create batches is by going to the :menuselection:`Inventory` app, and in the
:guilabel:`Delivery Orders` card, click the :icon:`fa-ellipsis-v` :guilabel:`(three dots)` icon. In
the resulting drop-down menu, click :guilabel:`Prepare batch`.
.. note::
The :guilabel:`Transport Management` drop-down menu contains other tools for fleet management:
- :guilabel:`Manage Batches`: open list of batches
- :guilabel:`Dock Dispatching`: open weekly calendar view of scheduled batch operations
- :guilabel:`Batches by Route`: Kanban view of batches grouped by fulfillment route
- :guilabel:`Calendar`: open hourly calendar view of scheduled operations
- :guilabel:`Statistics`: open pivot table of the batch transfers
.. image:: dispatch/prepare-batch.png
:alt: Show prepare batch option from the Transport Management drop-down menu.
.. _inventory/shipping_receiving/batch-form:
Batch form
----------
On the batch transfer form, fill the following fields out accordingly:
- :guilabel:`Responsible`: employee assigned to the picking. Leave blank if *any* worker can fulfill
this picking.
- :guilabel:`Operation Type`: from the drop-down menu, select the operation type under which the
picking is categorized.
- :guilabel:`Scheduled Date`: specifies the date by which the :guilabel:`Responsible` person should
complete the transfer to the output location.
- :guilabel:`Dock Location`: select the loading location.
- :guilabel:`Vehicle`: select the vehicle, which will auto-fill :guilabel:`Vehicle Category`.
- :guilabel:`Vehicle Category`: show if the order exceeds the :ref:`vehicle's capacity limits
<inventory/shipping_receiving/vehicle-capacity>`
.. example::
The :guilabel:`Volume` bar is grayed out because the capacity has been reached.
.. image:: dispatch/batch-form.png
:alt: Show batch form.
Prepare delivery route
~~~~~~~~~~~~~~~~~~~~~~
To help the driver prepare, click the :guilabel:`Map` button at the top of the batch or wave form to
view delivery destinations on a map. Selecting an individual delivery order pinpoints its location.
.. note::
The :guilabel:`Map` button is only visible for transfers with the :guilabel:`In progress` status.
.. image:: dispatch/map.png
:alt: Show map in Odoo, with information of the delivery orders.
Additionally, use the :guilabel:`View in Google Maps` button to generate a route from the warehouse
to the delivery points.
.. image:: dispatch/google-map.png
:alt: Show Google Map route.

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB