0
Я хочу, чтобы добавить столбец, где я вычислить сумму двух столбцов, но он здесь не работает мой кодФункция on_change не openerp8 работать
test.py:
from openerp.osv import fields, osv
class sale_order_line(osv.osv):
_inherit = 'account.bank.statement.line'
_name = 'account.bank.statement.line'
_columns = {
'colx': fields.float(),
'coly': fields.float(),
}
def onchange_result(self, cr, uid, ids, colx, amount, context=None):
res = {}
if amount and colx:
res['coly'] = amount + colx
return {'value': res}
тест. XML
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record model="ir.ui.view" id="account_statement_instructor1_form_viewfzz">
<field name="name">account.statement.form.viewfzz</field>
<field name="model">account.bank.statement</field>
<field name="inherit_id" ref="account.view_bank_statement_formfz"/>
<field name="arch" type="xml">
<xpath expr="//sheet/notebook/page/field[@name='line_ids']/tree/field[@name='date']" position="after">
<field name="colx" on_change="onchange_result(amount, colx)"/>
<field name="amount" on_change="onchange_result(amount, colx)"/>
<field name="coly"/>
</xpath>
</field>
</record></data></openerp>
Спасибо
Расскажите, пожалуйста, как этот код не работает. Какая ошибка вы получаете? –
Неверный порядок параметров: в методе colx, params. Но на view - amount, colx –
В любом случае, я бы предложил использовать новый API, https://www.odoo.com/documentation/8.0/reference/orm.html#onchange-updating-ui-on-the-fly, as 8.0 поддерживает их – eLBati