Ciao,
grazie del suggerimento, nel frattempo sono andato un pochino avanti ma ben lontano da avere finito con i problemi.
Ho abbandonato l'idea di farmi restituire il dominio completo e per ora mi accontendo della lista con i prodotti validi per il fornitore specificato.
_columns = {
'supplier_id': fields.many2one('res.partner', _("Supplier"), domain=[('supplier', '=', True)]),
'prod_ids': fields.function(get_product_ids, type='one2many', obj='product.product', method=True, string=_("Relevant Products")),
}
Ho messo in output (per debugging) il campo prods_ids (dict contenente la lista dei codici prodotto inseribili per ordine) e mi visualizza l'output atteso (anche troppo bene!!) ma la dropdown per la scelta del prodotto da invece risultati non coerenti e non capisco il perchè.
Allego lo screenshot di un caso prova, per il supplier1 uno dovrei vedere i prodotti s1a+s1b (Relevants Products) mentre la dropdown mi propone s1b+s2a.
www.dropbox.com/s/vswe7helsfxj17n/screenshot.png?dl=0
Il domain è impostato in questo modo:
<xpath expr="//notebook/page[@string='Order Lines']/field[@name='order_line']/tree/field[@name='product_id']" position="attributes">
<attribute name="domain">[('id', 'in', parent.prod_ids[parent.id])]</attribute>
</xpath>
Qualcuno mi sa dire dove sbaglio?
Grazie.