0

我在 OpenERP 6.0.4 中遇到了一个小问题,
我想使用 python 函数调用一个向导,
但它一直给我这个错误:

环境信息:
系统:Windows-Vista-6.1.7601-SP1
操作系统名称:nt
操作系统版本:Vista
操作系统版本:6.1.7601
操作系统架构:32 位
操作系统语言环境:en_US.cp1252
Python 版本:2.5.2
OpenERP-客户端版本:6.0.4
上次修订号和 ID:未找到 Bazaar 包!追溯(最近一次调用最后一次):
文件“netsvc.pyo”,第 489 行,在调度
文件“service\web_services.pyo”,第 599 行,在调度
文件“osv\osv.pyo”中,第 122 行,在包装
文件“osv\osv.pyo”中,第 176 行,在执行
文件“osv\osv.pyo”中,第 167 行,在 execute_cr
文件“osv\orm.pyo”,第 2946 行,在读取
文件“osv\orm.pyo”,第 2946 行,在 KeyError
:'id'


这是向导的课程:

class mrp_bom_product(osv.osv_memory):
_name='mrp.bom.product'
_columns={
    'product_id':fields.many2one('product.product','Product')
}
mrp_bom_product()

这是调用向导的函数:

def copy(self, cr, uid, id, default={}, context=None):
     return {
        'type': 'ir.actions.act_window',
        'res_model': 'mrp.bom.product',
        'view_mode': 'form',
        'view_type': 'form',
        'views': [(False, 'form')],
        'target': 'new',
     }

这是向导在 xml 中的记录:

   <record id="mrp_bom_product_view" model="ir.ui.view">
        <field name="name">mrp.bom.product.view</field>
        <field name="model">mrp.bom.product</field>
        <field name="type">form</field>
        <field name="arch" type="xml">
            <form string="Pick Product">
                <field name="product_id"/>
                <group colspan="4">
                    <button string="Cancel" special="cancel" icon="gtk-cancel"/>
                    <button string="Ok" name="saveproduct" type="object" icon="gtk-ok"/>
                </group>
            </form>
        </field>
    </record>
    <record id="mrp_bom_product_action" model="ir.actions.act_window">
        <field name="name">mrp.bom.product.act</field>
        <field name="type">ir.actions.act_window</field>
        <field name="res_model">mrp.bom.product</field>
        <field name="view_type">form</field>
        <field name="view_mode">form</field>
        <field name="target">new</field>
    </record>

你能帮我弄清楚我的代码有什么问题吗?真的很感激,谢谢:)

4

1 回答 1

1

copy() 是一个内置的 openerp orm 函数,它返回新记录的 id。所以请更改您的函数名称。

于 2013-06-09T16:44:54.110 回答