Skip to Content
Odoo Menu
  • Prisijungti
  • Išbandykite nemokamai
  • Programėlės
    Finansai
    • Apskaita
    • Pateikimas apmokėjimui
    • Sąnaudos
    • Skaičiuoklė (BI)
    • Dokumentai
    • Pasirašymas
    Pardavimai
    • CRM
    • Pardavimai
    • Kasų sistema - Parduotuvė
    • Kasų sistema - Restoranas
    • Prenumeratos
    • Nuoma
    Svetainės
    • Svetainių kūrėjimo įrankis
    • El. Prekyba
    • Internetinis Tinklaraštis
    • Forumas
    • Tiesioginis pokalbis
    • eMokymasis
    Tiekimo grandinė
    • Atsarga
    • Gamyba
    • PLM
    • Įsigijimai
    • Priežiūra
    • Kokybė
    Žmogaus ištekliai
    • Darbuotojai
    • Įdarbinimas
    • Atostogos
    • Įvertinimai
    • Rekomendacijos
    • Transporto priemonės
    Rinkodara
    • Socialinė rinkodara
    • Rinkodara el. paštu
    • SMS rinkodara
    • Renginiai
    • Rinkodaros automatizavimas
    • Apklausos
    Paslaugos
    • Projektas
    • Darbo laiko žiniaraščiai
    • Priežiūros tarnyba
    • Pagalbos tarnyba
    • Planavimas
    • Rezervacijos
    Produktyvumas
    • Diskucija
    • Patvirtinimai
    • IoT
    • VoIP
    • Žinių biblioteka
    • WhatsApp
    Trečiųjų šalių programos Odoo Studija Odoo debesijos platforma
  • Pramonės šakos
    Mažmeninė prekyba
    • Knygynas
    • Drabužių parduotuvė
    • Baldų parduotuvė
    • Maisto prekių parduotuvė
    • Techninės įrangos parduotuvė
    • Žaislų parduotuvė
    Food & Hospitality
    • Barai ir pub'ai
    • Restoranas
    • Greitasis maistas
    • Guest House
    • Gėrimų platintojas
    • Hotel
    Nekilnojamasis turtas
    • Real Estate Agency
    • Architektūros įmonė
    • Konstrukcija
    • Estate Managament
    • Sodininkauti
    • Turto savininkų asociacija
    Konsultavimas
    • Accounting Firm
    • Odoo Partneris
    • Marketing Agency
    • Teisinė firma
    • Talentų paieška
    • Auditai & sertifikavimas
    Gamyba
    • Textile
    • Metal
    • Furnitures
    • Maistas
    • Brewery
    • Įmonių dovanos
    Sveikata & Fitnesas
    • Sporto klubas
    • Akinių parduotuvė
    • Fitneso Centras
    • Sveikatos praktikai
    • Vaistinė
    • Kirpėjas
    Trades
    • Handyman
    • IT įranga ir palaikymas
    • Saulės energijos sistemos
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Kiti
    • Nonprofit Organization
    • Aplinkos agentūra
    • Reklaminių stendų nuoma
    • Fotografavimas
    • Dviračių nuoma
    • Programinės įrangos perpardavėjas
    Browse all Industries
  • Bendrija
    Mokykitės
    • Mokomosios medžiagos
    • Dokumentacija
    • Sertifikatai
    • Mokymai
    • Internetinis Tinklaraštis
    • Tinklalaidės
    Skatinkite švietinimą
    • Švietimo programa
    • Scale Up! Verslo žaidimas
    • Aplankykite Odoo
    Gaukite programinę įrangą
    • Atsisiųsti
    • Palyginkite versijas
    • Leidimai
    Bendradarbiauti
    • Github
    • Forumas
    • Renginiai
    • Vertimai
    • Tapkite partneriu
    • Services for Partners
    • Registruokite jūsų apskaitos įmonę
    Gaukite paslaugas
    • Susiraskite partnerį
    • Susirask buhalterį
    • Susitikti su konsultantu
    • Diegimo paslaugos
    • Klientų rekomendavimas
    • Palaikymas
    • Atnaujinimai
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Gaukite demo
  • Kainodara
  • Pagalba

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Apskaita
  • Atsarga
  • PoS
  • Projektas
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
Žymos (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Žymos (View all)
odoo accounting v14 pos v15
About this forum
Pagalba

not able to return value after jsonrpc ajax call getting empty array

Prenumeruoti

Get notified when there's activity on this post

This question has been flagged
Odoo13.0
1 Atsakyti
3143 Rodiniai
Portretas
paidy kumar

i am trying to show records count in menus for that i am trying below codes.

please help me guys need to return value instead empty array

my xml code 

using below xml code i am calling javascript function for getting count by passing action id






  • my js code:
    getRecordsCount: function (action_id) {
    var rec_count = [];
    console.log("getRecordsCount is ");
    console.log(action_id);
    ajax.jsonRpc("/get_records_count", 'call', {'action_id': action_id},
    {'async': false}).then(function (data) {
    rec_count.push(data);
    console.log(data['count'])
    });
    console.log(rec_count)
    return rec_count


    },
    my controller file .py file
    @http.route('/get_records_count', type='json', auth='public')
    def get_records_count(self,**kw):
    count = 0
    vals = {
    "count": count
    }
    action_id = kw.get('action_id')
    data = {'status': 200, 'response': vals, 'message': 'records count Returned'}
    action_obj = request.env['ir.actions.act_window'].search([('id', '=', action_id)])
    logging.info("action_obj.xml_id %s" % action_obj.xml_id)
    if action_obj:
    # and (action_obj.xml_id == 'web_advanced_search_sale_unit.menu_sale_all_unit' or action_obj.xml_id == 'web_advanced_search_sale_unit.menu_sale_my_units'):
    domain = action_obj.domain if action_obj.domain else []
    result = isinstance(domain, list)

    if result:
    domain = []
    logging.info("domain %s" % domain)
    count = request.env[action_obj.res_model].search_count(domain)
    logging.info("count %s" % count)
    else:
    if len(domain) > 0:
    logging.info("domain in ast %s" % domain)
    try:
    domain = ast.literal_eval(domain)
    count = request.env[action_obj.res_model].search_count(domain)
    except Exception as e:
    domain = []
    count = request.env[action_obj.res_model].search_count(domain)

    else:
    domain = []
    count = request.env[action_obj.res_model].search_count(domain)

    logging.info("count %s" % count)
    vals = {
    "count": count
    }
    data = {'status': 200, 'response': vals, 'message': 'records count Returned'}
    return vals


    0
    Portretas
    Atmesti
    Portretas
    Jainesh Shah(Aktiv Software)
    Best Answer

    Hello paidy kumar,

     
    Please use the JS global variable like these,
    window.rec_count = []
    getRecordsCount: function (action_id) {
    console.log ("getRecordsCount is");
    console.log (action_id);
    ajax.jsonRpc ("/ get_records_count", 'call', {'action_id': action_id},
    {'async': false}). then (function (data) {
    window.rec_count.push (data);
    console.log (data ['count'])
    });
    console.log (window.rec_count)
    return window.rec_count
    },


    Thanks & Regards,
    Email: odoo@aktivsoftware.com
    Skype: kalpeshmaheshwari

    1
    Portretas
    Atmesti
    paidy kumar
    Autorius

    still empty array coming in logs first it is printing "getRecordsCount is" 2nd "action_id" and third it is printing before return statement log statement and finally inside ajax call log statement "data ['count']"

    paidy kumar
    Autorius

    i tried below code getRecordsCount: function (action_id) {
    var i = 0
    if(i>0){
    window.rec_count.pop();
    }
    console.log("getRecordsCount is ");
    console.log(action_id);
    console.log("2window.rec count");
    console.log(window.rec_count);
    return ajax.jsonRpc("/get_records_count", 'call', {'action_id': action_id},{'async': true})
    },

    it is returning promise object how can i get actual object please help

    paidy kumar
    Autorius

    here i am getting promise object

    Enjoying the discussion? Don't just read, join in!

    Create an account today to enjoy exclusive features and engage with our awesome community!

    Registracija
    Related Posts Replies Rodiniai Veikla
    Odoo 13. Don't close a wizard when Click a button Solved
    Odoo13.0
    Portretas
    Portretas
    Portretas
    Portretas
    4
    geg. 24
    14223
    Permission error while user printing excel sheet report in odoo 13 Solved
    Odoo13.0
    Portretas
    Portretas
    1
    bal. 24
    4398
    One2many field edited from Transient Model cannot be made empty.
    Odoo13.0
    Portretas
    0
    lapkr. 23
    3083
    Blank White Page After log in to Odoo13 Solved
    Odoo13.0
    Portretas
    1
    rugs. 23
    3228
    How can I translate Options in Selection.field? Solved
    Odoo13.0
    Portretas
    Portretas
    2
    rugp. 23
    6033
    Bendrija
    • Mokomosios medžiagos
    • Dokumentacija
    • Forumas
    Atvirasis kodas
    • Atsisiųsti
    • Github
    • Runbot
    • Vertimai
    Paslaugos
    • Odoo.sh talpinimas
    • Palaikymas
    • Atnaujinti
    • Pritaikytas programavimo kūrimas
    • Švietimas
    • Susirask buhalterį
    • Susiraskite partnerį
    • Tapkite partneriu
    Apie mus
    • Mūsų įmonė
    • Prekės ženklo turtas
    • Susisiekite su mumis
    • Darbo pasiūlymai
    • Renginiai
    • Tinklalaidės
    • Internetinis Tinklaraštis
    • Klientai
    • Teisinis • Privatumas
    • Saugumas
    الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

    Odoo yra atvirojo kodo verslo programų rinkinys, kuris apima visas įmonės poreikius: CRM, El. Prekybą, Apskaitą, Atsargų, Kasų sistemą, Projektų valdymą ir kt.

    Unikali Odoo vertės pasiūla – būti tuo pačiu metu labai lengvai naudojama ir visiškai integruota sistema.

    Website made with

    Odoo Experience on YouTube

    1. Use the live chat to ask your questions.
    2. The operator answers within a few minutes.

    Live support on Youtube
    Watch now