Help

1

Python "super" - function does not work

Avatar
Dominic

Hi, 

I have a simple coding question. I am inheriting from a model pos.order. I want to execute a simple function from that model and then modify it, but it doesn't work. This is how I made it:

class pos_order(osv.osv):
    _inherit = 'pos.order'
_name = 'pos.order'
    @api.multi
def create_picking(self):
        return super(pos_order, self).create_picking() 


I don't know why the super function does not work. I already confirmed that code in that file will be executed, but in that case "super" does not work. No idea what I am doing wrong. 

Any ideas?

Avatar
Abaikan
2 Semua Jawaban
2
Avatar
Bejaoui Souheil
Best Answer

Hi,

Check the dependency set on __openerp__.py.

Your module must depend from the point_of_sale module.

Best regards.

1 Komentar
Avatar
Abaikan
Avatar
Favio Náquira
-

you sir, are the real hero. Thank you very much, I just spend two hours logging T_T

0
Avatar
Diego Vázquez
Best Answer

You're inheriting class with old api (osv.osv), but declare method with new api, passing only self argument. Try to pass all arguments:

def create_picking(self, cr, uid, ids, context=None):

     (do_something)

     return super(pos_order, self).create_picking(cr, uid, ids, context=context)

Avatar
Abaikan