Skip to Content
Odoo Меню
  • Увійти
  • Спробуйте це безкоштовно
  • Додатки
    Фінанси
    • Бухоблік
    • Виставлення рахунку
    • Витрати
    • Електронні таблиці (BI)
    • Документи
    • Підпис
    Продажі
    • CRM
    • Продажі
    • POS Магазин
    • POS Ресторан
    • Підписки
    • Оренда
    Веб-сайти
    • Конструктор веб-сайту
    • Електронна комерція
    • Блог
    • Форум
    • Живий чат
    • Електронне навчання
    Ланцюг поставок
    • Склад
    • Виробництво
    • PLM
    • Купівлі
    • Технічне обслуговування
    • Якість
    Кадри
    • Співробітники
    • Рекрутинг
    • Відпустки
    • Оцінювання
    • Рекомендації
    • Автотранспорт
    Маркетинг
    • Маркетинг соцмереж
    • Email-маркетинг
    • SMS-маркетинг
    • Події
    • Автом. маркетингу
    • Опитування
    Послуги
    • Проект
    • Табелі
    • Виїзне обслуговування
    • Служба підтримки
    • Планування
    • Призначення
    Продуктивність
    • Обговорення
    • Схвалення
    • IoT
    • IP-телефонія
    • База знань
    • WhatsApp
    Сторонні модулі Odoo Studio Платформа Odoo Cloud
  • Сфери
    Роздрібна торгівля
    • Книжковий магазин
    • Магазин одягу
    • Магазин меблів
    • Продуктовий магазин
    • Магазин будівельних матеріалів
    • Магазин іграшок
    Food & Hospitality
    • Бар та паб
    • Ресторан
    • Фастфуд
    • Guest House
    • Дистриб'ютор напоїв
    • Hotel
    Нерухомість
    • Real Estate Agency
    • Архітектурна фірма
    • Будівництво
    • Управління нерухомістю
    • Садівництво
    • Асоціація власників нерухомості
    Консалтинг
    • Бухгалтерська компанія
    • Партнер Odoo
    • Агенція маркетингу
    • Юридична фірма
    • Придбання Талантів
    • Аудит та сертифікація
    Виробництво
    • Textile
    • Metal
    • Меблі
    • Їжа
    • Brewery
    • Корпоративні подарунки
    Здоров'я & Фітнес
    • Спортивний клуб
    • Оптика
    • Фітнес-центр
    • Практики здоров'я
    • Аптека
    • Салон краси
    Trades
    • Ремонтник
    • IT-обладнання та Підтримка
    • Системи сонячної енергії
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Інші
    • Nonprofit Organization
    • Екологічна агенція
    • Оренда білбордів
    • Фотографія
    • Лізинг велосипедів
    • Реселлер програмного забезпечення
    Browse all Industries
  • Спільнота
    Навчання
    • Навчальний посібник
    • Документація
    • Сертифікації
    • Тренування
    • Блог
    • Подкаст
    Сприяйте Освіті
    • Програма навчання
    • Бізнес гра Scale Up!
    • Відвідайте Odoo
    Отримайте програмне забезпечення
    • Завантаження
    • Порівняйте версії
    • Релізи
    Співпрацюйте
    • Github
    • Форум
    • Події
    • Переклади
    • Стати партнером
    • Services for Partners
    • Зареєструйте вашу бухгалтерську фірму
    Отримайте послуги
    • Знайдіть партнера
    • Знайдіть бухгалтера
    • Зустріньтеся з консультантом
    • Послуги з впровадження
    • Референси клієнтів
    • Підтримка
    • Оновлення
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Отримати демо
  • Ціни
  • Допомога

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Бухоблік
  • Склад
  • PoS
  • Проект
  • MRP
All apps
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
All Posts Люди Значки
Мітки (View all)
CFDI4.0 CartaPorte Multiple-companies email odoo.sh
Про цей форум
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
All Posts Люди Значки
Мітки (View all)
CFDI4.0 CartaPorte Multiple-companies email odoo.sh
Про цей форум
  1. Miscellaneous
  2. Форум

How to Prevent Cross-Replication of Applications and Settings in a Multi-Company Environment?

Підписатися

Отримуйте сповіщення про активність щодо цієї публікації

Це запитання позначене
Multiple-companiesapps
1 Відповісти
3541 Переглядів
Аватар
Dayron

¿Is there any way to prevent the applications and settings I configure for one of my companies in a multi-company environment from being replicated in the others? For example, I have electronic invoicing for two companies in different countries, which are unrelated, yet the configurations of one are being replicated in the other.

0
Аватар
Відмінити
Аватар
Gracious Joseph
Найкраща відповідь

In a multi-company environment in Odoo, managing configurations and applications independently for each company can sometimes be challenging because certain settings and applications are shared across all companies by default. However, Odoo provides mechanisms to isolate configurations and prevent cross-replication of settings.

Here’s how you can achieve this:

1. Understanding Multi-Company Configuration

  • Shared Data:
    • Some models and settings, such as users, apps, and certain configurations, are shared globally across companies.
  • Company-Specific Settings:
    • Other settings, like fiscal positions, taxes, and journals, can be configured per company.

2. Steps to Prevent Cross-Replication of Settings

