[IMP] stock_picking_batch_custom: order detailed ops by category, product, partner

Override _order on stock.move.line using the existing stored Many2one fields.
Odoo JOINs product.category and uses its _order (complete_name, which is stored)
so the full category path is used for sorting without any extra fields.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
GitHub Copilot 2026-05-28 20:22:18 +02:00
parent f5670906f9
commit 6125515772
2 changed files with 2 additions and 23 deletions

View file

@ -8,7 +8,7 @@ from odoo import models
class StockMoveLine(models.Model):
_inherit = "stock.move.line"
_order = "product_categ_complete_name, product_name, partner_name, id"
_order = "product_categ_id, product_id, picking_partner_id, id"
product_categ_id = fields.Many2one(
comodel_name="product.category",
@ -18,27 +18,6 @@ class StockMoveLine(models.Model):
readonly=True,
)
product_categ_complete_name = fields.Char(
string="Product Category Path",
related="product_id.categ_id.complete_name",
store=True,
readonly=True,
)
product_name = fields.Char(
string="Product Name",
related="product_id.name",
store=True,
readonly=True,
)
partner_name = fields.Char(
string="Partner Name",
related="picking_id.partner_id.name",
store=True,
readonly=True,
)
product_default_code = fields.Char(
string="Product Code",
related="product_id.default_code",

View file

@ -47,7 +47,7 @@
<field name="inherit_id" ref="stock_picking_batch.view_move_line_tree"/>
<field name="arch" type="xml">
<xpath expr="//list" position="attributes">
<attribute name="default_order">product_categ_complete_name,product_name,partner_name</attribute>
<attribute name="default_order">product_categ_id,product_id,picking_partner_id</attribute>
<attribute name="class">o_batch_move_line_list</attribute>
</xpath>
<xpath expr="//field[@name='product_id']" position="before">