diff --git a/content/applications/inventory_and_mrp/plm/manage_changes.rst b/content/applications/inventory_and_mrp/plm/manage_changes.rst index bde0de177..38e3bca81 100644 --- a/content/applications/inventory_and_mrp/plm/manage_changes.rst +++ b/content/applications/inventory_and_mrp/plm/manage_changes.rst @@ -7,3 +7,4 @@ Change management manage_changes/eco_type manage_changes/engineering_change_orders + manage_changes/version_control diff --git a/content/applications/inventory_and_mrp/plm/manage_changes/version_control.rst b/content/applications/inventory_and_mrp/plm/manage_changes/version_control.rst new file mode 100644 index 000000000..837d12874 --- /dev/null +++ b/content/applications/inventory_and_mrp/plm/manage_changes/version_control.rst @@ -0,0 +1,169 @@ +=============== +Version control +=============== + +.. |BOM| replace:: :abbr:`BoM (Bill of Materials)` +.. |BOMs| replace:: :abbr:`BoMs (Bills of Materials)` +.. |ECO| replace:: :abbr:`ECO (Engineering Change Order)` +.. |ECOs| replace:: :abbr:`ECOs (Engineering Change Orders)` + +Use Odoo's *Product Lifecycle Management (PLM)* to manage previous versions of bills of materials +(BoMs). Store former assembly instructions, component details, and past product design files while +keeping the past details out of the production |BOM|. + +Easily revert to previous |BOM| versions, when needed. Additionally, use *PLM* to trace which |BOM| +version was active on specific dates for recalls or customer complaints. + +Every |BOM| version is stored in an *engineering change order* (ECO) for organized testing and +improvements without disrupting normal manufacturing operations. + +.. seealso:: + :ref:`Engineering change order ` + +Current BoM version +=================== + +To see the current version of the |BOM| used in production, go to :menuselection:`PLM app --> Master +Data --> Bill of Materials`, and select the desired |BOM| from the list. Then, switch to the +:guilabel:`Miscellaneous` tab, where the currently live :guilabel:`Version` of the |BOM| is +displayed. + +.. note:: + |BOMs| can also be accessed from :menuselection:`Manufacturing app --> Products --> Bill of + Materials`. + +.. image:: version_control/current-version.png + :align: center + :alt: Show the current version BOM in the Misc tab. + +Version history +=============== + +To manage all former, current, and future versions of a |BOM|, begin by navigating to +:menuselection:`Manufacturing app --> Products --> Bills of Materials` and click the desired |BOM|. + +From the |BOM| page, click the :guilabel:`ECO` smart button, and switch to list view by selecting +the :guilabel:`≣ (four horizontal lines)` icon on the top right corner. + +.. note:: + The :guilabel:`ECO` smart button is visible on the |BOM| **only** if the *PLM* app is installed. + +.. image:: version_control/eco-smart-button.png + :align: center + :alt: Show ECO smart button on a BoM. + +In the list of |ECOs| for the product, navigate to the search bar at the top, and click the +:guilabel:`▼ (down arrow)` icon on the right to access a drop-down menu of :guilabel:`Filters`. + +Next, filter by :guilabel:`Done` |ECOs| to view: the revision history of the |BOM|, the +:guilabel:`Responsible` user who applied the change, and the :guilabel:`Effective Date` of the +|BOM|. + +Click each |ECO| to view the past components, operations, and design files associated with the +|BOM|. + +.. image:: version_control/eco-list.png + :align: center + :alt: Display ECO revision history for a BoM for a product. + +.. note:: + If the :guilabel:`Effective Date` field is empty, the :guilabel:`Effective` date of the |ECO| is + automatically set to :guilabel:`As soon as possible` and no dates are recorded in the revision + history of the |BOM|. + + .. image:: version_control/no-effective-date.png + :align: center + :alt: List of BOM effective dates. + +.. tip:: + A workaround for checking when the |BOM| went live is by navigating to the chatter, and hovering + over the time the |ECO| was moved to the :ref:`closing stage `. + +Design files +============ + +Attach computer-aided design (CAD) files, PDFs, images, or other design material to the |BOM| +itself. + +To do so, navigate to :menuselection:`PLM app --> Master Data --> Bill of Materials`, and select the +desired |BOM|. On the |BOM|, navigate to the *chatter*, and click the :guilabel:`📎 (paperclip)` +icon. + +The files associated with the |BOM| are displayed in the :guilabel:`Files` section. To add more +design files, select the :guilabel:`Attach files` button. + +.. image:: version_control/attach-files.png + :align: center + :alt: Show paperclip icon in the chatter to attach files to a BoM. + +Manage design files in an ECO +----------------------------- + +Add, modify, and remove files in an |ECO|. Once the |ECO| is approved and applied, the new files are +automatically linked to the production |BOM|. Archived files are removed from the |BOM|, but are +still accessible in the |ECO|. + +To manage the design files in the |ECO|, begin by navigating to :menuselection:`PLM app --> Changes` +and choose the desired |ECO|. Next, open the :guilabel:`Attachments` page by clicking the +:guilabel:`Documents` smart button. + +Hover over each attachment to reveal the :guilabel:`︙ (three vertical dots)` icon. From there, +choose whether to :guilabel:`Edit`, :guilabel:`Remove`, or :guilabel:`Download` the file. Any +changes made to these files are contained within the |ECO|, and will only apply to the production +|BOM| once the :ref:`changes are applied `. + +.. example:: + In the `Create 60% keyboard` |ECO|, the design files are from the original `100% keyboard` |BOM|. + To replace the keyboard PDF, begin by selecting the :guilabel:`Documents` smart button. + + .. image:: version_control/documents-smart-button.png + :align: center + :alt: Show *Documents* smart button from an active ECO. + + On the :guilabel:`Attachments` page, hover over the `100% keyboard manual.pdf` design file, and + click the :guilabel:`︙ (three vertical dots)` icon. Then, click the :guilabel:`Remove` option to + archive the file. + + Next, on the same :guilabel:`Attachments` page, click the :guilabel:`Upload` button to upload the + new design file, named `60% keyboard manual`. + + .. image:: version_control/attachments.png + :align: center + :alt: View of *Attachments* page from the *Documents* smart button. Displays one archived and + one newly added attachment. + +.. note:: + Archived files are **not** permanently deleted — they can still be accessed in the previous + |ECO|, or as an archived file in the latest |ECO|, where the archival occurred. + +Apply rebase +============ + +Odoo simplifies merge conflict resolution for concurrent |ECOs| on the same product. + +Conflicts can occur when the production |BOM| is updated while other |ECOs| are modifying the +previous version. Differences between the new and previous production |BOMs| are displayed in the +:guilabel:`Previous Eco Bom Changes` tab, visible only in this scenario. + +To resolve conflicts and retain |ECO| changes, click the :guilabel:`Apply Rebase` button. + +.. example:: + Two |ECOs|, `ECO0011` and `ECO0012`, are created when the current |BOM| version is `5`. In + `ECO0011`, a new component, `Space stabilizer`, is added, and the changes are applied. This means + the current |BOM| version has become `6`. + + .. image:: version_control/branch-change.png + :align: center + :alt: Apply changes to an ECO to update the production BOM. + + This means `ECO0012` is modifying an outdated |BOM|. As shown in the :guilabel:`Previous Eco Bom + Changes` tab, the |BOM| is missing the `Space stabilizer`. + + To ensure the changes applied by `ECO0011` are kept when the changes occur in `ECO0012`, click + the :guilabel:`Apply Rebase` button to apply the previous |ECO| changes, without affecting the + changes already made to `ECO0012`. + + .. image:: version_control/merge-change.png + :align: center + :alt: Click the *Apply Rebase* button to update the BOM to match the production BOM. + diff --git a/content/applications/inventory_and_mrp/plm/manage_changes/version_control/attach-files.png b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/attach-files.png new file mode 100644 index 000000000..bee3d1387 Binary files /dev/null and b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/attach-files.png differ diff --git a/content/applications/inventory_and_mrp/plm/manage_changes/version_control/attachments.png b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/attachments.png new file mode 100644 index 000000000..1e01ed207 Binary files /dev/null and b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/attachments.png differ diff --git a/content/applications/inventory_and_mrp/plm/manage_changes/version_control/branch-change.png b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/branch-change.png new file mode 100644 index 000000000..6499e744e Binary files /dev/null and b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/branch-change.png differ diff --git a/content/applications/inventory_and_mrp/plm/manage_changes/version_control/current-version.png b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/current-version.png new file mode 100644 index 000000000..60cf40235 Binary files /dev/null and b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/current-version.png differ diff --git a/content/applications/inventory_and_mrp/plm/manage_changes/version_control/documents-smart-button.png b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/documents-smart-button.png new file mode 100644 index 000000000..16e71692d Binary files /dev/null and b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/documents-smart-button.png differ diff --git a/content/applications/inventory_and_mrp/plm/manage_changes/version_control/eco-list.png b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/eco-list.png new file mode 100644 index 000000000..383de824c Binary files /dev/null and b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/eco-list.png differ diff --git a/content/applications/inventory_and_mrp/plm/manage_changes/version_control/eco-smart-button.png b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/eco-smart-button.png new file mode 100644 index 000000000..f33e7a43c Binary files /dev/null and b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/eco-smart-button.png differ diff --git a/content/applications/inventory_and_mrp/plm/manage_changes/version_control/merge-change.png b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/merge-change.png new file mode 100644 index 000000000..772071115 Binary files /dev/null and b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/merge-change.png differ diff --git a/content/applications/inventory_and_mrp/plm/manage_changes/version_control/no-effective-date.png b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/no-effective-date.png new file mode 100644 index 000000000..b685730b0 Binary files /dev/null and b/content/applications/inventory_and_mrp/plm/manage_changes/version_control/no-effective-date.png differ