تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
5 الردود
22273 أدوات العرض

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
ديسمبر 23
30838
6
يناير 18
32569
1
أغسطس 15
6710
0
مارس 15
6282
2
يوليو 25
2735