Ciao a tutti,
ho la necessità di creare un filtro di ricerca custom "dinamico", che filtri i risultati per il criterio impostato nel dominio.
Per dinamicità, intendo che il valore settato nel dominio deve essere variabile e recuperato dal contesto.
Nello specifico, ho un campo many2many in un wizard, che attraverso la funzione integrata (link: Add an item) apre un altro wizard (classico wizard di default di Odoo) in cui è possibile ricercare/filtrare/raggruppare e quindi selezionare o creare gli elementi da aggiungere al campo many2many.
Il campo many2many è il seguente:
<field name="pricelist_item_ids" context="{'search_default_pricelist': 1, 'pricelist_id_id': 12}">
La definizione del filtro in questione è:
<record model="ir.ui.view" id="view_filter1">
<field name="model">model</field>
<field name="type">search</field>
<field name="arch" type="xml">
<search string="">
<filter string="Selected Pricelist"
name="pricelist"
domain="[('pricelist_id','=', VALORE DINAMICO)]"/>
</search>
</field>
</record>
In
VALORE DINAMICO vorrei recuperare tramite context il valore "pricelist_id_id" =>
context ma Odoo restituisce un errore di KeyError, come se non trovasse il valore nel contesto.
Possibile che non è possibile accedere utilizzare il contesto, nella definizione del dominio di un filtro di ricerca?
Sbaglio approccio?
Con valori statici invece funziona tutto come dovrebbe:
domain="[('pricelist_id','=', 12)]
Esistono altre strade percorribili? Mi sembra strano che non posso rendere dinamico un filtro, sulla base di un id passato nel contesto. Magari bisogna intervenire lato python, facendo l'override di qualche metodo particolare?
P.S sto utilizzando Odoo 9.0!
Grazie in anticipo