Odoo Help

0

Odoo 9: How to get compute field values in Create ORM method

By
deep
on 8/31/16, 2:35 AM 1,348 views

In Odoo 9:

am not finding a way to get the value of compute fields in the create method. However the same had achieved in other version by calling the function of compute-fields,


Say for instance in Sale Order:

'amount_total' is a compute field which calls the function "_amount_all" to calculate the amount.


Now in create method, the value for amount_total is yet  to be filled hence in order to access it, one can just call the function _amount_all which will evaluate and return the value of amount_total.

So same way I would like to do in Odoo 9  as well, but not sure whether it is due to this api decorator or so, am unable to achieve .

Any thoughts are welcomed.

Thanks

0
ayman mohammed adam
On 8/31/16, 5:12 AM

dear deep,

you need to do something like this,

 @api.multi
@api.depends('amount_currency','currency_id')
 def _amount_in_words(self):
"""
this Function uses to get the ratification amount in words.
"""
for rec in self:
self.amount_words_letters = amount_to_text((self.amount_currency or 0.00))
amount_text= fields.Char(compute='_amount_in_words', string='Amount In Words', store=True)

Edit by:  Anil

I hope I helped you.

Wish I could say it helped me, but sadly no, Thanks for the reply.

deep
on 9/17/16, 3:30 AM

Ayman, onchange is default on @api.depends, so no need to use @api.onchange along with @api.depends.

Akhil P Sivan
on 1/29/17, 12:20 PM
0
Akhil P Sivan
On 1/29/17, 1:16 PM

Hi,

You may try like this:

class SaleOrder(models.Model):
     _inherit = "sale.order"
     
     @api.model
     def create(self, vals):
         res = super(SaleOrder, self).create(vals)
         total = res.amount_total //compute field value
         return res

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.

Register

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)

Stats

Asked: 8/31/16, 2:35 AM
Seen: 1348 times
Last updated: 1/29/17, 1:16 PM