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

I want to make the "Pricelist" and "Payment Term" readonly if pricelist and payment term is set for the customer in sale order form.

It should be done on onchange of the customer field how can I do this in odoo9?

Is it possible to call a function on readonly attribute like following?


field_name = fields.Many2one('related_model', 'label', readonly="function_name")


def function_name(self):

     if condition:

         return True

     else:

         return False


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

Hello Sebin Siby,

set attrs on pricelist like

attrs="{'readonly': [('partner_id.pricelist_id', '!=', False)]}

set attrs on payment term same as like pricelist field just change payment term field name.

Ảnh đại diện
Huỷ bỏ
Tác giả

I tried it but it's not working. The states and readonly attribute are set for that field while defining it in .py file. The changes made for readonly attribute from xml is not getting reflected on that field.

Tác giả

Now I need to remove the states and readonly attribute from .py file and defining it in xml.

I tried redefining that field without these attributes but the attributes doesn't chages.

Did you update your module and refresh your web page after you made your changes? Because changes made in the xml are not automatically reflected on the database.

Bài viết liên quan Trả lời Lượt xem Hoạt động
3
thg 12 23
91146
3
thg 9 21
5184
1
thg 9 15
9007
4
thg 8 25
5490
3
thg 7 23
5800