Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
3 Trả lời
9222 Lượt xem

Hi,


I am trying to print invoices into an excel sheet report. When a user has selected more than one company, I would like to print out all the records from these companies.
This is the code I am using to the active company:

active_company = self.env.company
This always returns one company even when more than one company is selected. How can I get a list of all the selected companies in odoo 13 to use that for filtering invoices

Thanks in advance for you assistance.


How can I list the currently selected companies

Ảnh đại diện
Huỷ bỏ
Tác giả Câu trả lời hay nhất

I figured a way to get a list of allowed companies in a multi-company setup

view_context = self.env.context

allowed_companies = view_context.get('allowed_company_ids', False)


The allowed companies should return a list/array of ids of the currently active companies. eg [1,2]

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hi, 

You can see following for this:

https://youtu.be/GkNgc-fZO-I

Hope it helps,

Thanks

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hi,

active_company = self.env.company

active_company value gives you the details of the company that you as a user have logged in.That is why its returning only one companies details.
You can get the list of companies from the many2many field that you use for selecting the companies.

Regards

Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
1
thg 12 24
1369
4
thg 10 23
3636
1
thg 11 23
13725
1
thg 10 22
4084
1
thg 11 20
9686