1
votes

I am trying to create a new field on the sale.order.line model. This field is called x_all_route_ids, and is meant to contain all of the available stock.location.route for an Order Line.

It should look up the product_id.route_ids and product_id.routes_from_categ_ids for the Order Line, and join them together into a single set of Routes.

I am trying to set this field up through the Odoo UI, but getting error related to my "Dependencies".

I have Dependencies defined as:

product_id, product_id.route_ids, product_id.routes_from_categ_ids

I have Compute defined as:

for record in self:
    record['x_all_route_ids'] = record.product_id.route_ids

To start I am just trying to get the field to show the same value as product_id.route_ids, but it's not working. When I save, I get the following error:

Error while validating constraint

Unknown field u'product_id' in dependency u'product_id'

Any idea what I'm doing wrong here?

1
Can you please share the field definition of the new computed field and the whole compute method?CZoellner
@CZoellner I posted the solution belowflyingL123

1 Answers

1
votes

I was able to get this working. I think the issue was just a bug in the UI that came about because I had been trying so many different things. After refreshing the page, the following worked:

Dependency = product_id

Field type = many2many

Compute method:

for record in self:
    full = record.product_id.route_ids | record.product_id.route_from_categ_ids
    record['x_all_route_ids'] = full.filtered('sale_selectable')