Skip to content

Commit

Permalink
Merge PR #259 into 16.0
Browse files Browse the repository at this point in the history
Signed-off-by legalsylvain
  • Loading branch information
OCA-git-bot committed Mar 9, 2024
2 parents cdae909 + f57895a commit 4bbafbb
Show file tree
Hide file tree
Showing 25 changed files with 1,086 additions and 0 deletions.
141 changes: 141 additions & 0 deletions server_action_sort/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
================================
Server Actions - Mass Sort Lines
================================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:e221269a77f3ad06e190cd3f0c72ecdfc6d1cd0022b81e3ec57722b3c6dad475
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |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--backend-lightgray.png?logo=github
:target: https://github.com/OCA/server-backend/tree/16.0/server_action_sort
:alt: OCA/server-backend
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/server-backend-16-0/server-backend-16-0-server_action_sort
: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-backend&target_branch=16.0
:alt: Try me on Runboat

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

This module provides a generic tools to have the possibility to sort the lines
of a list of items.

For exemple, if you use the sale module, you can want to reorder the sale
order lines, by any criterias.

**Table of contents**

.. contents::
:local:

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

* Go to 'Setting / Technical / Actions / Server Actions'

* Create a new item

.. figure:: https://raw.githubusercontent.com/OCA/server-backend/16.0/server_action_sort/static/description/ir_actions_server_form.png

* Set a name that will be used for the Contextual Action

* choose a model

* Select 'Sort' option in the field 'Action To Do'

* Then, select a field to sort of this model. It should be a ``one2many`` field.

* Select then the criterias used to sort the selected field.


**Extra options**

* you can define groups whose members will have access to that option.

Usage
=====

* Go to a tree view, for a model for which you have defined a 'Sort' action.

* Select some items you want to reorder.

* click on 'Action' Button

.. figure:: https://raw.githubusercontent.com/OCA/server-backend/16.0/server_action_sort/static/description/sale_order_tree.png


* then click on the name of the configured Action and see the results

**Before**

.. figure:: https://raw.githubusercontent.com/OCA/server-backend/16.0/server_action_sort/static/description/sale_order_form_before.png

**After**

.. figure:: https://raw.githubusercontent.com/OCA/server-backend/16.0/server_action_sort/static/description/sale_order_form_after.png

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

For instance, the module allow to order with many criterias, but
without "dot" notation : it is not possible to order sale order lines
by ``product_id.seller_ids.code`` for exemple.

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-backend/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-backend/issues/new?body=module:%20server_action_sort%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
~~~~~~~

* GRAP

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

* Sylvain LE GAL (https://www.twitter.com/legalsylvain)

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.

.. |maintainer-legalsylvain| image:: https://github.com/legalsylvain.png?size=40px
:target: https://github.com/legalsylvain
:alt: legalsylvain

Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-legalsylvain|

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

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions server_action_sort/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
20 changes: 20 additions & 0 deletions server_action_sort/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Copyright (C) 2020 - 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).

{
"name": "Server Actions - Mass Sort Lines",
"version": "16.0.1.0.0",
"author": "GRAP, " "Odoo Community Association (OCA)",
"summary": "Sort any lines of any models by any criterias",
"category": "Tools",
"website": "https://github.com/OCA/server-backend",
"license": "AGPL-3",
"depends": ["base"],
"maintainers": ["legalsylvain"],
"data": [
"security/ir.model.access.csv",
"views/view_ir_actions_server.xml",
],
"demo": ["demo/ir_actions_server.xml"],
}
43 changes: 43 additions & 0 deletions server_action_sort/demo/ir_actions_server.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!--
Copyright (C) 2020 - 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>

<record id="sort_action_server_lines" model="ir.actions.server">
<field name="name">Action Server Sort Lines</field>
<field name="state">sort</field>
<field name="model_id" ref="base.model_ir_actions_server" />
<field
name="sort_field_id"
ref="server_action_sort.field_ir_actions_server__sort_line_ids"
/>
</record>

<record id="sort_action_server_lines_line_1" model="ir.actions.server.sort.line">
<field name="sequence">1</field>
<field name="action_id" ref="sort_action_server_lines" />
<field name="desc" eval="False" />
<field
name="field_id"
ref="server_action_sort.field_ir_actions_server_sort_line__field_name"
/>
</record>

<record id="sort_action_server_lines_line_2" model="ir.actions.server.sort.line">
<field name="sequence">2</field>
<field name="action_id" ref="sort_action_server_lines" />
<field name="desc" eval="False" />
<field
name="field_id"
ref="server_action_sort.field_ir_actions_server_sort_line__desc"
/>
</record>

