方法返回值以在OpenERP中调用另一个表单

时间:2012-09-28 05:23:24

标签: python openerp

目前,您可以设置将OpenERP的值返回到以下值,以便关闭当前表单:

return {'type':'ir.actions.act_window_close' }

是否有可以打开另一个表单的返回值? 例如,在“产品”表单中,按钮可以调用销售表单或向导表单。

2 个答案:

答案 0 :(得分:7)

以下是一个示例函数。也许对你有帮助

def open_popup(self, cr, uid, ids, context=None):
    mod_obj = self.pool.get('ir.model.data')
    if move.parent_production_id:
        res = mod_obj.get_object_reference(cr, uid, 'module_name', 'id_specified_for_the_view')
        return {
            'name': 'Provide your popup window name',
            'view_type': 'form',
            'view_mode': 'form',
            'view_id': [res and res[1] or False],
            'res_model': 'your.popup.model.name',
            'context': "{}",
            'type': 'ir.actions.act_window',
            'nodestroy': True,
            'target': 'new',
            'res_id': record_id  or False,##please replace record_id and provide the id of the record to be opened 
        }

答案 1 :(得分:2)

有一个函数可以为给定的xml_id提供act_window。

def open_popup(self, cr, uid, ids, context=None):
    if move.parent_production_id:
        win_obj = self.pool.get('ir.actions.act_window')
        res = win_obj.for_xml_id(cr, uid, 'module_name', 'id_specified_for_the_view', context)
        return res