Mass Sorting

mass_sorting
REPOSITORY
REPOSITORYOCA/server-tools
GIT
GIThttps://github.com/OCA/server-tools.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/server-tools/tree/10.0/mass_sorting
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYTools
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), GRAP
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), GRAP
COMMITTERS
COMMITTERSSylvain LE GAL, OCA Transbot, oca-travis, Weblate
WEBSITE
WEBSITEhttp://www.grap.coop
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:20:00
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
view_mass_sort_config_form mass.sort.config form New
view_mass_sort_config_search mass.sort.config search New
view_mass_sort_config_tree mass.sort.config tree New
view_mass_sort_wizard_form mass.sort.wizard form New
Models touched (4)

New fields (8)
  • action_id Many2one → ir.actions.act_window
    comodel_name='ir.actions.act_window' copy=False oldname='ref_ir_act_window' readonly=True string='Sidebar Action'
  • allow_custom_setting Boolean
    default=True help='If checked, any user could have the possibility to change fields, and use others.' string='Allow Custom Setting'
  • line_ids One2many → mass.sort.config.line
    comodel_name='mass.sort.config.line' inverse_name='config_id' string='Sorting Criterias'
  • model_id Many2one → ir.model
    comodel_name='ir.model' required=True string='Model'
  • name Char
    required=True string='Name' translate=True
  • one2many_field_id Many2one → ir.model.fields
    comodel_name='ir.model.fields' domain="[('model_id', '=', model_id),('ttype', '=', 'one2many')]" required=True string='Field to Sort'
  • one2many_model Char
    hel="Technical field,used in the model 'mass.sort.config.line'" readonly=True related='one2many_field_id.relation' store=True string='Model Name of the Field to Sort'
  • value_id Many2one → ir.values
    comodel_name='ir.values' copy=False oldname='ref_ir_value' readonly=True string='Sidebar Button'
Public methods (4)
  • copy(self, default=None)
  • create_action(self)
    @api.multi
  • unlink(self)
  • unlink_action(self)
    @api.multi

New fields (4)
  • config_id Many2one → mass.sort.config
    comodel_name='mass.sort.config' string='Wizard'
  • desc Boolean
    string='Inverse Order'
  • field_id Many2one → ir.model.fields
    comodel_name='ir.model.fields' domain="[('model', '=', parent.one2many_model)]" required=True string='Field'
  • sequence Integer
    default=1 required=True string='Sequence'
Public methods (0)

No public methods.

New fields (5)
  • allow_custom_setting Boolean
    readonly=True related='config_id.allow_custom_setting' string='Allow Custom Setting'
  • config_id Many2one → mass.sort.config
    comodel_name='mass.sort.config' default=_default_config_id required=True
  • description Text
    compute='_compute_description' readonly=True string='Description'
  • line_ids One2many → mass.sort.wizard.line
    comodel_name='mass.sort.wizard.line' default=_default_line_ids inverse_name='wizard_id' string='Sorting Criterias'
  • one2many_model Char
    readonly=True related='config_id.one2many_model' string='Model Name of the Field to Sort'
Public methods (1)
  • button_apply(self)

New fields (4)
  • desc Boolean
    args: 'Inverse Order'
  • field_id Many2one → ir.model.fields
    comodel_name='ir.model.fields' domain="[('model', '=', parent.one2many_model)]" required=True string='Field'
  • sequence Integer
    default=1 required=True string='Sequence'
  • wizard_id Many2one → mass.sort.wizard
    comodel_name='mass.sort.wizard' string='Wizard'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/server-tools
GIT
GIThttps://github.com/OCA/server-tools.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/server-tools/tree/8.0/mass_sorting
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYTools
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), GRAP
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), GRAP
COMMITTERS
COMMITTERSSylvain LE GAL, oca-travis
WEBSITE
WEBSITEhttp://www.grap.coop
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:11:25
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
view_mass_sort_config_form mass.sort.config form New
view_mass_sort_config_search mass.sort.config search New
view_mass_sort_config_tree mass.sort.config tree New
view_mass_sort_wizard_form mass.sort.wizard form New
Models touched (4)

