From 995b7bbbc62952941f4fd8a51b920ef167de9795 Mon Sep 17 00:00:00 2001 From: Carlos Roca <carlos.roca@tecnativa.com> Date: Wed, 7 Jun 2023 10:21:05 +0200 Subject: [PATCH] [FIX] web_pivot_computed_measure: Error when computed measure takes Infinity value --- web_pivot_computed_measure/README.rst | 15 ++++--- web_pivot_computed_measure/__manifest__.py | 2 +- web_pivot_computed_measure/i18n/ca.po | 45 +++++++++++-------- web_pivot_computed_measure/i18n/es.po | 2 +- .../static/description/index.html | 42 ++++++++--------- .../static/src/pivot/pivot_renderer.esm.js | 15 +++++++ 6 files changed, 74 insertions(+), 47 deletions(-) create mode 100644 web_pivot_computed_measure/static/src/pivot/pivot_renderer.esm.js diff --git a/web_pivot_computed_measure/README.rst b/web_pivot_computed_measure/README.rst index 4e7a16a8c..7b53c329a 100644 --- a/web_pivot_computed_measure/README.rst +++ b/web_pivot_computed_measure/README.rst @@ -2,10 +2,13 @@ Web Pivot Computed Measure ========================== -.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:ece4336d91177883eff784573de23cd6a67b1044e080eb758f7de5e6374d57f0 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png :target: https://odoo-community.org/page/development-status @@ -19,11 +22,11 @@ Web Pivot Computed Measure .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png :target: https://translation.odoo-community.org/projects/web-15-0/web-15-0-web_pivot_computed_measure :alt: Translate me on Weblate -.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/162/15.0 - :alt: Try me on Runbot +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/web&target_branch=15.0 + :alt: Try me on Runboat -|badge1| |badge2| |badge3| |badge4| |badge5| +|badge1| |badge2| |badge3| |badge4| |badge5| Adds support for computed measures on the pivot view. @@ -72,7 +75,7 @@ Bug Tracker Bugs are tracked on `GitHub Issues <https://github.com/OCA/web/issues>`_. In case of trouble, please check there if your issue has already been reported. -If you spotted it first, help us smashing it by providing a detailed and welcomed +If you spotted it first, help us to smash it by providing a detailed and welcomed `feedback <https://github.com/OCA/web/issues/new?body=module:%20web_pivot_computed_measure%0Aversion:%2015.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. diff --git a/web_pivot_computed_measure/__manifest__.py b/web_pivot_computed_measure/__manifest__.py index d18096526..7f172c2ed 100644 --- a/web_pivot_computed_measure/__manifest__.py +++ b/web_pivot_computed_measure/__manifest__.py @@ -3,7 +3,7 @@ { "name": "Web Pivot Computed Measure", "category": "web", - "version": "15.0.1.0.1", + "version": "15.0.1.0.2", "author": "Tecnativa, Odoo Community Association (OCA)", "license": "AGPL-3", "website": "https://github.com/OCA/web", diff --git a/web_pivot_computed_measure/i18n/ca.po b/web_pivot_computed_measure/i18n/ca.po index 92348fdc4..2286bb66e 100644 --- a/web_pivot_computed_measure/i18n/ca.po +++ b/web_pivot_computed_measure/i18n/ca.po @@ -18,133 +18,140 @@ msgstr "" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/view.xml:0 +#, python-format +msgid "!measure.startsWith('__computed_')" +msgstr "" + +#. module: web_pivot_computed_measure +#. openerp-web +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Add" msgstr "Afegir" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Can be empty" msgstr "Pot estar buit" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Computed Measure" msgstr "Mesura calculada" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Custom" msgstr "Personalitat" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Div (m1 / m2)" msgstr "Div (m1 / m2)" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Float" msgstr "Comma flotant" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Format" msgstr "Format" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Formula" msgstr "Fórmula" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Integer" msgstr "Enter" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Measure 1" msgstr "Mesura 1" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Measure 2" msgstr "Mesura 2" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Mult (m1 * m2)" msgstr "Mult (m1 * m2)" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Name" msgstr "Nom" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Operation" msgstr "Operació" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Perc (m1 * 100 / m2)" msgstr "Perc (m1 * 100 / m2)" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Percentage" msgstr "Percentatge" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Sub (m1 - m2)" msgstr "Resta (m1 - m2)" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/xml/web_pivot_computed_measure.xml:0 +#: code:addons/web_pivot_computed_measure/static/src/dropdown_item_custom_measure/dropdown_item_custom_measure.xml:0 #, python-format msgid "Sum (m1 + m2)" msgstr "Suma (m1 + m2)" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/js/pivot_model.js:0 +#: code:addons/web_pivot_computed_measure/static/src/pivot/pivot_model.esm.js:0 #, python-format msgid "" "This measure is currently used by a 'computed measure'. Please, disable the " diff --git a/web_pivot_computed_measure/i18n/es.po b/web_pivot_computed_measure/i18n/es.po index 4b375526c..7fa62c897 100644 --- a/web_pivot_computed_measure/i18n/es.po +++ b/web_pivot_computed_measure/i18n/es.po @@ -152,7 +152,7 @@ msgstr "Sum (m1 + m2)" #. module: web_pivot_computed_measure #. openerp-web -#: code:addons/web_pivot_computed_measure/static/src/pivot/pivot_model.js:0 +#: code:addons/web_pivot_computed_measure/static/src/pivot/pivot_model.esm.js:0 #, python-format msgid "" "This measure is currently used by a 'computed measure'. Please, disable the " diff --git a/web_pivot_computed_measure/static/description/index.html b/web_pivot_computed_measure/static/description/index.html index cf9c32d4a..b124f1866 100644 --- a/web_pivot_computed_measure/static/description/index.html +++ b/web_pivot_computed_measure/static/description/index.html @@ -1,20 +1,20 @@ -<?xml version="1.0" encoding="utf-8" ?> +<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> -<meta name="generator" content="Docutils 0.15.1: http://docutils.sourceforge.net/" /> +<meta name="generator" content="Docutils: https://docutils.sourceforge.io/" /> <title>Web Pivot Computed Measure</title> <style type="text/css"> /* :Author: David Goodger (goodger@python.org) -:Id: $Id: html4css1.css 7952 2016-07-26 18:15:59Z milde $ +:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $ :Copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. -See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to +See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to customize this style sheet. */ @@ -366,25 +366,27 @@ ul.auto-toc { <!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +!! source digest: sha256:ece4336d91177883eff784573de23cd6a67b1044e080eb758f7de5e6374d57f0 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/web/tree/15.0/web_pivot_computed_measure"><img alt="OCA/web" src="https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/web-15-0/web-15-0-web_pivot_computed_measure"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/162/15.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p> +<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/web/tree/15.0/web_pivot_computed_measure"><img alt="OCA/web" src="https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/web-15-0/web-15-0-web_pivot_computed_measure"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/web&target_branch=15.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p> <p>Adds support for computed measures on the pivot view.</p> <p><strong>Table of contents</strong></p> <div class="contents local topic" id="contents"> <ul class="simple"> -<li><a class="reference internal" href="#usage" id="id1">Usage</a></li> -<li><a class="reference internal" href="#known-issues-roadmap" id="id2">Known issues / Roadmap</a></li> -<li><a class="reference internal" href="#bug-tracker" id="id3">Bug Tracker</a></li> -<li><a class="reference internal" href="#credits" id="id4">Credits</a><ul> -<li><a class="reference internal" href="#authors" id="id5">Authors</a></li> -<li><a class="reference internal" href="#contributors" id="id6">Contributors</a></li> -<li><a class="reference internal" href="#maintainers" id="id7">Maintainers</a></li> +<li><a class="reference internal" href="#usage" id="toc-entry-1">Usage</a></li> +<li><a class="reference internal" href="#known-issues-roadmap" id="toc-entry-2">Known issues / Roadmap</a></li> +<li><a class="reference internal" href="#bug-tracker" id="toc-entry-3">Bug Tracker</a></li> +<li><a class="reference internal" href="#credits" id="toc-entry-4">Credits</a><ul> +<li><a class="reference internal" href="#authors" id="toc-entry-5">Authors</a></li> +<li><a class="reference internal" href="#contributors" id="toc-entry-6">Contributors</a></li> +<li><a class="reference internal" href="#maintainers" id="toc-entry-7">Maintainers</a></li> </ul> </li> </ul> </div> <div class="section" id="usage"> -<h1><a class="toc-backref" href="#id1">Usage</a></h1> +<h1><a class="toc-backref" href="#toc-entry-1">Usage</a></h1> <p>Go to pivot view and click on the “Measures” menu, you will see a new option called ‘Computed Measure’.</p> <dl class="docutils"> @@ -429,30 +431,30 @@ a new option called ‘Computed Measure’.</p> can’t be deactivated until you have deactivate the ‘computed measure’.</p> </div> <div class="section" id="known-issues-roadmap"> -<h1><a class="toc-backref" href="#id2">Known issues / Roadmap</a></h1> +<h1><a class="toc-backref" href="#toc-entry-2">Known issues / Roadmap</a></h1> <ol class="arabic simple"> <li>Add support to define a style for a computed measure (ex. colored)</li> <li>Use t-model to data-binding instad of jquery selectors</li> </ol> </div> <div class="section" id="bug-tracker"> -<h1><a class="toc-backref" href="#id3">Bug Tracker</a></h1> +<h1><a class="toc-backref" href="#toc-entry-3">Bug Tracker</a></h1> <p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/web/issues">GitHub Issues</a>. In case of trouble, please check there if your issue has already been reported. -If you spotted it first, help us smashing it by providing a detailed and welcomed +If you spotted it first, help us to smash it by providing a detailed and welcomed <a class="reference external" href="https://github.com/OCA/web/issues/new?body=module:%20web_pivot_computed_measure%0Aversion:%2015.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p> <p>Do not contact contributors directly about support or help with technical issues.</p> </div> <div class="section" id="credits"> -<h1><a class="toc-backref" href="#id4">Credits</a></h1> +<h1><a class="toc-backref" href="#toc-entry-4">Credits</a></h1> <div class="section" id="authors"> -<h2><a class="toc-backref" href="#id5">Authors</a></h2> +<h2><a class="toc-backref" href="#toc-entry-5">Authors</a></h2> <ul class="simple"> <li>Tecnativa</li> </ul> </div> <div class="section" id="contributors"> -<h2><a class="toc-backref" href="#id6">Contributors</a></h2> +<h2><a class="toc-backref" href="#toc-entry-6">Contributors</a></h2> <ul class="simple"> <li><a class="reference external" href="https://www.tecnativa.com/">Tecnativa</a>:<ul> <li>Alexandre D. Díaz</li> @@ -464,7 +466,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome </ul> </div> <div class="section" id="maintainers"> -<h2><a class="toc-backref" href="#id7">Maintainers</a></h2> +<h2><a class="toc-backref" href="#toc-entry-7">Maintainers</a></h2> <p>This module is maintained by the OCA.</p> <a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a> <p>OCA, or the Odoo Community Association, is a nonprofit organization whose diff --git a/web_pivot_computed_measure/static/src/pivot/pivot_renderer.esm.js b/web_pivot_computed_measure/static/src/pivot/pivot_renderer.esm.js new file mode 100644 index 000000000..d3a0e9c7b --- /dev/null +++ b/web_pivot_computed_measure/static/src/pivot/pivot_renderer.esm.js @@ -0,0 +1,15 @@ +/** @odoo-module **/ +/* Copyright 2022 Tecnativa - Carlos Roca + * License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html) */ + +import {PivotRenderer} from "@web/views/pivot/pivot_renderer"; +import {patch} from "web.utils"; + +patch(PivotRenderer.prototype, "web_pivot_computed_measure.PivotRenderer", { + getFormattedValue(cell) { + if (cell.value === Infinity) { + return "-"; + } + return this._super(...arguments); + }, +});