Skip to Content
मेन्यू
This question has been flagged
1 Reply
4340 Views

Hello Everyone,

I am customising in purchase order workflow.

i have added three new states in existing states.

i am done with everything but there is "READONLY_STATES" dictionary is declared for make fields readonly in particular states.

READONLY_STATES = {
'purchase': [('readonly', True)],
'done': [('readonly', True)],
'cancel': [('readonly', True)],

for that i write following code.

class PurchaseOrder(models.Model):
        _inherit = "purchase.order"
         READONLY_STATES = {
                    'open': [('readonly', True)],
                    'partial received': [('readonly', True)],
                    'received': [('readonly', True)],
                    'purchase': [('readonly', True)],
                    'done': [('readonly', True)],
                    'cancel': [('readonly', True)],
             }

but its not work.

I tried inherit it by importing class also but that is also not work.

Avatar
Discard

I do want to know the answer of this as well. import purchase.py and re-assign READONLY_STATES doesn't help.

Best Answer

Example:

class BlanketOrder(models.Model):
_inherit = ['sale\.blanket\.order'\]

\ \ \ \ READONLY_STATES\ =\ \{
\ \ \ \ \ \ \ \ 'draft':\ \[\('readonly',\ False\)\],
\ \ \ \ \ \ \ \ 'sent':\ \[\('readonly',\ False\)\],
\ \ \ \ \ \ \ \ 'open':\ \[\('readonly',\ False\)\],
\ \ \ \ \ \ \ \ 'done':\ \[\('readonly',\ True\)\],
\ \ \ \ \ \ \ \ 'expired':\ \[\('readonly',\ True\)\],
\ \ \ \ \ \ \ \ 'cancel':\ \[\('readonly',\ True\)\],
\ \ \ \ \}

\ \ \ \ partner_id\ =\ fields\.Many2one\(states=READONLY_STATES\)
\ \ \ \ company_id\ =\ fields\.Many2one\(states=READONLY_STATES\)

Refer\ this\ module:

https://apps.odoo.com/apps/modules/14.0/sale_blanket_order_readonly_states_extended/


Avatar
Discard
Related Posts Replies Views Activity
1
जन॰ 17
2491
0
मई 16
3038
0
अप्रैल 16
3204
1
जुल॰ 23
2145
3
नव॰ 18
4438