Hoppa till innehåll
Odoo Meny
  • Logga in
  • Prova gratis
  • Appar
    Finanstjänster
    • Bokföring
    • Faktura
    • Utgifter
    • Kalkylark (Affärsanalyser)
    • Dokument
    • Underskrifter
    Försäljning
    • CRM
    • Försäljning
    • Kassasystem Butik
    • Kassasystem Restaurang
    • Prenumerationer
    • Uthyrning
    Hemsidor
    • Hemsidesverktyg
    • E-handel
    • Blogg
    • Forum
    • Livechatt
    • Utbildning
    Försörjningskedja
    • Lager
    • Tillverkning
    • Produktens livscykel (PLM)
    • Inköp
    • Underhåll
    • Kvalitet
    HR
    • Anställda
    • Rekrytering
    • Ledighet
    • Utvärderingar
    • Rekommendationer
    • Fordon
    Marknadsföring
    • Sociala medier
    • E-postmarknadsföring
    • Sms-marknadsföring
    • Evenemang
    • Automatiserad marknadsföring
    • Enkäter
    Tjänster
    • Projekt
    • Tidrapporter
    • Fältservice
    • Kundtjänst
    • Planering
    • Tidsbokningar
    Produktivitet
    • Diskutera
    • AI
    • IoT
    • VoIP
    • Kunskap
    • WhatsApp
    Community-appar Odoo Studio Odoo Cloud
  • Branscher
    Butiker
    • Bokaffärer
    • Klädbutiker
    • Möbelaffärer
    • Mataffärer
    • Byggvaruhus
    • Leksaksaffärer
    Restaurang & Hotell
    • Barer och pubar
    • Restauranger
    • Snabbmatsrestauranger
    • Gästhus
    • Dryckesdistributörer
    • Hotell
    Fastigheter
    • Fastighetsbyråer
    • Arkitektfirmor
    • Byggföretag
    • Fastighetsägare
    • Trädgårdsmästare
    • Bostadsrättsföreningar
    Hitta en konsult
    • Redovisningsbyrå
    • Odoo Partner
    • Reklambyråer
    • Advokatbyråer
    • Rekrytering
    • Revisioner och certifieringar
    Tillverkning
    • Textilproduktion
    • Metallproduktion
    • Möbelproduktion
    • Livsmedelsproduktion
    • Bryggerier
    • Företagsgåvor
    Hälsa och fitness
    • Sportklubbar
    • Optiker
    • Träningscenter
    • Friskvård
    • Apotek
    • Frisörsalonger
    Hantverk
    • Hantverkare
    • IT-utrustning och kundtjänst
    • Solceller, solpaneler och solenergi
    • Skomakare
    • Städföretag
    • VVS-tjänster
    Övrigt
    • Ideella föreningar
    • Miljöförvaltningar
    • Uthyrning av reklamtavlor
    • Fotografer
    • Cykeluthyrning
    • Återförsäljare av mjukvara
    Upptäck alla BranscherInauguration Odoo Lyon
  • Community
    Utbildning
    • Instruktionsvideor
    • Dokumentation
    • Certifiering
    • Utbildningar
    • Blogg
    • Podcast
    Lär dig med oss
    • Workshops
    • Företagsspelet Scale Up!
    • Studiebesök hos Odoo
    Mjukvaran
    • Ladda ner
    • Jämför utgåvor
    • Versionsinformation
    Samverkan
    • GitHub
    • Forum
    • Evenemang
    • Översättningar
    • Bli en partner
    • Partnertjänster
    • Registrera din redovisningsbyrå
    Våra tjänster
    • Partners
    • Revisorer
    • Träffa en rådgivare
    • Implementering
    • Kundrecensioner
    • Kundtjänst
    • Uppgraderingar
    GitHub Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Boka en demo
  • Priser
  • Hjälp
Du måste vara registrerad för att kunna interagera med communityn.
Alla inlägg Personer Utmärkelser
Etiketter (Visa alla)
odoo accounting v14 pos v15
Om detta forum
Du måste vara registrerad för att kunna interagera med communityn.
Alla inlägg Personer Utmärkelser
Etiketter (Visa alla)
odoo accounting v14 pos v15
Om detta forum
Hjälp

Odoo 13 - Computed Fields - ORM changes?