<function model="ir.actions.server" name="create_action">
<value eval="[ref('sort_action_server_lines')]" />
</function>

</odoo>
179 changes: 179 additions & 0 deletions server_action_sort/i18n/fr.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,179 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * server_action_sort
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-03-16 18:08+0000\n"
"PO-Revision-Date: 2020-03-16 18:08+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line__action_id
msgid "Action"
msgstr "Action"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server__state
msgid "Action To Do"
msgstr "Action à effectuer"

#. module: server_action_sort
#: selection:ir.actions.server,state:0
msgid "Add Followers"
msgstr "Ajouter des abonnés"

#. module: server_action_sort
#: selection:ir.actions.server,state:0
msgid "Create Next Activity"
msgstr "Créer une activité "

#. module: server_action_sort
#: selection:ir.actions.server,state:0
msgid "Create a new Record"
msgstr "Créer un nouvel enregistrement"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line__create_uid
msgid "Created by"
msgstr "Créé par"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line__create_date
msgid "Created on"
msgstr "Créé le"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line__display_name
msgid "Display Name"
msgstr "Nom affiché"

#. module: server_action_sort
#: selection:ir.actions.server,state:0
msgid "Execute Python Code"
msgstr "Exécuter le code Python"

#. module: server_action_sort
#: selection:ir.actions.server,state:0
msgid "Execute several actions"
msgstr "Exécuter plusieurs actions"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line__field_id
msgid "Field"
msgstr "Champ"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line__field_name
msgid "Field Name"
msgstr "Nom de Champ"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server__sort_field_id
msgid "Field to Sort"
msgstr "Champ à trier"

#. module: server_action_sort
#: model:ir.model.fields,help:server_action_sort.field_ir_actions_server__sort_field_id_model
msgid "For relationship fields, the technical name of the target model"
msgstr "Pour les champs de relation, le nom technique du modèle cible"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line__id
msgid "ID"
msgstr "ID"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line__desc
msgid "Inverse Order"
msgstr "Ordre inverse"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line____last_update
msgid "Last Modified on"
msgstr "Dernière modification le"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line__write_uid
msgid "Last Updated by"
msgstr "Dernière mise à jour par"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line__write_date
msgid "Last Updated on"
msgstr "Dernière mise à jour le"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server__sort_field_id_model
msgid "Model of the Field to Sort"
msgstr "Modèle du champ à trier"

#. module: server_action_sort
#: selection:ir.actions.server,state:0
msgid "Send Email"
msgstr "Envoyer par courriel"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server_sort_line__sequence
msgid "Sequence"
msgstr "Séquence"

#. module: server_action_sort
#: model:ir.model,name:server_action_sort.model_ir_actions_server
msgid "Server Action"
msgstr "Action du serveur"

#. module: server_action_sort
#: model:ir.model,name:server_action_sort.model_ir_actions_server_sort_line
msgid "Server Actions Sort Lines"
msgstr "Ligne de tri d'Action Serveur"

#. module: server_action_sort
#: selection:ir.actions.server,state:0
msgid "Sort"
msgstr "Trier"

#. module: server_action_sort
#: model:ir.actions.server,name:server_action_sort.sort_action_server_lines
msgid "Demo - Action Server: Sort Lines"
msgstr "Démo - Action serveur : Trier les lignes"

#. module: server_action_sort
#: model_terms:ir.ui.view,arch_db:server_action_sort.view_ir_actions_server_form
msgid "Sort Options"
msgstr "Options de tri"

#. module: server_action_sort
#: model:ir.model.fields,field_description:server_action_sort.field_ir_actions_server__sort_line_ids
msgid "Sorting Criterias"
msgstr "Critères de tri"

#. module: server_action_sort
#: code:addons/server_action_sort/models/ir_actions_server.py:31
#, python-format
msgid "The Action Server %s is not correctly set :\n"
"No lines defined"
msgstr "L'action Serveur %s n'est pas correctement paramétré : \n"
"Pas de lignes définies"


#. module: server_action_sort
#: selection:ir.actions.server,state:0
msgid "Update the Record"
msgstr "Mettre à jour l'enregistrement"

#. module: server_action_sort
#: code:addons/server_action_sort/models/ir_actions_server.py:36
#, python-format
msgid "You can not run this Action Server that way.\n"
" Please use contextual 'Action' menu."
msgstr "Vous ne pouvez pas exécuter cette action serveur de cette façon.\n"
" Veuillez utiliser le menu contextuel 'Action'."

2 changes: 2 additions & 0 deletions server_action_sort/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import ir_actions_server
from . import ir_actions_server_sort_line
Loading

0 comments on commit 4bbafbb

Please sign in to comment.