Skip to content

Commit

Permalink
[5123][ADD] server_action_mass_edit
Browse files Browse the repository at this point in the history
  • Loading branch information
nobuQuartile committed Jan 23, 2025
1 parent 36b2a4b commit 8a4abfa
Show file tree
Hide file tree
Showing 98 changed files with 24,805 additions and 0 deletions.
155 changes: 155 additions & 0 deletions server_action_mass_edit/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
============
Mass Editing
============

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:c9d51d11bc437ae3e1379c30ac2c63217b0aac275c04106221192a358ebb5d57
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--ux-lightgray.png?logo=github
:target: https://github.com/OCA/server-ux/tree/16.0/server_action_mass_edit
:alt: OCA/server-ux
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/server-ux-16-0/server-ux-16-0-server_action_mass_edit
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/server-ux&target_branch=16.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module provides the following features:

* You can add, update or remove the values of more than one records on the fly at the same time.

* You can configure mass editing for any Odoo model.

**Difference between the Odoo 13.0 CE Feature**

Since Odoo V13, a limited "mass Editing feature" is available in Odoo CE.

This module provides the following extra features that are not in the Core
for the time being:

* Possibility to mass edit many fields in a single action
* Possibility to add a group to limit the usage of this function to given
people
* Possibility to filter the items the user can mass update
* Possibility to mass edit any fields with any widget. (For exemple
color fields, image fields, etc...)

**Table of contents**

.. contents::
:local:

Configuration
=============

* Go to *Settings / Technical / Actions / Server Actions* and configure the object and fields for Mass Editing.

* Select the object and add the fields of that object on which you want to apply mass editing.

.. image:: https://raw.githubusercontent.com/OCA/server-ux/16.0/server_action_mass_edit/static/description/mass_editing_form.png
:width: 70%

* *Add Action*: Click on *Create Contextual Action* to add mass editing in *Action* menu.


**Options**

* You can add an extra message that will be displayed in the wizard.

* This module plays nicely with `server_action_domain`, allowing you to limit
the mass editing action with a domain.

Usage
=====

* *Go for Mass Editing*: select the records which you want to modify and click on *Action* to open mass editing popup.

.. image:: https://raw.githubusercontent.com/OCA/server-ux/16.0/server_action_mass_edit/static/description/mass_editing-item_tree.png
:width: 70%

* Select *Set / Remove* action and write down the value to set or remove the value for the given field.

.. image:: https://raw.githubusercontent.com/OCA/server-ux/16.0/server_action_mass_edit/static/description/mass_editing-wizard_form.png
:width: 70%

* This way you can set / remove the values of the fields.

.. image:: https://raw.githubusercontent.com/OCA/server-ux/16.0/server_action_mass_edit/static/description/mass_editing-item_tree-result.png
:width: 70%

Known issues / Roadmap
======================

- Auto add fields that are used in related domains if apply_domain=True

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-ux/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/server-ux/issues/new?body=module:%20server_action_mass_edit%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
~~~~~~~

* Serpent Consulting Services Pvt. Ltd.
* Tecnativa
* GRAP
* Iván Todorovich

Contributors
~~~~~~~~~~~~

