Odoo Help

Welcome!

This community is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.

0

How do i call an existent view in OpenERP from JavaScript?

By
Ayoub Zahid
on 1/16/14, 3:11 PM 2,546 views

Hello

How do i call an existent view in OpenERP from JavaScript?

I already tried this :

self.rpc("/web/action/load", { action_id: "module.action_view_id" }).done(function(result) {

                        result.view_mode='tree';
                        result.target="new";

                        self.getParent().do_action(result, {                                                                                      
                            additional_context: {                                          
                            },                                                         
                        });

it works, but whenever i click on a record it brings me the form of that record, and that's not what i want. I need something like in this video on youtube /watch?v=YVqKrH1GnyA

thank you in advance.

0
Eric
On 1/16/14, 4:39 PM

In the javascript file, you could add an event to a buttons class name like this:

    bind_events: function () {            
        this.$('.oe_btn_class_name').on('click', this.on_call_new_view_function);
    },

Then the "on_call_new_view_function" is called when a click event occurs and opens the new view like this:

    on_call_new_view_function: function () {
        var self = this;
        // you can pass in other data using the context dictionary variable
        var context = {
            'id': this.id,
        };
        // the action dictionary variable sends data in the "self.do_action" method
        var action = {
                type: 'ir.actions.act_window',
                res_model: 'model.name',
                view_mode: 'form',
                view_type: 'form',
                views: [[false, 'form']],
                target: 'new',
                context: context,
        };
        // self.do_action accepts the action parameter and opens the new view
        self.do_action(action);
    },

Your Answer

Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!

About This Community

This community is for professionals and enthusiasts of our products and services. Read Guidelines

Question tools

0 follower(s)

Stats

Asked: 1/16/14, 3:11 PM
Seen: 2546 times
Last updated: 3/16/15, 8:10 AM