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

The record rule is not working

Tilmeld

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

Dette spørgsmål er blevet anmeldt
xmlrulesgroupsodoo
2 Besvarelser
3395 Visninger
Avatar
yasmina

The rule is not working, when I add faculty in res.user or when I delete one.



         <record model="ir.rule" id="inscription_admin_rule">

            <field name="name">User inscription</field>

            <field name="model_id" ref="model_inscription"/>

            <field name="groups"

                   eval="[(4, ref('tutorat.group_admin'))]"/>

            <field name="domain_force">[('faculty_id', 'in', user.faculty_id.ids)]</field>

        </record>

  • In class inscription

departement = fields.Many2one('department', 'Département')

faculty_id = fields.Many2one('faculty', string='Faculté',related='departement.faculty_id')

  • In class res.user

faculty_id = fields.Many2many('faculty', string='Faculté')





-1
Avatar
Kassér
Avatar
Cybrosys Techno Solutions Pvt.Ltd
Bedste svar

Hi,

The record rule is not working because ‘faculty_id’ in the model ‘inscription’ is a related field without store=True.

Record rules work at SQL level, so the field must be stored in the database. In inscription model .py file update the field definition like this:-

faculty_id = fields.Many2one('Faculty', related='departement.faculty_id', store=True, index=True)

Then upgrade the module and log in again.

An alternative solution is, change the record rule as follows:


<record model="ir.rule" id="inscription_admin_rule">
  <field name="name">User inscription</field>
  <field name="model_id" ref="model_inscription"/>
  <field name="groups" eval="[(4, ref('tutorat.group_admin'))]"/>
  <field name="domain_force">[('departement.faculty_id', 'in', user.faculty_id.ids)]</field>

</record>


Hope it helps

0
Avatar
Kassér
Avatar
DTech (pvt) ltd, Abhishek Bandaranayaka
Bedste svar

Your rule is not working because faculty_id on inscription is a related field and (most likely) not stored in the database.

Record rules are evaluated at the SQL level. If the field used in domain_force is not stored (store=False), the rule will not behave correctly when adding or removing faculties on res.users.

In your case:

faculty_id = fields.Many2one(

'faculty',

string='Faculté',

related='departement.faculty_id'

)

By default, related fields are not stored.

Solution

Make the related field stored:

faculty_id = fields.Many2one(

'faculty',

string='Faculté',

related='departement.faculty_id',

store=True

)

Then:

  1. Upgrade your module

  2. Restart Odoo

  3. Recompute existing records (if needed)

Why this fixes it

Your rule:

<field name="domain_force">

[('faculty_id', 'in', user.faculty_id.ids)]

</field>

Now works correctly because:

  • inscription.faculty_id is stored in the database

  • The rule can filter records properly at SQL level

  • Changes in user.faculty_id are immediately reflected in access control

After adding store=True, the rule should work correctly when adding or removing faculties from users.

-2
Avatar
Kassér
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
Add menuitem to portal group
security xml groups odoo
Avatar
Avatar
Avatar
2
okt. 22
8457
Problemas al imprimir factura en el odoo
xml odoo
Avatar
0
jan. 25
3200
How to post xml code
xml odoo
Avatar
1
mar. 25
652
How to make field readonly to selected groups Løst
xml groups
Avatar
Avatar
2
mar. 24
9423
How can I include my generic qweb view on my Odoo 16 Form View using JS or Controller
xml odoo
Avatar
Avatar
1
sep. 23
4683
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