This question has been flagged
1 Reply
1671 Views

When I create a company, one partner is also created

How can I detect which partner is created by company?

I tried printing self._context in res.partner's create function but there is nothing to indicate this partner was created from the company.

Or how to send context value to res.partner when I create company?

I am using Odoo version 15.

Thanks!

Avatar
Discard
Best Answer

Hi Anhnt,

You can find the field "Contact" inside the company's General Information page. It is the partner record of the company. You can click on it to see the partner record detail.

Company's partner is creating by the create method of the company. The partner will be the same name with the "is_company" field as true,  "commercial_partner_id" as the company id and that partner has no parent record id.

Hope it will help you.


Avatar
Discard
Author

Thank you!
It show me which partner is company.

But I want to inherit res.partner's create function to detect that the partner is created from the company and then add my custom data to some fields.

Instead of partner's create method, you can inherit company's create method and then you can write your datas in company "s partner.

For particular partner, you have to consider partner type and commercial_partner_id fields.

Author

Thank you very much!
I inherited company's create method and my problem is solved.
I had a little trouble finding the company's create method because it is base method.
But I finally found it in odoo/addons/base/models/res_company.py.

Thank you!

Hi Anhnt,
Please vote up the answer.
Thank you.