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
    • Artificial Intelligence
    • 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
    • Property Management
    • 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
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

[✅ SOLVED] How to extend a XML search filter view and add an additional filter ?

Prenumeruoti

Get notified when there's activity on this post

This question has been flagged
filtersearchviewxmlviewv18
1 Atsakyti
5388 Rodiniai
Portretas
AdaLabs Ltd

Hi,

our aim is to extend a XML search filter view and add an additional filter.


This is the very first step we want to achieve. Then we will enhance our search filter domain by using a computed, searchable and not stored field. Finally, we will make the filter to be a default filter for users of a specific group. This bigger picture context is the reason why we want to achieve our aim this particular way.


Our Odoo module technical name is called al_hr_holidays, and inherits from the Time Off Odoo app, which technical name is hr_holidays.


From the code below, our module implements a view that inherits from the hr_holidays.view_hr_holidays_filter view [1] and add a very simple filter domain [2] after the existing department filter.


    <?xml version="1.0" encoding="utf-8"?>
    <odoo>
       <record id="al_hr_holidays.al_view_hr_holidays_filter" model="ir.ui.view">
          <field name="name">al.hr.holidays.filter</field>
          <field name="model">hr.leave</field>
          <field name="mode">primary</field>
          <field name="priority">1</field>
          <field name="inherit_id" ref="hr_holidays.view_hr_holidays_filter"/>
          <field name="arch" type="xml">
               <xpath expr="//filter[@name='department']" position="after">
                <filter name="additional_filter"
                        string="Additional Filter"
                        domain="[('state', '=', 'confirm')]"/>
             </xpath>
          </field>
       </record>
    </odoo>


However, the additional_filter filter is not rendered in the search filter, even after making sure that:


  • The al_hr_holidays module has been updated
  • The External ID of the view we are inheriting is valid
  • The XPath expression is valid
  • There is no error in the Odoo log
  • The browser cache has been cleared


Any hints on how to fix this issue? also present in Odoo 18 enterprise


[1] hr_holidays.view_hr_holidays_filter view, line 38 

addons/hr_holidays/views/hr_leave_views.xml


[2] The filter selects the leaves that are in the confirm state

0
Portretas
Atmesti
Ray Carnes (ray)

You can modify/extend the Parent View with mode=primary. This creates a brand new View. In order to use this View you need to reference it somewhere in Odoo. Without referencing it, it will never be used.

AdaLabs Ltd
Autorius

(edited comment)
Thanks Ray for your 2 amazing clarifications

Two way to fix the issue:

1. (recommended) Completely remove the 'mode' field, as it is not needed in our context.
2. Change the value of the 'mode' field from 'primary' to 'extension'

The documentation on the mode field is available here https://www.odoo.com/documentation/18.0/developer/reference/user_interface/view_records.html

Care should be taken when we copy an example from outside. Before reusing it, we should carefully understand the meaning of each field.

So we would use 'primary' mode for a new view that would however be based on another view. In this case, reference of the new view should be used to render the new content. That was not the case here, this is why the 'additional_filter' was not rendered in the parent view.

Portretas
Ray Carnes (ray)
Best Answer

MODE. 

PRIMARY means you are making a NEW View and need to define where this new View is used or it will never be used. 

It should be INHERIT if you want your change to be applied to an EXISTING View. 

0
Portretas
Atmesti
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
Python: Retrieving filtered records Solved
filter python v18
Portretas
Portretas
Portretas
3
liep. 25
3153
Suggestions for global filtering data by company?
filter searchview odoo10
Portretas
Portretas
1
spal. 22
6056
Why does Product search-view not show all products? Solved
filter product searchview
Portretas
Portretas
Portretas
Portretas
Portretas
7
kov. 17
15789
Problem with date filter BETWEEN two dates
filter date between v18
Portretas
Portretas
Portretas
2
geg. 25
3200
Search Bar Filter Customization
filter xml searchview searchbar
Portretas
0
lapkr. 24
2016
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 Svenska ภาษาไทย 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