A. Isolate Applications Per Company

  1. Activate Multi-Company Feature:
    • Go to Settings > Users & Companies > Companies.
    • Ensure each company is listed with the appropriate settings.
  2. Assign Users to Specific Companies:
    • Navigate to Settings > Users & Companies > Users.
    • Assign each user to their respective company under the Allowed Companies field.
    • Use the Default Company field to set the primary company for the user.
  3. Restrict User Access:
    • Ensure users are restricted to their assigned companies by enabling the multi-company rules:
      • Go to Settings > Technical > Security > Record Rules.
      • Check rules such as res.company to enforce isolation of company data.

B. Configure Applications Separately

Many applications, like Invoicing, Accounting, and Electronic Invoicing, need company-specific configurations. Here's how to isolate their settings:

  1. Electronic Invoicing:
    • Ensure separate journals, tax configurations, and fiscal positions for each company:
      • Go to Accounting > Configuration > Journals and create company-specific journals.
      • Set the Company field in each journal to the respective company.
    • Configure electronic invoicing independently for each company:
      • Go to Accounting > Configuration > Settings.
      • Switch the company context (via the dropdown in the top-right corner) and configure the settings separately.
  2. Company-Specific App Settings:
    • For apps like Sales, Purchases, and Inventory, switch the company context and configure independently:
      • For example, in Sales, create separate price lists, payment terms, and delivery methods for each company.
  3. Restrict Shared Modules:
    • Certain modules like HR or CRM might share configurations across companies. Use record rules to enforce isolation:
      • Navigate to Settings > Technical > Security > Record Rules.
      • Add a rule for the specific model (e.g., hr.employee for HR) to filter data by company:
        ['|', ('company_id', '=', False), ('company_id', '=', user.company_id.id)]
        

C. Prevent Shared Configurations in Global Settings

Some global configurations are shared by default (e.g., SMTP email servers, payment acquirers). You can isolate these by:

  1. Using Company-Specific Email Servers:
    • Go to Settings > Technical > Email > Outgoing Mail Servers.
    • Create a separate mail server for each company.
    • Assign the respective company in the Company field.
  2. Company-Specific Payment Acquirers:
    • Navigate to Settings > Payments > Payment Acquirers.
    • Configure a separate payment acquirer (e.g., PayPal, Stripe) for each company and assign it to the correct company.

3. Advanced Techniques

A. Use Record Rules for Data Isolation

Create custom record rules for critical models to prevent cross-replication of settings and records:

  1. Go to Settings > Technical > Security > Record Rules.
  2. Add a new rule for the model you want to isolate (e.g., account.journal).
  3. Use a domain like this:
    [('company_id', '=', user.company_id.id)]
    
  4. Assign the rule to the appropriate groups or users.

B. Custom Code for Deeper Isolation

For more complex scenarios, you can extend Odoo models or views to enforce company-specific logic programmatically.

Example: Restrict certain settings for a company

from odoo import models, api

class ResConfigSettings(models.TransientModel):
    _inherit = 'res.config.settings'

    @api.model
    def default_get(self, fields):
        res = super(ResConfigSettings, self).default_get(fields)
        if self.env.user.company_id.name == 'Company A':
            res['field_x'] = 'Company A Default Value'
        return res

4. Switching Companies for Configuration

Ensure you always switch to the relevant company context when configuring applications:

  • Use the company selector in the top-right corner of the Odoo interface to change the active company.
  • Configure settings, fiscal rules, or workflows for the selected company.

5. Best Practices

  • Test in a Sandbox: Always test multi-company configurations in a sandbox environment before rolling them out.
  • Document Configurations: Maintain clear documentation of what settings are applied to each company.
  • Train Users: Ensure users understand how to use the multi-company dropdown and their company restrictions.

By implementing these measures, you can effectively prevent the cross-replication of settings and applications in a multi-company Odoo environment. Let me know if you need further guidance or help implementing specific configurations!

0
Аватар
Відмінити
Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Реєстрація
Related Posts Відповіді Переглядів Дія
How can I customise Odoo to fit my business needs?"
apps
Аватар
0
квіт. 25
4
Multiple companies - how to differentiate views
Multiple-companies views-differentiation
Аватар
Аватар
1
трав. 25
3187
Timbrado de complementos de pago
CFDI4.0 odoo certification apps
Аватар
0
серп. 25
1
Спільнота
  • Навчальний посібник
  • Документація
  • Форум
Open Source
  • Завантаження
  • Github
  • Runbot
  • Переклади
Послуги
  • Хостинг Odoo.sh
  • Підтримка
  • Оновлення
  • Кастомні доробки
  • Навчання
  • Знайдіть бухгалтера
  • Знайдіть партнера
  • Стати партнером
Про нас
  • Наша компанія
  • Торгові активи
  • Зв'яжіться з нами
  • Вакансії
  • Події
  • Подкаст
  • Блог
  • Клієнти
  • Юридичні документи • Конфіденційність
  • Безпека
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo - це набір програм для роботи з відкритим кодом, які охоплюють всі ваші потреби компанії: CRM, електронна комерція, бухгалтерський облік, склад, точка продажу, управління проектами тощо.

Унікальна пропозиція Odoo - це одночасно дуже проста у використанні та повністю інтегрована.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now