0
フォームでフィールドが何回編集されたのかをカウントしたい場合、同じフォームの「Number of Edits」という別のフィールドにカウントを渡す必要があります。このコードは、罰金作品Odoo 8でフィールドの編集や更新の回数を数える方法は?
フォームでフィールドが何回編集されたのかをカウントしたい場合、同じフォームの「Number of Edits」という別のフィールドにカウントを渡す必要があります。このコードは、罰金作品Odoo 8でフィールドの編集や更新の回数を数える方法は?
..
def write(self, cr, uid, ids, vals, context=None):
quotation_obj=self.browse(cr, uid, ids,context=context)
if partner_id:
count = quotation_obj.number_of_edits + 1
vals.update({'number_of_edits': count})
return super(sale_order, self).write(cr, uid, ids, vals, context=context)
これは、あなたが複数のID /記録の書き込みを持っている場合、十分ではありませんコード全体
def write(self, cr, uid, ids, vals, context=None):
partner_id=vals.get('partner_id')
quotation_obj=self.browse(cr, uid, ids,context=context)
if not partner_id:
#if partner id not found, find the employee ids
emp_ids=vals.get('employee_ids')
if emp_ids:
# for line in emp_ids:
# employee_ids=line[2]
# else:#update the employee ids
# employee_ids=quotation_obj.employee_ids
for line in emp_ids:
self.pool.get('res.partner').write(cr, uid, quotation_obj.partner_id.id, {'employee_ids': [(4, line[2])]}, context=context)
if partner_id:
emp_ids=vals.get('employee_ids')
if emp_ids:
for line in emp_ids:
self.pool.get('res.partner').write(cr, uid, partner_id, {'employee_ids': [(4, line[2])]}, context=context)
if partner_id:
count = quotation_obj.number_of_edits + 1
vals.update({'number_of_edits': count})
return super(sale_order, self).write(cr, uid, ids, vals, context=context)
です。そして、 'partner_id'はどこから来ていますか? 'partner_id'以外の – CZoellner
はなぜ十分ではないでしょうか。それは更新される特定のレコードを取得し、カウントを更新しないのですか? – danidee