Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
1 Rispondi
710 Visualizzazioni

I'm trying to develop a module in Javascript and I try to generate rpc calls to query odoo database. I'm trying to do some calls from differents functions like that "obtener_id_empleado" and I'm trying to return the result to the main function but I always obtain undefined. Why?


In the ​console.log(result) I obtain an array of database data, but after the return and the assignment in console.log(empleado) I obtain undefined. Why? 



willStart: function () {

            var self = this;

​   var empleado = 0;

            empleado = this.obtener_id_empleado();

            console.log(empleado);  

 },


obtener_id_empleado: function(){

​rpc.query({

                model: 'hr.employee',

                method: 'search_read',

                args: [[['user_id', '=', this.getSession().uid]], ['name','id']],

​       context: session.user_context,

            })

            .then(function(result) {

​console.log(result);

​return result;

            });

},


Thanks

Avatar
Abbandona
Autore Risposta migliore

Any news?

Avatar
Abbandona

It appears like you are running into a typical problem with JavaScript asynchronous programming. When you call this.obtener_id_empleado(), it executes the function without waiting for the promise to resolve since the rpc.query method returns a promise. The reason you're seeing undefined is because empleado is assigned the promise itself rather than the returned result. https://geometrydash2.com/

Post correlati Risposte Visualizzazioni Attività
0
lug 25
291
1
lug 25
5068
0
lug 25
633
0
giu 25
702
1
giu 25
870