* Oihane Crucelaegui <[email protected]>
* Serpent Consulting Services Pvt. Ltd. <[email protected]>
* Jay Vora <[email protected]>
* Juan Negrete <[email protected]>
* Raul Martin <[email protected]>
* Aitor Bouzas <[email protected]>
* Sylvain LE GAL (https://twitter.com/legalsylvain)
* Iván Todorovich <[email protected]>

* `Tecnativa <https://www.tecnativa.com>`_

* Jairo Llopis
* Víctor Martínez
* Carlos Dauden
* Tatiana Deribina <[email protected]>
* Hieu, Vo Minh Bao <[email protected]>

Maintainers
~~~~~~~~~~~

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

This module is part of the `OCA/server-ux <https://github.com/OCA/server-ux/tree/16.0/server_action_mass_edit>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
2 changes: 2 additions & 0 deletions server_action_mass_edit/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import models
from . import wizard
24 changes: 24 additions & 0 deletions server_action_mass_edit/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Copyright 2016 Serpent Consulting Services Pvt. Ltd. ([email protected])
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
{
"name": "Mass Editing",
"version": "16.0.2.1.1",
"author": "Serpent Consulting Services Pvt. Ltd., "
"Tecnativa, "
"GRAP, "
"Iván Todorovich, "
"Odoo Community Association (OCA)",
"category": "Tools",
"website": "https://github.com/OCA/server-ux",
"license": "AGPL-3",
"summary": "Mass Editing",
"depends": [
"base",
],
"data": [
"security/ir.model.access.csv",
"views/ir_actions_server.xml",
"wizard/mass_editing_wizard.xml",
],
"demo": ["demo/mass_editing.xml"],
}
99 changes: 99 additions & 0 deletions server_action_mass_edit/demo/mass_editing.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Copyright (C) 2020 - Iván Todorovich (https://twitter.com/ivan.todorovich)
Copyright (C) 2019 - Today: GRAP (http://www.grap.coop)
@author: Sylvain LE GAL (https://twitter.com/legalsylvain)
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-->
<odoo>
<!-- Mass Edit User -->
<record id="mass_editing_user" model="ir.actions.server">
<field name="state">mass_edit</field>
<field name="name">Mass Edit</field>
<field name="model_id" ref="base.model_res_users" />
</record>
<record id="mass_editing_user_line_1" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_user" />
<field name="field_id" ref="base.field_res_users__email" />
</record>
<record id="mass_editing_user_line_2" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_user" />
<field name="field_id" ref="base.field_res_users__phone" />
</record>
<record id="mass_editing_user_line_3" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_user" />
<field name="field_id" ref="base.field_res_users__category_id" />
</record>
<record id="mass_editing_user_line_4" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_user" />
<field name="field_id" ref="base.field_res_users__comment" />
</record>
<record id="mass_editing_user_line_5" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_user" />
<field name="field_id" ref="base.field_res_users__country_id" />
</record>
<record id="mass_editing_user_line_6" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_user" />
<field name="field_id" ref="base.field_res_users__is_company" />
</record>
<record id="mass_editing_user_line_7" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_user" />
<field name="field_id" ref="base.field_res_users__lang" />
</record>
<record id="mass_editing_user_line_8" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_user" />
<field name="field_id" ref="base.field_res_users__title" />
</record>
<record id="mass_editing_user_line_9" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_user" />
<field name="field_id" ref="base.field_res_users__company_type" />
</record>
<record id="mass_editing_user_line_10" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_user" />
<field name="field_id" ref="base.field_res_users__image_1920" />
<field name="widget_option">image</field>
</record>
<record id="mass_editing_user_line_11" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_user" />
<field name="field_id" ref="base.field_res_users__bank_ids" />
</record>

<!-- Mass Edit Partner Title -->
<record id="mass_editing_partner_title" model="ir.actions.server">
<field name="state">mass_edit</field>
<field name="name">Mass Edit</field>
<field name="model_id" ref="base.model_res_partner_title" />
</record>
<record
id="mass_editing_partner_title_line_1"
model="ir.actions.server.mass.edit.line"
>
<field name="server_action_id" ref="mass_editing_partner_title" />
<field name="field_id" ref="base.field_res_partner_title__shortcut" />
</record>

<!-- Mass Edit Partner -->
<record id="mass_editing_partner" model="ir.actions.server">
<field name="state">mass_edit</field>
<field name="name">Mass Edit</field>
<field name="model_id" ref="base.model_res_partner" />
</record>
<record id="mass_editing_partner_line_1" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_partner" />
<field name="field_id" ref="base.field_res_partner__parent_id" />
</record>
<record id="mass_editing_partner_line_2" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_partner" />
<field name="field_id" ref="base.field_res_partner__type" />
</record>
<record id="mass_editing_partner_line_3" model="ir.actions.server.mass.edit.line">
<field name="server_action_id" ref="mass_editing_partner" />
<field name="field_id" ref="base.field_res_partner__name" />
</record>
<!-- Add context actions -->
<function model="ir.actions.server" name="create_action">
<value
eval="[ref('mass_editing_user'), ref('mass_editing_partner_title'), ref('mass_editing_partner')]"
/>
</function>
</odoo>
Loading

0 comments on commit 8a4abfa

Please sign in to comment.