Odoo Help

Welcome!

This community 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.

1

How can i check a condition on edit button odoo

By
sreejith
on 10/6/16, 3:17 AM 197 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.

sreejith
on 10/6/16, 7:27 AM
0

Baiju

--Baiju--
3154
| 5 4 8
Kochi, India
--Baiju--
ODOO technical and functional

        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
On 10/6/16, 7:06 AM

Hi,


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:-

_constraints
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

_sql_constraints
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.

0
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

Your Answer

Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!

About This Community

This community is for professionals and enthusiasts of our products and services. Read Guidelines

Question tools

1 follower(s)

Stats

Asked: 10/6/16, 3:17 AM
Seen: 197 times
Last updated: 11/7/16, 2:07 AM