跳至內容
選單
此問題已被標幟
5 回覆
22391 瀏覽次數

I am inheriting the action_produce method from the class mrp_production.  I want to get the quants that are reserved for each of the moves.

The beginning of my method looks like this:

 

    @api.model
    @api.depends('move_created_ids')
    def action_produce(self, production_id, production_qty, production_mode, wiz=False, context=None):
        production = self.browse(production_id)
        domain = ['reservation_id', 'in', production.move_lines.ids]
        stock_quants_obj = self.env['stock.quant']
        pdb.set_trace()
        quants = stock_quants_obj.search(domain)

When I get to the last line above, I get:

ValueError: Invalid leaf reservation_id

I tried using other fields that exist in stock.quant (eg ['cost','>','0']) and they all say Invalid leaf [fieldname]

Is there something wrong with how I'm getting my stock_quants_obj?

頭像
捨棄
最佳答案

Try this:

domain = [('reservation_id', 'in', production.move_lines.ids)]

頭像
捨棄
作者

This works! Could you explain this to me? In looking at other domains and (obviously misreading the ORM documentation), I thought that my syntax was correct.

https://media.readthedocs.org/pdf/odoo-new-api-guide-line/latest/odoo-new-api-guide-line.pdf

作者

Ah, I see! Thank you.

最佳答案

This Works. for me

scores = results.search([('category', '=', 'Division 3')])
try this
domain =

domain = ([('reservation_id', 'in', production.move_lines.ids)])


頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
2
12月 23
30983
6
1月 18
32829
1
8月 15
6835
0
3月 15
6417
1
8月 25
361