Ciao a tutti,
rieccoci con un nuovo tutorial su ODOO.
Questa
volta vi spiegherò come modificare il nome dei prodotti che
visualizziamo in fase di ricerca quando per esempio vogliamo creare una
riga di un ordine di vendita.
Un task apparentemente semplice ma che invece presenta delle difficoltà per chi si avvicina la prima volta ad ODOO.
Da dove è nata questa mia necessità?
Mi è stato richiesto di estendere il modello product.product per aggiungere:
- l’anno di produzione del prodotto
- Il formato del prodotto
Il metodo name_get del modello product.product si occupa appunto di elaborare il nome visualizzato del prodotto aggiungendone anche il codice di riferimento.
Per modificarne il comportamento ci basterà estendere tale metodo.
Ricordiamo che dovrà essere esteso anche il dizionario restituito dal metodo che dovrà contenere i campi custom che ci interessa "salvare" dal prodotto
Per visualizzare formato ed anno basterà:
- controllare se il dizionario passato come input contenga il campo che ci interessa
- aggiungere al nome restituito i campi custom
In questo modo siamo riusciti a visualizzare i campi da noi aggiunti ma non abbiamo ancora la possibilità di ricercare uno specifico prodotto a partire da questi campi.
Il metodo che andremo ad estendere è name_search, tale metodo come lo si può intuire dal nome effettua la ricerca dei prodotti.
Il metodo name_search utilizza il metodo search dell'ORM di ODOO per cercare tutte le occorrenze che contengono la stringa digitata dall'utente.
Per poter estendere la ricerca ai campi custom aggiunti al prodotto ho effettuato un ulteriore ricerca cioè ho aggiunto un OR tra i miei due campi custom.
L'ORM di ODOO definisce le condizioni secondo la sintassi della notazione polacca, in cui gli operatori si trovano tutti a sinistra.
Per approfondirne la conoscenza consiglio di documentarsi alla relativa pagina di Wikipedia (https://it.wikipedia.org/wiki/Notazione_polacca)
Il nostro tutorial finisce qui, l'argomento presentato .
Stay tuned!
Letizia