Skip to Content
Odoo Menu
  • Log ind
  • Prøv gratis
  • Apps
    Økonomi
    • Bogføring
    • Fakturering
    • Udgifter
    • Regneark (BI)
    • Dokumenter
    • e-Signatur
    Salg
    • CRM
    • Salg
    • POS Butik
    • POS Restaurant
    • Abonnementer
    • Udlejning
    Hjemmeside
    • Hjemmesidebygger
    • e-Handel
    • Blog
    • Forum
    • LiveChat
    • e-Læring
    Forsyningskæde
    • Lagerbeholdning
    • Produktion
    • PLM
    • Indkøb
    • Vedligeholdelse
    • Kvalitet
    HR
    • Medarbejdere
    • Rekruttering
    • Fravær
    • Medarbejdersamtaler
    • Anbefalinger
    • Flåde
    Marketing
    • Markedsføring på sociale medier
    • E-mailmarketing
    • SMS-marketing
    • Arrangementer
    • Automatiseret marketing
    • Spørgeundersøgelser
    Tjenester
    • Projekt
    • Timesedler
    • Udkørende Service
    • Kundeservice
    • Planlægning
    • Aftaler
    Produktivitet
    • Dialog
    • Kunstig intelligens
    • IoT
    • VoIP
    • Vidensdeling
    • WhatsApp
    Tredjepartsapps Odoo Studio Odoo Cloud-platform
  • Brancher
    Detailhandel
    • Boghandel
    • Tøjforretning
    • Møbelforretning
    • Dagligvarebutik
    • Byggemarked
    • Legetøjsforretning
    Mad og værtsskab
    • Bar og pub
    • Restaurant
    • Fastfood
    • Gæstehus
    • Drikkevareforhandler
    • Hotel
    Ejendom
    • Ejendomsmægler
    • Arkitektfirma
    • Byggeri
    • Ejendomsadministration
    • Havearbejde
    • Boligejerforening
    Rådgivning
    • Regnskabsfirma
    • Odoo-partner
    • Marketingbureau
    • Advokatfirma
    • Rekruttering
    • Audit & certificering
    Produktion
    • Tekstil
    • Metal
    • Møbler
    • Fødevareproduktion
    • Bryggeri
    • Firmagave
    Heldbred & Fitness
    • Sportsklub
    • Optiker
    • Fitnesscenter
    • Kosmetolog
    • Apotek
    • Frisør
    Håndværk
    • Handyman
    • IT-hardware og support
    • Solenergisystemer
    • Skomager
    • Rengøringsservicer
    • VVS- og ventilationsservice
    Andet
    • Nonprofitorganisation
    • Miljøagentur
    • Udlejning af billboards
    • Fotografi
    • Cykeludlejning
    • Softwareforhandler
    Gennemse alle brancher
  • Community
    Få mere at vide
    • Tutorials
    • Dokumentation
    • Certificeringer
    • Oplæring
    • Blog
    • Podcast
    Bliv klogere
    • Udannelselsesprogram
    • Scale Up!-forretningsspillet
    • Besøg Odoo
    Få softwaren
    • Download
    • Sammenlign versioner
    • Udgaver
    Samarbejde
    • Github
    • Forum
    • Arrangementer
    • Oversættelser
    • Bliv partner
    • Tjenester til partnere
    • Registrér dit regnskabsfirma
    Modtag tjenester
    • Find en partner
    • Find en bogholder
    • Kontakt en rådgiver
    • Implementeringstjenester
    • Kundereferencer
    • Support
    • Opgraderinger
    Github Youtube Twitter LinkedIn Instagram Facebook Spotify
    +1 (650) 691-3277
    Få en demo
  • Prissætning
  • Hjælp
Du skal være registreret for at interagere med fællesskabet.
Alle bidrag Personer Emblemer
Tags (Vis alle)
odoo accounting v14 pos v15
Om dette forum
Du skal være registreret for at interagere med fællesskabet.
Alle bidrag Personer Emblemer
Tags (Vis alle)
odoo accounting v14 pos v15
Om dette forum
Hjælp

