在OpenErp中创建一个功能字段

时间:2012-08-09 22:27:07

标签: openerp

如何在OpenERP中创建功能字段?

似乎我需要在python中创建函数,然后用XML调用它。我看到需要编辑的XML,但python代码进入哪个文件?

3 个答案:

答案 0 :(得分:6)

py文件的代码..

class some_model(osv.osv):

    _name = 'some.model'

    def Method_of_Function(self, cr, uid, ids, fld_name, arg, context=None):
        #Logic
        return value 

    _columns = {
        "functional_filed":fields.function(Method_of_Function, 
                   method=True,type='int',string='Label', store=True),

    }
some_model()

并在xml文件中记录标签看起来像......

<record model="ir.ui.view" id="object_name_form_view">
        <field name="name">objectname.form</field>
        <field name="model">some.model</field>
        <field name="type">form</field>
        <field name="arch" type="xml">
            <form string="form_string">
                <field name="functional_filed" />
            </form>
        </field>
    </record>

答案 1 :(得分:2)

首先,您必须在.py文件中定义功能字段:

  

'amount':fields.function(_calc_amount,type =“float”,method = True,store = True,string =“Amount”),

     

def _calc_amount(self,cr,uid,ids,name,args,context = None):   你的代码......

然后在.xml文件中定义您的功能字段。

答案 2 :(得分:0)

你可以参考这里。如何创建功能字段

http://doc.openerp.com/v6.0/developer/2_5_Objects_Fields_Methods/field_type.html

以下是供您参考的另一个链接

http://members.hellug.gr/xrg/openerp-doc/html/api_reference/osv/fields_function.html

您必须在py文件中创建函数字段并从xml文件中调用它。