New fields (8)
  • action_id Many2one → ir.actions.act_window
    comodel_name='ir.actions.act_window' copy=False oldname='ref_ir_act_window' readonly=True string='Sidebar Action'
  • allow_custom_setting Boolean
    default=True help='If checked, any user could have the possibility to change fields, and use others.' string='Allow Custom Setting'
  • line_ids One2many → mass.sort.config.line
    comodel_name='mass.sort.config.line' inverse_name='config_id' string='Sorting Criterias'
  • model_id Many2one → ir.model
    comodel_name='ir.model' required=True string='Model'
  • name Char
    required=True string='Name' translate=True
  • one2many_field_id Many2one → ir.model.fields
    comodel_name='ir.model.fields' domain="[('model_id', '=', model_id),('ttype', '=', 'one2many')]" required=True string='Field to Sort'
  • one2many_model Char
    hel="Technical field,used in the model 'mass.sort.config.line'" readonly=True related='one2many_field_id.relation' store=True string='Model Name of the Field to Sort'
  • value_id Many2one → ir.values
    comodel_name='ir.values' copy=False oldname='ref_ir_value' readonly=True string='Sidebar Button'
Public methods (4)
  • copy(self, default=None)
    @api.multi
  • create_action(self)
    @api.multi
  • unlink(self)
    @api.multi
  • unlink_action(self)
    @api.multi

New fields (4)
  • config_id Many2one → mass.sort.config
    comodel_name='mass.sort.config' string='Wizard'
  • desc Boolean
    string='Inverse Order'
  • field_id Many2one → ir.model.fields
    comodel_name='ir.model.fields' domain="[('model', '=', parent.one2many_model)]" required=True string='Field'
  • sequence Integer
    default=1 required=True string='Sequence'
Public methods (0)

No public methods.

New fields (5)
  • allow_custom_setting Boolean
    readonly=True related='config_id.allow_custom_setting' string='Allow Custom Setting'
  • config_id Many2one → mass.sort.config
    comodel_name='mass.sort.config' default=_default_config_id required=True
  • description Text
    compute='_compute_description' readonly=True string='Description'
  • line_ids One2many → mass.sort.wizard.line
    comodel_name='mass.sort.wizard.line' default=_default_line_ids inverse_name='wizard_id' string='Sorting Criterias'
  • one2many_model Char
    readonly=True related='config_id.one2many_model' string='Model Name of the Field to Sort'
Public methods (1)
  • button_apply(self)
    @api.multi

New fields (4)
  • desc Boolean
    args: 'Inverse Order'
  • field_id Many2one → ir.model.fields
    comodel_name='ir.model.fields' domain="[('model', '=', parent.one2many_model)]" required=True string='Field'
  • sequence Integer
    default=1 required=True string='Sequence'
  • wizard_id Many2one → mass.sort.wizard
    comodel_name='mass.sort.wizard' string='Wizard'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/server-tools
GIT
GIThttps://github.com/OCA/server-tools.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/server-tools/tree/7.0/mass_sorting
VERSION
VERSION 1.0
CATEGORY
CATEGORYTools
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), GRAP
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), GRAP
COMMITTERS
COMMITTERSPedro M. Baeza
WEBSITE
WEBSITEhttp://www.grap.coop
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:07:15
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Mass Sorting
============

This module provides the functionality to sort an one2many fields in any model.

Typically, you can sort sale order line on a sale order, using any fields.

See screenshots in the description folder.

This module is highly inspired by 'mass_editing' module. (by OCA and SerpentCS)
    

Code Analysis

Views touched (3)
XML IDNameModelTypeStatus
view_mass_sort_config_form mass.sort.config form New
view_mass_sort_config_tree mass.sort.config tree New
view_mass_sort_wizard_form mass.sort.wizard form New
Models touched (4)

New fields (0)

No new fields.

Public methods (5)
  • copy(self, cr, uid, id, value=None, context=None)
  • create_action(self, cr, uid, ids, context=None)
  • on_change_one2many_field_id(self, cr, uid, ids, one2many_field_id, context=None)
  • unlink(self, cr, uid, ids, context=None)
  • unlink_action(self, cr, uid, ids, context=None)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • button_apply(self, cr, uid, ids, context=None)

New fields (0)

No new fields.

Public methods (0)

No public methods.