Odoo Help


How change default state for crm.phonecall

on 4/17/15, 5:47 AM 996 views

I try to modify module crm.phonecall. Currently, a phone call is create with done state but i want to this phone call start in open if date start is greater to date now. But it's not work
I overwrite the state field with a custom class : 
My code :

class PhoneCallPlus(osv.osv):

_inherit = 'crm.phonecall'

_columns = {

'state': fields.selection(

[('open', 'Confirmed'),

('cancel', 'Cancelled'),

('pending', 'Pending'),

('done', 'Held')

], string='Status', readonly=True, track_visibility='onchange',

help='The status is set to Confirmed, when a case is created.\n'

'When the call is over, the status is set to Held.\n'

'If the callis not applicable anymore, the status can be set to Cancelled.')


def _cap_get_default_state(self, cr, uid, context=None):

import datetime

if self.date > datetime.date.today():

return 'open'


return 'done'

_defaults = {

'state': _cap_get_default_state


Have you an idea ?

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: 4/17/15, 5:47 AM
Seen: 996 times
Last updated: 4/17/15, 5:47 AM