Overslaan naar inhoud
Odoo Menu
  • Aanmelden
  • Probeer het gratis
  • Apps
    Financiën
    • Boekhouding
    • Facturatie
    • Onkosten
    • Spreadsheet (BI)
    • Documenten
    • Ondertekenen
    Verkoop
    • CRM
    • Verkoop
    • Kassasysteem winkel
    • Kassasysteem Restaurant
    • Abonnementen
    • Verhuur
    Websites
    • Websitebouwer
    • E-commerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Bevoorradingsketen
    • Voorraad
    • Productie
    • PLM
    • Inkoop
    • Onderhoud
    • Kwaliteit
    Personeelsbeheer
    • Werknemers
    • Werving & Selectie
    • Verlof
    • Evaluaties
    • Aanbevelingen
    • Wagenpark
    Marketing
    • Social media Marketing
    • E-mailmarketing
    • SMS Marketing
    • Evenementen
    • Marketingautomatisering
    • Enquêtes
    Diensten
    • Project
    • Urenstaten
    • Buitendienst
    • Helpdesk
    • Planning
    • Afspraken
    Productiviteit
    • Chat
    • Goedkeuringen
    • IoT
    • VoIP
    • Kennis
    • WhatsApp
    Apps van derden Odoo Studio Odoo Cloud Platform
  • Bedrijfstakken
    Detailhandel
    • Boekhandel
    • kledingwinkel
    • Meubelzaak
    • Supermarkt
    • Bouwmarkt
    • Speelgoedwinkel
    Food & Hospitality
    • Bar en Pub
    • Restaurant
    • Fastfood
    • Gastenverblijf
    • Drankenhandelaar
    • Hotel
    Vastgoed
    • Makelaarskantoor
    • Architectenbureau
    • Bouw
    • Vastgoedbeheer
    • Tuinieren
    • Vereniging van eigenaren
    Consulting
    • Accountantskantoor
    • Odoo Partner
    • Marketingbureau
    • Advocatenkantoor
    • Talentenwerving
    • Audit & Certificering
    Productie
    • Textiel
    • Metaal
    • Meubels
    • Eten
    • Brewery
    • Relatiegeschenken
    Gezondheid & Fitness
    • Sportclub
    • Opticien
    • Fitnesscentrum
    • Wellness-medewerkers
    • Apotheek
    • Kapper
    Trades
    • Klusjesman
    • IT-hardware & support
    • Zonne-energiesystemen
    • Schoenmaker
    • Schoonmaakdiensten
    • HVAC-diensten
    Andere
    • Non-profitorganisatie
    • Milieuagentschap
    • Verhuur van Billboards
    • Fotograaf
    • Fietsleasing
    • Softwareverkoper
    Browse all Industries
  • Community
    Leren
    • Tutorials
    • Documentatie
    • Certificeringen
    • Training
    • Blog
    • Podcast
    Versterk het onderwijs
    • Onderwijs- programma
    • Scale Up! Business Game
    • Bezoek Odoo
    Download de Software
    • Downloaden
    • Vergelijk edities
    • Releases
    Werk samen
    • Github
    • Forum
    • Evenementen
    • Vertalingen
    • Word een Partner
    • Services for Partners
    • Registreer je accountantskantoor
    Diensten
    • Vind een partner
    • Vind een boekhouder
    • Een adviseur ontmoeten
    • Implementatiediensten
    • Klantreferenties
    • Ondersteuning
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Vraag een demo aan
  • Prijzen
  • Help

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

  • CRM
  • e-Commerce
  • Boekhouding
  • Voorraad
  • PoS
  • Project
  • MRP
All apps
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Alle posts Personen Badges
Labels (Bekijk alle)
odoo accounting v14 pos v15
Over dit forum
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Alle posts Personen Badges
Labels (Bekijk alle)
odoo accounting v14 pos v15
Over dit forum
Help

cannot call custom JS from inherited qweb template

Inschrijven

Ontvang een bericht wanneer er activiteit is op deze post

Deze vraag is gerapporteerd
javascriptqwebv7template
2 Antwoorden
14671 Weergaven
Avatar
Peter Nietz