Prenumerera

Få ett meddelande när det finns aktivitet på detta inlägg

Denna fråga har flaggats
access rightscomputed-fields13.0ORM
1 Besvara
11334 Vyer
Avatar
Chris TRINGHAM

In Odoo 12 you can check whether a user is in an access group by using self.env.user.has_group. 

For example, I can set up a boolean computed field that is True if the user is in a user access group: 

for record in self:
    if self.env.user.has_group('<UserAccessGroup>'):
         record['x_studio_authorization1'] = True 

But in Odoo 13 this gives an error message for users who are not in the user access group.  It's just a dialog box with the heading "Something went wrong" followed by the Model, ID & Field.

product.template(23,).x_studio_authorization1

As noted below in the comments, this error only happens if the computed field is NOT defined as "stored", which seems to be different from Odoo 12.  The problem is that if the field is stored it doesn't work (because it doesn't get updated).

0
Avatar
Avbryt
Yenthe Van Ginneken (Mainframe Monkey)

I see self.env.user.has_group('group') in loads of default Odoo modules though. Are you sure its not your record[{x_studio_authorization1'] = True that is failing?

Chris TRINGHAM
Författare

Hi Yenthe

Quite possibly, but I don't know because the error message gives me no information! How can I check?

Hilar Andikkadavath

Here the record is an object and you are trying to get a value like dict syntax. Try to access record.field_name

Chris TRINGHAM
Författare

Has this changed in Odoo 13? The same syntax worked in Odoo 12.

Chris TRINGHAM
Författare

I think Yenthe is correct, it's not the self.env.user.has_group('group'). It's an issue with computed fields.

If the computed field is defined as "stored" there is no error. I think that's because it gets run as superuser. But it also doesn't work if it is stored.

天津迈讯科技有限公司

Same issue found of ks_chart_data field computation in upgrading ks_dashboard_ninja addon 12.0.8.0.0 to compatible with odoo 13.0

Avatar
Kanakinfosystems
Bästa svar

Hi Chris,

Check this out.

for record in self:

record['x_studio_authorization1'] = False
if self.env.user.has_group('<UserAccessGroup>'):
record['x_studio_authorization1'] = True

Thanks.


2
Avatar
Avbryt
Chris TRINGHAM
Författare

Excellent! It works. I don't know why, but it works!!

Simon Demming

My impression with the computed fields is, that the default values are not properly set. When one uses the default attribute on the field, but has a path without setting the value in the computing method, it fails to set the field to the default value...

Njuter du av diskussionen? Läs inte bara, delta också!

Skapa ett konto idag för att ta del av exklusiva funktioner och engagera dig i vår fantastiska community!

Registrera dig
Relaterade inlägg Svar Vyer Verksamhet
[13.0] Module installation failed due to stored compute field on large database
performance installation memory computed-fields 13.0
Avatar
Avatar
1
sep. 21
7524
ValueError: forbidden opcode(s) in 'lambda': STORE_ATTR
computed-fields
Avatar
Avatar
1
juni 25
19582
Make stored compute filed recompute after changing it logic but not depedencies.
computed-fields
Avatar
Avatar
Avatar
Avatar
3
apr. 25
9488
[odoo 13]Discuss template
13.0
Avatar
0
okt. 24
2904
Odoo python backend question
ORM
Avatar
0
aug. 24
3296
Community
  • Instruktionsvideor
  • Dokumentation
  • Forum
Öppen källkod
  • Ladda ner
  • GitHub
  • Runbot
  • Översättningar
Tjänster
  • Odoo.sh Hosting
  • Kundtjänst
  • Uppgradera
  • Anpassningsbara modifikationer
  • Utbildning
  • Revisorer
  • Partners
  • Bli en partner
Om oss
  • Vårt företag
  • Varumärkestillgångar
  • Kontakta oss
  • Jobb
  • Evenemang
  • Podcast
  • Blogg
  • Kunder
  • Juridiskt • Integritet
  • Säkerhet
الْعَرَبيّة 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 är ett affärssystem med öppen källkod som täcker alla dina företagsbehov: CRM, e-handel, bokföring, lager, kassasystem, projektledning, och så vidare.

Odoos unika värdeförslag är att samtidigt vara väldigt enkel att använda men också helt integrerad.

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