3

Currently, you can set to return value of an OpenERP to the following, to get the current form to be closed:

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

Is there a return value that would open another form instead? For example, in the Product form, buttons can call a sales form or a wizard form.

Paolo Moretti
  • 54,162
  • 23
  • 101
  • 92
Regal Paris
  • 339
  • 5
  • 12

2 Answers2

7

Following is an example function.Maybe helpful for you

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 
        }
OmaL
  • 5,037
  • 3
  • 31
  • 48
2

There is a function that gives you the act_window for a given xml_id.

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
yucer
  • 4,431
  • 3
  • 34
  • 42