I try to call a JS function from my qweb inherited template via:

 <tr t-extend="ListView.row">
      <t t-jquery="td" t-operation="replace">
     [...]
      <t t-set="test" t-value="value_check(column.id, record.get(column.id))"/>

But I allways get the Error:

   Error: QWeb2 - template['ListView.rows']: 
   Runtime Error: Error: QWeb2 - template['ListView.row']: 
   Runtime Error: TypeError: dict.value_check is not a function

without the function call the extended template works fine. So the JS function cannot be found. First I tried this JS code for my function:

openerp.my_module = function(instance){
  var module = instance.web // loading the namespace of the 'sample' module

  module.View.include({
      value_check: function(key, value){
          console.log(key + ": " + value);
          return true;
      },        
  });
};

and then also

openerp.my_module = function(instance){
  var module = instance.web; // loading the namespace of the 'sample' module

  var _super_ = module.View.prototype.value_check;

  module.View.prototype.value_check = function(key, value){
       console.log(key +': '+value);
       _super_.call(this);
      return true;
  };
};

any suggestions? Could it be its because of the inherited tempate? But I can call stuff like render_cell from the web module js. It even doesn't work if I put the check_value into the view_list.js of the web module.

1
Avatar
Annuleer
Avatar
Peter Nietz
Auteur Beste antwoord

OK, I solved it: The class I was extending was wrong.

openerp.my_module = function(instance){
    var module = instance.web.list  // loading the namespace of  'web.list' 

    module.Column.include({         // include to  'web.list.Column' class
        value_check: function(key, value){
           console.log(key + ": " + value);
           return true;
        },        
    });
};

Then I have to call my function via:

  <t t-set="test" t-value="column.value_check(column.id, record.get(column.id))"/>

...and it works perfectly.

0
Avatar
Annuleer
Avatar
Brett Lehrer
Beste antwoord

Is "custom_list" the name of your module folder? That would prevent the JS from loading. Either rename the module or edit the JS to say "openerp.web_module_name".

0
Avatar
Annuleer
Peter Nietz
Auteur

yes it is the module name, but it doesn't work. I edited my post so its not confusing, I hope. I even tried to add the function to the web module itself but still the same error. Could it be because I extended the ListView.row template?

Peter Nietz
Auteur

thx ... u put me on the right track

Geniet je van het gesprek? Blijf niet alleen lezen, doe ook mee!

Maak vandaag nog een account aan om te profiteren van exclusieve functies en deel uit te maken van onze geweldige community!

Aanmelden
Gerelateerde posts Antwoorden Weergaven Activiteit
Web client inheritance
javascript web qweb v7
Avatar
Avatar
Avatar
2
mrt. 15
6401
How to execute javascript inside qweb template Opgelost
javascript v8 qweb report template
Avatar
Avatar
Avatar
Avatar
Avatar
6
dec. 23
21645
AssertionError: Element odoo has extra content: template, line 5 Opgelost
qweb template
Avatar
Avatar
1
jan. 19
9600
odoo Missing dependencies qweb
javascript qweb
Avatar
3
aug. 17
9959
Change login page on v7
v7 template
Avatar
Avatar
Avatar
Avatar
3
sep. 16
20447
Community
  • Tutorials
  • Documentatie
  • Forum
Open Source
  • Downloaden
  • Github
  • Runbot
  • Vertalingen
Diensten
  • Odoo.sh Hosting
  • Ondersteuning
  • Upgrade
  • Gepersonaliseerde ontwikkelingen
  • Onderwijs
  • Vind een boekhouder
  • Vind een partner
  • Word een Partner
Over ons
  • Ons bedrijf
  • Merkelementen
  • Neem contact met ons op
  • Vacatures
  • Evenementen
  • Podcast
  • Blog
  • Klanten
  • Juridisch • Privacy
  • Beveiliging
الْعَرَبيّة 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 is een suite van open source zakelijke apps die aan al je bedrijfsbehoeften voldoet: CRM, E-commerce, boekhouding, inventaris, kassasysteem, projectbeheer, enz.

Odoo's unieke waardepropositie is om tegelijkertijd zeer gebruiksvriendelijk en volledig geïntegreerd te zijn.

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