Skip to Content
Meniu
Trebuie să fiți înregistrat pentru a interacționa cu comunitatea.
Această întrebare a fost marcată
1 Răspunde
7618 Vizualizări

Hi , This is a technical question I need to get the product value in stock by a search method in python.

Imagine profil
Abandonează

What do you mean by product value ? Inventory Valuation or Quantity of Product ?

Cel mai bun răspuns
product_value = 0

pickings = self.env['stock.picking'].search([],limit=1)

for picking in pickings:
    for valuation in picking.move_lines.stock_valuation_layer_ids:
         product_value = product_value + valuation.value


If i understood you .. you are trying to get the inventory valuation layers for a specific product there is a method provided by odoo in every stock move that can help you get all the valuation layers keep in mind that you have to get the right stock pickings for your products if you want to get the accurate valuations.

Here is an example from Odoo that is using the same method in stock_account module 

class StockPicking(models.Model):
_inherit = 'stock.picking'

country_code = fields.Char(related="company_id.account_fiscal_country_id.code")

def action_view_stock_valuation_layers(self):
self.ensure_one()
scraps = self.env['stock.scrap'].search([('picking_id', '=', self.id)])
domain = [('id', 'in', (self.move_lines + scraps.move_id).stock_valuation_layer_ids.ids)]
action = self.env["ir.actions.actions"]._for_xml_id("stock_account.stock_valuation_layer_action")
context = literal_eval(action['context'])
context.update(self.env.context)
context['no_at_date'] = True
return dict(action, domain=domain, context=context)
Imagine profil
Abandonează
Related Posts Răspunsuri Vizualizări Activitate
1
iul. 25
1379
1
aug. 25
2965
1
mar. 23
1963
1
mai 17
3484
0
dec. 24
4028