Odoo Help


How can i check a condition on edit button odoo

on 10/6/16, 3:17 AM 512 views

i would like to create a module which depends on sale. I created a field expiration_date according to date selected users can get a wizard through edit button to modify the date. my problem is how to write a condition on edit button i know its completely on js. so tried that way too,but don't know how to make that call thanks in advance

i don't have enough karma to comment on your post sorry..

Based on existing expiry date field on sale order, enable edit mode only if the expiry date exceeds current date .If current date exceeds, then open a wizard to enter a new expiry date.

on 10/6/16, 7:27 AM

Baiju KS

--Baiju KS--
| 5 5 8
Kochi, India
--Baiju KS--
ODOO technical

        I like learning new thing, especially technical thing. I am a quick learner, I can learn technical things very fast. I have good logical skill,  I have immense interest in programming.

e-mail id : baijuks@hotmail.com

Baiju KS
On 10/6/16, 7:06 AM


If you want to check something at the time of database write you can inherit write method :-

def write(self, cr, uid, ids, vals, context=None):
# --> your checking code here
return super(class, self).write(cr, uid, ids, vals, context=context)

write method get invoked every time we edit and save.

Or if you want to set a limitation or restriction for a field you can use _constraints or _sql_constraints:-

Using _constraints you can define Python constraints: here is syntax and example:-

list of (constraint_function, message, fields)
def _check_company_id(self, cr, uid, ids, context=None):
for statement in self.browse(cr, uid, ids, context=context):
if statement.company_id.id != statement.period_id.company_id.id:
return False return True
_constraints = [ (_check_company_id, 'The journal and period chosen have to belong to the same company.', ['journal_id','period_id']), ]

using _sql_constraints, you can define SQL constraints to execute when generating the backing table. here is syntax and example

list of (name, sql_definition, message)
_sql_constraints = [ 
 ('number_uniq', 'unique(number, company_id, journal_id, type)',
 'Invoice Number must be unique per Company!'),

Hope this helps.

Hengky Zhang
On 10/6/16, 5:17 AM

Can you explain more detail what do you want to achieved (you problem) ?

i think you can do it  without JS

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

1 follower(s)


Asked: 10/6/16, 3:17 AM
Seen: 512 times
Last updated: 3/4/17, 5:19 AM