OpenERP:简单使用fields.function

Spi*_*gel 5 python openerp

我尝试计算对象的字段并将它们存储到新字段中.我从一个使用fileds.function的简单示例开始,但是当我尝试登录到openerp时,系统会引发用户或密码不正确的错误.

在我班上我添加了字段:

      'a' : fields.integer('A'),
      'b' : fields.integer('B'),
      'total' : fields.function(fnct, method=True, string='Tot',type='integer'),
Run Code Online (Sandbox Code Playgroud)

功能定义:

       def fnct(self, cr, uid, ids, fields, arg, context):

          x = {}

          for record in self.browse(cr, uid, ids):

              x[record.id] = record.a + record.b

          return x
Run Code Online (Sandbox Code Playgroud)

拜托,任何人都可以帮助我吗?谢谢

Ava*_*esh 4

没有与 OpenERP 登录的功能关联。

因此,您可能提供了错误的用户 ID 或密码。

函数域的主要用途是:

根据其他字段自动计算该字段的值。

即总计=字段1+字段2+字段3

示例: 'total' : fields.function(get_total, method=True, string='Total',type='integer'),

如何定义函数:

def get_total(self, cr, uid, ids, fields, arg, context):

    x={}

    for record in self.browse(cr, uid, ids):

        x[record.id]= record.field1 + record.field2 + record.field3

    return x
Run Code Online (Sandbox Code Playgroud)