Error on Calling function from button

Tilmeld

Få besked, når der er aktivitet på dette indlæg

Dette spørgsmål er blevet anmeldt
functionerrorbuttonsprivate10.0
1 Svar
20220 Visninger
Avatar
Sylwester Zalewski

Hi, 

I receive following error when I try to call my function to update some fields "Private methods (such as _get_coords_from_address) cannot be called remotely."  Any ideas ? Thanks

@api.one
def _get_coords_from_address(self):
if self.full_address != None:
lat_long = geocoder.google(self.full_address)
# self.lat_long = lat_long.latlng
    self.write({'lat_long': lat_long.latlng}) 
<button string="Map Coordinates" type="object" name="_get_coords_from_address"  class="oe_stat_button" />
1
Avatar
Kassér
Avatar
Yenthe Van Ginneken (Mainframe Monkey)
Bedste svar

Hi Sylwester,

By default Python functions starting with _ are considered private methods. For more information have a look at https://stackoverflow.com/questions/1547145/defining-private-module-functions-in-python
In your case you can simply change the button name from _get_coords_from_address to get_coords_from_address (remove the _). If you do the same on the Python side it will work fine.
By removing the underscore Odoo will no longer see it as a private method, which caused your initial error.
On a sidenote, you're using the @api.one decorator which is pretty much deprecated. It is better to use @api.multi in combination with self.ensure_one. Your code shoud look like this in XML:

<button string="Map Coordinates" type="object" name="get_coords_from_address" class="oe_stat_button"/>

The Python:

@api.multi
def get_coords_from_address(self):
# This will make sure that you have one record instead of multiple (singleton) self.ensure_one()
if self.full_address != None:
lat_long = geocoder.google(self.full_address)
# self.lat_long = lat_long.latlng
    self.write({'lat_long': lat_long.latlng}) 

Regards,
Yenthe

8
Avatar
Kassér
Sylwester Zalewski
Forfatter

Perfect! Thanks

Yenthe Van Ginneken (Mainframe Monkey)

You're welcome - best of luck!

Kan du lide at diskutere? Læs ikke bare med, deltag aktivt i debatten!

Opret en konto i dag for at få glæde af eksklusive funktioner, og bliv en del af vores skønne fællesskab!

Tilmeld dig
Relaterede indlæg Besvarelser Visninger Aktivitet
[Odoo 17] Call a Function in a Different Model - Server Action Løst
error buttons server_actions
Avatar
Avatar
1
apr. 24
4453
Create Button not visible in View Form odoo15?
error buttons View
Avatar
Avatar
2
jan. 23
3986
Why I get this 'str' object is not callable error with my new function field? Løst
function error field
Avatar
Avatar
2
feb. 17
9299
How to generate values when click a button? Løst
function create buttons
Avatar
Avatar
Avatar
Avatar
4
okt. 15
11658
Field.function Help
function error item
Avatar
Avatar
Avatar
Avatar
4
apr. 15
7059
Community
  • Tutorials
  • Dokumentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Oversættelser
Tjenester
  • Odoo.sh-hosting
  • Support
  • Opgradere
  • Individuelt tilpasset udvikling
  • Uddannelse
  • Find en bogholder
  • Find en partner
  • Bliv partner
Om os
  • Vores virksomhed
  • Brandaktiver
  • Kontakt os
  • Stillinger
  • Arrangementer
  • Podcast
  • Blog
  • Kunder
  • Juridiske dokumenter • Privatlivspolitik
  • Sikkerhedspolitik
الْعَرَبيّة 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 Svenska ภาษาไทย Türkçe українська Tiếng Việt

Odoo er en samling open source-forretningsapps, der dækker alle dine virksomhedsbehov – lige fra CRM, e-handel og bogføring til lagerstyring, POS, projektledelse og meget mere.

Det unikke ved Odoo er, at systemet både er brugervenligt og fuldt integreret.

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