This question has been flagged
1 Reply
5174 Views

I want to know how I can return a wizard from a workflow activity, I want to launch a wizard when running 'action_cancel()' action from the mrp.production workflow this way:

def action_cancel(self, cr, uid, ids, context=None):

    '''action_cancel() code here'''

    return {

        'name': 'Cancel',

        'view_type': 'form',

        'view_mode': 'form',

         'res_model': 'mrp.production.cancel',

        'type': 'ir.actions.act_window',

        'target': 'new',

    }

but I get this error: TypeError: this.views_src [0] is undefined http://localhost:8069/web/static/src/js/views.js:639

any idea,

regards

Avatar
Discard
Best Answer

Normally is not neccessary but try adding a views key to the return dict, like:

def action_cancel(self, cr, uid, ids, context=None):
'''action_cancel() code here'''
data_obj = self.pool.get('ir.model.data')
dummy, view_id = data_obj.get_object_reference(cr, uid, 'module', 'view_external_id')
 
return {
'name': 'Cancel',
'view_type': 'form',
'view_mode': 'form',
'res_model': 'mrp.production.cancel',
'views': [(view_id, 'form')],
'type': 'ir.actions.act_window',
'target': 'new',
}

change module and view_external_id to match the form view that you want to display

Avatar
Discard
Author

Fine, I've tried this and is working, now if I want to send a signal to the workflow from a python method, something like in this post: https://www.odoo.com/es_ES/forum/help-1/question/how-do-i-activate-a-workflow-transition-from-a-wizard-52519 how I can do that?