From f836a2c5ada2ea7743c09eb691cc69a548c04631 Mon Sep 17 00:00:00 2001 From: jero-odoo Date: Wed, 26 Jun 2024 13:01:27 -0400 Subject: [PATCH] [ADD] General: Multi Company closes odoo/documentation#10050 X-original-commit: 0e82e606733876cb753132fd4517942d182210b2 Signed-off-by: Jessica Rogers (jero) Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com> Co-authored-by: Sam Lieber (sali) <36018073+samueljlieber@users.noreply.github.com> --- content/applications/general.rst | 1 + content/applications/general/companies.rst | 4 + .../applications/general/multi_company.rst | 115 ++++++++++++++++++ .../general/multi_company/company-access.png | Bin 0 -> 23720 bytes 4 files changed, 120 insertions(+) create mode 100644 content/applications/general/multi_company.rst create mode 100644 content/applications/general/multi_company/company-access.png diff --git a/content/applications/general.rst b/content/applications/general.rst index c23cc7021..494420b93 100644 --- a/content/applications/general.rst +++ b/content/applications/general.rst @@ -7,6 +7,7 @@ General settings general/apps_modules general/users general/companies + general/multi_company general/iot general/email_communication general/integrations diff --git a/content/applications/general/companies.rst b/content/applications/general/companies.rst index 27dcf4f29..c8db78f36 100644 --- a/content/applications/general/companies.rst +++ b/content/applications/general/companies.rst @@ -133,6 +133,8 @@ appears. For more information on pricing, see `Odoo's pricing `_ page. +.. _general/employee-access: + Employee access =============== @@ -189,6 +191,8 @@ Document Layout` and edit the information as needed. populated from the company information listed, when navigating here: :menuselection:`Settings app --> Companies section --> Manage Companies`, and select a company from the list. +.. _general/inter-company: + Inter-company transactions ========================== diff --git a/content/applications/general/multi_company.rst b/content/applications/general/multi_company.rst new file mode 100644 index 000000000..4bcb3d66b --- /dev/null +++ b/content/applications/general/multi_company.rst @@ -0,0 +1,115 @@ +============= +Multi-company +============= + +.. |mcd| replace:: multi-company database + +In Odoo, multiple companies can exist within a single database. This allows for some data to be +shared among companies, while still maintaining some level of separation between entities. + +Before deciding to use the multi-company feature, there are several factors to consider. + +.. important:: + Multi-company is **only** available in *One App Free* databases, or with `Custom + `_ plans. + +Accessing multiple companies +============================ + +The list of :ref:`companies an employee has access to ` in a |mcd| can be +found at the top-right of the main Odoo menu bar, where the active company is listed. Click on the +company name to reveal a list of all allowed companies. To switch to a different company, click on +the company name in the drop-down menu. To enable multiple companies at once, tick the checkbox next +to each desired company name. + +.. figure:: multi_company/company-access.png + :align: center + :alt: An example of the list of companies a user has access to when logged into a database. + + An example of a user with access to multiple companies. The current company is My Company (San + Francisco), while My Company (Chicago) is also active. + +.. note:: + The database may refresh after each checkbox is ticked. + +.. _general/active-companies: + +Multiple active companies +------------------------- + +If more than one company is active at a time, one company is highlighted in purple, and is listed on +the menu bar. This is the considered the *current* company. + +When creating a new record, the current company is added to the record in the *Company* field, +except under the following circumstances: + +- The *Company* field for a new product, or a new contact, is left blank. +- If there is a related document already in the system, the *Company* field on the new record + defaults to the same company. + +.. example:: + Mitchell Admin has multiple companies enabled, but the current company is `My Company (Chicago)`. + When he creates a new product record, the :guilabel:`Company` field is left blank by default. + + When he creates a new sales team, the :guilabel:`Company` field automatically defaults to `My + Company (Chicago)`. + +Sharing data +============ + +In a |mcd|, certain records are able to be utilized by all of the companies (or several, based on +permissions). + +Products +-------- + +In an |mcd|, new products are created with the :ref:`Company field ` +blank, by default. If the *Company* field remains blank, the product is shared across all companies. + +Contacts +-------- + +Similar to products, contact records are shared across companies, by default. To limit access to a +single company, click the :ref:`Company field ` on a contact form, and +select a company to assign the contact to. + +Inter-company transactions +========================== + +The :ref:`Inter-Company Transactions ` feature allows for one company in the +database to sell or purchase goods and services from another company within the same database. +Counterpart documents for orders and invoices can be automatically generated and synchronized, +depending on the configuration settings. + +.. warning:: + To ensure inter-company transactions are handled appropriately, certain configurations, such as + fiscal positions and localizations, need to be accurately assigned. See :ref:`Inter-Company + Transactions ` for additional information. + +Use cases +========= + +Multinational companies +----------------------- + +A multinational retail chain, which operates in the United States and Canada, needs to manage +transactions in both USD and CAD currencies. + +Additionally, because both countries have different tax laws and regulations, it is in the best +interest of the customer to utilize the multi-company feature. + +This allows for inter-company transactions they need to manage inventory moves across international +borders, while making it simple to sell to customers in both countries in their own currency. + +Separate processes +------------------ + +A small furniture company is developing a new line of products that require a separate procurement, +inventory, and manufacturing process. The new products are drastically different from the existing +catalog. The company is considering utilizing the multi-company feature to treat this new line as a +different entity. + +To keep their database from becoming overly complex, the furniture company does not need to add an +entirely new company. Instead, they can take advantage of existing features, such as :doc:`analytic +accounting <../finance/accounting/reporting/analytic_accounting>`, and multiple warehouses, to +manage the new product line, without having to overly complicate transactions. diff --git a/content/applications/general/multi_company/company-access.png b/content/applications/general/multi_company/company-access.png new file mode 100644 index 0000000000000000000000000000000000000000..c7dc98361fdbdb4b7121e42adeb8996a71aa43c6 GIT binary patch literal 23720 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