Multi-Company Configuration In OpenERP 7
OpenERP 7 support multi company configuration in which there can be number of sub companies under a main company or another company itself. The modules installed in my OpenERP 7 are :
-
Sales
-
Purchase
-
Accounting
-
Warehouse
First step of creating a multi-company configuration is defining the companies in OpenERP. This can be done from Setting -> Companies -> Companies. If you can't see this menu, please make sure that the user has all the required access rights configured. Create a new company. To create a sub-company under a main company, create a sub company and assign the main company in the field “Parent Company”. I have created a main company “Main Company” and a “Sub Company 1” and “Sub Company 2” under “Main Company” and “Sub Company 1 Sub” under “Sub Company 1”. The hierarchy is shown in the figure below:
Company Hierarchy
Chart Of Account Configuration:
Now we have to set up the chart of account for each company. To configure chart of account go to Setting -> Configuration -> Invoicing. This will give all the accounting details regarding the company. A screen shot of this menu item is shown below:
Char of Account Configuration
Select the company for which the chart of account has to be configured in field “Select Company” field. If the company has no chart of account configured earlier, a field “Template” in the group “Chart of Account” will be made visible. Select the chart of account for the company and press “Apply” button on top of the view. I we want to install a chart of account apart from that currently installed in OpenERP, click on “Install more chart of account” which lists all the chart of account that are available in OpenERP. User can install any chart of account as he likes.
Location Configuration :
Location Configuration can be done from Warehouse -> Configuration -> Locations. Configure locations for each company. There is a fields called “Company in Location where we can select the company for which he location corresponds. Each company has its own locations configured. The screen shot of the location view is shown below:
Location Configuration
Warehouse Configuration :
Warehouse Configuration can be done from Warehouse -> Configuration -> Warehouses. Configure warehouses for each company. I have creates separate warehouses for each company. The screen shot of the warehouse view is shown below:
Warehouse Configuration
Shop Configuration :
Shop Configuration can be done from Sales -> Configuration -> Shops. Configure a shop for each company. The screen shot of the tree view of the shops configured is shown below:
Shop Configuration
Product Configuration :
Each product can be configured as a global product or product for each individual company. Product can e created and modified form the menu Sales -> Products -> Products. For my example, i am creating 5 products in which one is a global product and other 4 belongs o each company. Lets the product be “Product Global” which is a global product with no company assigned, “Product Sub Company 1” which belong to “Sub Company 1”, “Product Sub Company 2” which belong to “Sub Company 2”, “Product Sub Company 1 Sub” which belong to “Sub Company 1 Sub” and “Product Main Company” which belong to “Main Company”. Each product can be assigned to a company by setting the fields “Company” in the product form view. If the fields is not set, it will be treated as a global product and will be visible be all the company. The kanban view of the product when logged in as an Administrator is shown below:
Product Kanban View When Logged in as Administrator
User Configuration :
In OpenEPR, we can configure the users for separate companies. Users can be created and configured from the menu Settings -> Users -> Users. To create a new users go to this menu and click “Create”. New form view to create the user will be shown. In this view we have the provision to specify the name, login, company, language, access rights, etc for each user. I am creating 4 users who belong to 4 separate companies. Let the users be “Main Company User” who belong to “Main Company”, “Sub Company 1 User” who belong to “Sub Company 1”, “Sub Company 2 User” who belong to “Sub Company 2” and “Sub Company 1 Sub User” who belong to “Sub Company 1 Sub” company. User can be specified to each company by setting the field “Company” in the user form view. The user can only be assigned to companies which are specified in the field “Allowed Companies” in “Access Rights” tab in user form view. To set the password for the user, click in “Change Password” button in the user form view. A pop up will be displayed which prompt the user to enter the password. The tree view of the user is shown below:
OpenERP Users
Now the configuration of OpenERP for multi-company configuration of product is complete. Similarly we can configure Address Book also. By setting the fields “Company”, we can assign the Partners in to separate companies.
OpenERP follows sharing between companies based on:
“Share with your parent and children,
not with brother and sister”
ie; user can see information in our case products that belong to itself and also its parents and child company but not of the other companies. For example, if we login as “Sub company 1 User”, we will be able to see the products and address book that belong to itself, its parent company “Main Company” and also its child company “Sub Company 1 Sub”. The kanban view of the product when logged in as “Sub company 1 User” is given below:
Product When Logged in as Sub Company 1 User
Similarly if we are logged in as “Sub Company 2 User”, we will be able to view all the product belonging to itself and “Main Company”. If we are logged in as “Main Company user”, we will be able to view all the product since all other companies are child company to “Main Company”. The screen shot of product when logged in as “Sub Company 2 User”, “Sub Company 1 Sub User”, “Main Company” are shown below:
Product When Logged in as Sub Company 2 User
Product When Logged in as Sub Company 1 Sub User
Product When Logged in as Main Company User
The product listed when creating the sale order or purchase order depends on the product company and user company. The product listed when logged in as “Sub Company 2 User” is shown below:
hello.. openerp hr manager
hello.. openerp hr manager can see not allowed company employers and contract. how to only access allowed company employers and contract ? help me
Hi, I think the better
Hi,
I think the better option for your requirement will be to create a record rule.
For Contracts you could use the same method except the Rule definition as ['|',('employee_id.company_id','child_of',[user.company_id.id]),('employee_id','=',False)]
Hope this helps...
Hi, How can i manager view
Hi,
How can i manager view only his department employee HELP ME Prajul P T
For example sales Manager M1 view only his emloyee emp1, emp2 and finance Manager M2 view only his employee emp3 emp4 PLEASE HELP?????
Thank you very much, Prajul.
Thank you very much, Prajul. It was a great help and you help me
Hi Prajul, Your blog is
Hi Prajul,
Your blog is interestig. I have tested the this and working fine. But when i tried to create 2 Main companies(No parent company associated with this company) and created users for those. But those users aere not able to create any records when logedin, I am getting an error message as
"Access Denied
The requested operation cannot be completed due to security restrictions. Please contact your system administrator.
(Document type: Partner, Operation: read)"
can you help me to know why its happening so.
Hello Mr Prajul, This is the
Hello Mr Prajul,
This is the best article I found out about this multicompany issue.
I would like to discuss the following situation:
Just to organize the products we sell, I have 3 companies:
one of the companies (company C) sells all products but the other 2 (A and B) only sells one type of product each one. All my employees work for all companies.
I've OpenERP installed with multicompany and defined a shop for each company.
Company A -> Shop A -> Sells products A
Company B -> Shop B -> Sells products B
Company C -> Shop C -> Sells products A, B and C
My situation is the following:
* When my salesman wants to create an order for company A, he just selects shop A and creates the order for that shop
* When he wants to create an order for company B, he just selects shop B and creates the order for that shop.
If he needs to order mixed products, than he "puts" the order for the shop C from the Company that sells all products.
Does this work?
The employees have access (Allowed Companies) to all companies. They have only one login. They belong to company C.
Each company has its accounting, stocks, warehouses and so one.
Does this work?
I thank for your help on this.
Regards
Antonio
Thank you for the article.
Thank you for the article. It is quite through and well presented.
My question is whether you have to have separate Users for each company, or whether a User in the Root company can create Quotations, orders etc, for a Sub Company?
It seems like most of the code is set up this way but I am not seeing a way to create an order (in my Admin or SubAdmin role) for any company but the one I am assigned to.
I will see if I can "disconnect" from a main company but it seems I have not found that yet.
Thanks again.
Hi there. I'm trying to
Hi there. I'm trying to setup a new chart of accounts for my second company but I do not get the invoicing Settings menu. I also do not get the Company Structure menu. I am the administrator so I can't see it being a security issue.
My settings menus are as follows:
Sales
Purchases
Warehouse
Manufacturing
Project
Accounting
Human Resources
Knowledge
General Settings
Companies
Companies
I also have enabled "Manage multiple companies" within the General Settings.
Mike
Hi ...... I have one daut
Hi ......
I have one daut suppose if i have 1 main company and 3 sub companies..
my question is how to add customers to this 1+3 companies use multi companie scenario ,,
if main comapany(Adminstrator) customers are - customer1,customer2,customer3,...n
But in
comp1-customer1 and customer2
comp2-customer3,customer4
my question is how comp1 admin access only the customer1 and customer2 comp2 admin cannot access comp 2 customers.
same for comp 2 CUSTOMERS
Main comp adminstrator can access all the customers..
Pls help......
Hi, If you are going to
Hi,
If you are going to configure chart of account for your new company, go to "Settings -> Configuration -> Invoicing". Here in Chart Of Account section you could see a dropdown field "Select Company" in which you could select the company. Select your newly created company from this dropdown field. If no chart of account is configured for this company, A new field will be visible as "Template" where you can select the installed chart of account in OpenERP. If you want to install a new chart of account, just click "Install more chart templates" where you could select the template you want.