From 9ba2cfc9aa9467b2ffc243726e5f0f85b9d274e1 Mon Sep 17 00:00:00 2001 From: mcsi-odoo Date: Fri, 20 Jun 2025 10:24:19 +0000 Subject: [PATCH] [IMP] spreadsheet: new global filter on checkbox/boolean fields task-4885903 X-original-commit: 1c8ae7322245af737030212070701e6ab057c843 --- .../spreadsheet/global_filters.rst | 61 ++++++++++++++---- .../global_filters/example-checkbox.png | Bin 0 -> 21443 bytes .../field-matching-checkbox.png | Bin 0 -> 5732 bytes 3 files changed, 48 insertions(+), 13 deletions(-) create mode 100644 content/applications/productivity/spreadsheet/global_filters/example-checkbox.png create mode 100644 content/applications/productivity/spreadsheet/global_filters/field-matching-checkbox.png diff --git a/content/applications/productivity/spreadsheet/global_filters.rst b/content/applications/productivity/spreadsheet/global_filters.rst index d3c9b35d1c..10e8ce65d8 100644 --- a/content/applications/productivity/spreadsheet/global_filters.rst +++ b/content/applications/productivity/spreadsheet/global_filters.rst @@ -17,7 +17,7 @@ customize the view to answer complex business questions spanning multiple data s .. image:: global_filters/dashboard-global-filters.png :alt: Global filters at the top of a dashboard -Three types of global filters are available: +Four types of global filters are available: - :ref:`Date `: filters data based on a specific time range, with the options :guilabel:`Month / Quarter`, :guilabel:`Relative Period`, or :guilabel:`From / @@ -27,6 +27,8 @@ Three types of global filters are available: related model. - :ref:`Text `: filters data based on a string of text or a range of predefined values, e.g., a product reference or barcode. +- :ref:`Yes/No `: filters data based on whether or not a + checkbox, or boolean, field is set, e.g., lead is active. Unlike the standard :icon:`fa-filter` :guilabel:`(Add filters)` spreadsheet function, which lets you sort and temporarily hide data, global filters act on the underlying :ref:`data sources @@ -65,8 +67,9 @@ filter should act on, or match with. Field matching is further explained in the relevant sections on creating :ref:`Date `, -:ref:`Relation `, and -:ref:`Text ` global filters. +:ref:`Relation `, +:ref:`Text `, and +:ref:`Yes/No ` global filters. .. _spreadsheet/global-filters/create: @@ -82,8 +85,8 @@ you are adding filters to a dashboard. :guilabel:`(Edit)` icon that appears when hovering over the dashboard name. To add a new filter, click :icon:`os-global-filters` :guilabel:`Filters`, then, under :guilabel:`Add -a new filter...` click :guilabel:`Date`, :guilabel:`Relation`, or :guilabel:`Text` as appropriate. -The :guilabel:`Filter properties` pane opens. +a new filter...`, click :guilabel:`Date`, :guilabel:`Relation`, :guilabel:`Text`, or +:guilabel:`Yes/No` as appropriate. The :guilabel:`Filter properties` pane opens. When saving a global filter, if any required information is missing or if any information provided in the :ref:`Field matching ` section is not appropriate, @@ -126,7 +129,7 @@ With the :guilabel:`Filter properties` pane open: The :guilabel:`Period offset` option, which appears when a date field is chosen, enables comparisons to be made by shifting the time range by one or more periods in the past or future. By default, no period offset is defined. To define a period offset, select :guilabel:`Previous` - or :guilabel:`Next`, then select the desired number of periods in the past of future. + or :guilabel:`Next`, then select the desired number of periods in the past or future. .. tip:: @@ -213,9 +216,9 @@ Text ---- .. note:: - A :guilabel:`Text` filter can only match with a :ref:`Text (char) - `, :ref:`Integer ` or - :ref:`Decimal (float) ` field. + A :guilabel:`Text` filter can only match with a :ref:`Text + ` (char), :ref:`Integer `, + or :ref:`Decimal ` (float) field. With the :guilabel:`Filter properties` pane open: @@ -237,7 +240,7 @@ With the :guilabel:`Filter properties` pane open: :alt: Global filters set on a pivot table In the :guilabel:`Filter properties`, the :guilabel:`Possible values` of the filter were - restricted to the range :guilabel:`'Products (List #1)'!A2:A34`. This corresponds to the range + restricted to the range `Products (List #1)'!A2:A34`. This corresponds to the range containing the :guilabel:`Display name` of the product on a list inserted in the spreadsheet. .. image:: global_filters/field-matching-text.png @@ -245,13 +248,45 @@ With the :guilabel:`Filter properties` pane open: :scale: 80% With this configuration, the pivot table and chart can be filtered by product name by - selecting one of the predefined values available in the text filter. In this case, + selecting one of the predefined values available in the text filter. In the example, :guilabel:`Furniture` has already been selected as the :guilabel:`Product category`, meaning that only products of this category can be selected as possible values. Furthermore, if the values in the range have been retrieved dynamically from the database, as in this case, the text filter is also dynamic, i.e., will reflect changes made to those values. +.. _spreadsheet/global-filters/create-checkbox: + +Yes/No +------ + +.. note:: + A :guilabel:`Yes/No` filter can only match with a :ref:`Checkbox + ` (boolean) field. + +With the :guilabel:`Filter properties` pane open: + +#. Enter a name for the new :guilabel:`Yes/No` filter in the :guilabel:`Label` field. +#. Optionally, select :guilabel:`Is set` or :guilabel:`Is not set` as the :guilabel:`Default value`. +#. In the :guilabel:`Field matching` section, for each data source, click below the data source name + and select the field the :guilabel:`Yes/No` filter should match with. +#. Click :guilabel:`Save`. + +.. example:: + In the example below, a :guilabel:`Yes/No` global filter was created to allow the user to see + all opportunities that are active, i.e., for which the :guilabel:`Active` checkbox is enabled + on the record, or all opportunities that are inactive, i.e., for which the :guilabel:`Active` + checkbox is disabled. Leaving the filter empty shows both active and inactive opportunities. + + .. image:: global_filters/example-checkbox.png + :alt: Global filters set on a pivot table + + In the :guilabel:`Field matching` section of the :guilabel:`Filter properties`, the field + :guilabel:`Active` was assigned as the matching field for the pivot table. + + .. image:: global_filters/field-matching-checkbox.png + :alt: A yes/no filter with the Active field set as matching field + Manage and use global filters ============================= @@ -265,8 +300,8 @@ It is possible to: .. tip:: Reloading the browser will cause any global filters to reset to their initial state or default value, as relevant. To refresh data in an inserted list, pivot table, or chart without losing - global filters that have been applied, click :menuselection:`Data --> Refresh all data` from - the menu bar. + global filters that have been applied, click :menuselection:`Data -->` :icon:`os-refresh-data` + :menuselection:`Refresh all data` from the menu bar. - **Change the order** of existing filters by hovering over a filter and using the :icon:`os-thin-drag-handle` :guilabel:`(drag handle)` icon to change the position. diff --git a/content/applications/productivity/spreadsheet/global_filters/example-checkbox.png b/content/applications/productivity/spreadsheet/global_filters/example-checkbox.png new file mode 100644 index 0000000000000000000000000000000000000000..686577f93b526741b962ec35dc581eca467d17ad GIT binary patch literal 21443 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 N8mhXlYm}`+{|ELDx&HtF literal 0 HcmV?d00001