From 25172a0d055f0ec97a6d234b53b745099b6752f2 Mon Sep 17 00:00:00 2001 From: "John Holton (hojo)" Date: Mon, 9 Sep 2024 18:16:24 +0000 Subject: [PATCH] [ADD] Inventory: product catalog closes odoo/documentation#10997 X-original-commit: 4f2402aec4b333748b52ec94abe2022cf1d776e8 Signed-off-by: Samuel Lieber (sali) Signed-off-by: John Holton (hojo) --- .../inventory_management.rst | 2 +- .../inventory_management/product_catalog.rst | 106 ++++++++++++++++++ .../product_catalog/added-product.png | Bin 0 -> 4507 bytes .../product_catalog/catalog-button.png | Bin 0 -> 2932 bytes .../product_catalog/filter-sidebar.png | Bin 0 -> 13087 bytes .../product_catalog/product-card.png | Bin 0 -> 4362 bytes 6 files changed, 107 insertions(+), 1 deletion(-) create mode 100644 content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog.rst create mode 100644 content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog/added-product.png create mode 100644 content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog/catalog-button.png create mode 100644 content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog/filter-sidebar.png create mode 100644 content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog/product-card.png diff --git a/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management.rst b/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management.rst index 398879f5d..b504268ea 100644 --- a/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management.rst +++ b/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management.rst @@ -138,4 +138,4 @@ provide helpful context, and distinguish between internal and external locations inventory_management/count_products inventory_management/cycle_counts inventory_management/scrap_inventory - + inventory_management/product_catalog diff --git a/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog.rst b/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog.rst new file mode 100644 index 000000000..030e43529 --- /dev/null +++ b/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog.rst @@ -0,0 +1,106 @@ +=============== +Product catalog +=============== + +.. |SO| replace:: :abbr:`SO (sales order)` +.. |SOs| replace:: :abbr:`SOs (sales orders)` +.. |BoM| replace:: :abbr:`BoM (bill of materials)` +.. |RfQ| replace:: :abbr:`RfQ (request for quotation)` + +The product *catalog* is a feature integrated with any Odoo app that allows users to add products or +components to an order. This includes the **Inventory**, **Manufacturing**, **Sales**, **Purchase**, +and **Repairs** apps, among others. + +The product catalog can be accessed from the first tab of a quotation, request for quotation (RfQ), +order, or bill of materials (BoM) form, and opens in a new page when selected. The catalog displays +products and components in a user-friendly, POS-style format, from which they can be selected and +added to forms. + +The product catalog simplifies the creation of new sales orders (SOs), purchase orders (POs), +manufacturing orders (MOs), bill of materials (BoMs), and more, by providing a visual interface +through which products and components can be quickly selected. + +Use product catalog +=================== + +To use the product catalog, begin by creating or opening a quotation, |RfQ|, order, or |BoM| to +which products or components can be added. For example, create a new sales quotation by navigating +to :menuselection:`Sales app`, and clicking :guilabel:`New`. + +On the form (quotation, |RfQ|, order, |BoM|), make sure the first tab on the bottom is selected. +Depending on the form being configured, this tab may be titled *Order Lines*, *Components*, +*Products*, or *Parts*. + +On the first blank line of the tab, click the :guilabel:`Catalog` link to open the catalog in a new +page. + +.. image:: product_catalog/catalog-button.png + :align: center + :alt: The "Catalog" button on the "Order Lines" tab of a sales quotation. + +The product catalog displays a card for each product added to Odoo. Each card displays a few key +details about the corresponding product: + +- Product photo +- Product title +- Price or cost of the product, depending on whether it is bought, sold, or used as a + component +- Reference code (e.g. *DESK0005*) +- On-hand quantity +- Variant attributes (e.g. *Color: White*) + +.. image:: product_catalog/product-card.png + :align: center + :alt: A product card in the product catalog. + +Products can be filtered using the search bar at the top of the page, or the sidebar on the left +side of the page. + +To filter by product type, click the :icon:`fa-caret-down` :guilabel:`(down arrow)` button on the +right side of the search bar to open the search menu. In the :guilabel:`Filters` section, select the +:guilabel:`Services` filter to only show service products, or the :guilabel:`Products` filter to +only show physical products. + +When creating or configuring a quotation or |SO|, specifically, an :guilabel:`In the Order` filter +appears in the :guilabel:`Filters` section of the search bar. Select this filter to only show +products that have already been added to the form. + +In the sidebar on the left side of the page, select an option in the :icon:`fa-th-list` +:guilabel:`PRODUCT CATEGORY` section to filter by product category, or an option in the +:icon:`fa-th-list` :guilabel:`ATTRIBUTES` section to filter by variant attribute. + +.. image:: product_catalog/filter-sidebar.png + :align: center + :alt: The filter sidebar in the product catalog. + +To add a product, click on the product's card, or click the :icon:`fa-shopping-cart` :guilabel:`Add` +button in the bottom-right corner of the card. Doing so adds one unit of the product, which is +displayed in a field in the bottom-left corner of the card. + +Once a product has been added, clicking the product card continues to add units of the product in +increments of one. + +To adjust the quantity of the product added, click the :icon:`fa-minus` :guilabel:`(minus)` button +to reduce the quantity by one, or the :icon:`fa-plus` :guilabel:`(plus)` button to increase it by +one. + +Alternatively, a specific quantity can be entered by selecting the field between the +:icon:`fa-minus` :guilabel:`(minus)` and :icon:`fa-plus` :guilabel:`(plus)` buttons, and typing in +the desired quantity. + +To remove a product from the order or |BoM| entirely, either click the :icon:`fa-trash` +:guilabel:`Remove` button in the bottom-right corner of the product card, or click the +:icon:`fa-minus` :guilabel:`(minus)` button until the quantity has been reduced to zero. + +.. image:: product_catalog/added-product.png + :align: center + :alt: A product card for a product that has been added. + +Once the desired quantity of each product has been added, return to the form by clicking the +:guilabel:`Back to [X]` button at the top of the screen. This button differs depending on the type +of form being configured (quotation, |BoM|, etc.). + +.. important:: + Products appear in the product catalog, and can be added to orders, even if there + are zero units of the product on hand. As a result, it is important to confirm the quantity of a + product being added to an order is actually available, or inventory inconsistencies may arise. diff --git a/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog/added-product.png b/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog/added-product.png new file mode 100644 index 0000000000000000000000000000000000000000..377ccfe4de8501d5d30113d03850a118d9c36943 GIT binary patch literal 4507 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 literal 0 HcmV?d00001 diff --git a/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog/filter-sidebar.png b/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog/filter-sidebar.png new file mode 100644 index 0000000000000000000000000000000000000000..c94de41bd610f4c454569989c0ab46ae9516706a GIT binary patch literal 13087 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 literal 0 HcmV?d00001 diff --git a/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog/product-card.png b/content/applications/inventory_and_mrp/inventory/warehouses_storage/inventory_management/product_catalog/product-card.png new file mode 100644 index 0000000000000000000000000000000000000000..a438db18f0d9b04a292798970e2d53f3f25fa57c GIT binary patch literal 4362 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 Ef=j?~0ssI2 literal 0 HcmV?d00001