Help

4

How to set up multiple companies for a single partner?

Avatar
vim24

Say I have three companies; CompanyA ,CompanyB and CompanyC. CompanyA and CompanyB both deal with the same customer; CustomerX.

How can I set up CustomerX so that I can invoice him from CompanyA and CompanyB but NOT let him be seen by CompanyC? (That is, I can't just leave the company field blank or CompanyC will be able to see him).

Avatar
Discard
1 Answer
3
Avatar
Borni DHIFI
Best Answer

Hi,

for each partner you need to select a company or allow empty the company that the partner is visible to everyone.

So what I ask to create a virtual company V that contains all object coummun between company A and company B (partners , users, products...) . A and B are childs V.

and create another company C.

so company A and company B both deal with the same customer but not let him be seen by company C.

So your structure will :

image description


And if this solution does not meet your needs you have to do create a new module to change this logic .

you can start by see this line in res.partner:

'company_id': fields.many2one('res.company', 'Company', select=1),

change to :

'company_id': fields.many2many('res.company', id1='partner_id', id2='company_id', string='Company'),

and you will have many modificat.

1 Comment
Avatar
Discard
Avatar
vim24
-

Interesting solution, but I don't think it is practical for our large multi-company setup. While A and B share CustomerX, A and C might also share CustomerZ (and B does not). Then the structure shown above will not allow A and C to see CustomerZ without B also seeing them. This will only work as a solution for permissions on a single partner issue and is not very extendable