Bug 46062

Summary: Autofilter should not tick "all" if each individual value is selected (blanks should be omitted)
Product: LibreOffice Reporter: wilkusz
Component: SpreadsheetAssignee: Not Assigned <libreoffice-bugs>
Status: NEW --- QA Contact:
Severity: minor    
Priority: low CC: jmadero.dev, jorendc, rob
Version: 3.5.0 release   
Hardware: All   
OS: All   
See Also: https://bugs.freedesktop.org/show_bug.cgi?id=68406
https://bugs.freedesktop.org/show_bug.cgi?id=44895
https://bugs.freedesktop.org/show_bug.cgi?id=65505
Whiteboard: BSA
i915 platform: i915 features:
Attachments: bug.ods
Testcase demonstrating the problem

Description wilkusz 2012-02-14 12:57:39 UTC
I have problem with autofiltr in version 3,5 don't work when only one option was evailable and in autofiltr print page was bad display...
              
Browser: Mozilla/5.0 (Windows NT 5.1; rv:10.0.1) Gecko/20100101 Firefox/10.0.1
Comment 1 Markus Mohrhard 2012-02-14 18:22:26 UTC
Created attachment 57122 [details]
bug.ods

Can you add some more details?

What happens? What does you expect?

Maybe even adding a test document and a detailed step by step description for us how to reproduce it?
Comment 2 wilkusz 2012-02-15 14:31:26 UTC
Witam

Please open a bug file and select john in auto filtr. If You select
john nothing change in file and display all data.

Pozdrawiam

S. Wilk


W dniu 15 lutego 2012 03:22 użytkownik
<bugzilla-daemon@freedesktop.org> napisał:

> https://bugs.freedesktop.org/show_bug.cgi?id=46062
>
> --- Comment #1 from Markus Mohrhard <markus.mohrhard@googlemail.com> 2012-02-14 18:22:26 PST ---
> Can you add some more details?
>
> What happens? What does you expect?
>
> Maybe even adding a test document and a detailed step by step description for us how to reproduce it?
>
> --
> Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
> ------- You are receiving this mail because: -------
> You reported the bug.
Comment 3 Jorendc 2014-07-04 18:25:30 UTC
I fail to reproduce this issue, tested using Mac OSX 10.9 with LibreOffice Version: 4.2.5.2
Build ID: 61cb170a04bb1f12e77c884eab9192be736ec5f5

@S.Wilk: please attach a sample document if you still can reproduce this behavior, using a more recent version of LibreOffice. Also provide some steps how to reproduce that behavior.

Thanks.

Kind regards,
Joren
Comment 4 Urmas 2014-07-04 21:45:44 UTC
Confirmed in master.

If a column contains only X and empty cells, empty cells cannot be hidden while filtering for X.
However, if there are X, Y and empty cells, either X or Y will hide them.
Comment 5 Mark Bourne 2014-07-23 21:29:52 UTC
Created attachment 103367 [details]
Testcase demonstrating the problem

This has recently come up on the users mailing list:
  http://listarchives.libreoffice.org/global/users/msg39810.html

For some reason my reply there doesn't show up in the archive, but I've worked up the attached example based on that.

Using the filters in column B ("2 values + blanks"), which has more than one unique value in addition to some empty cells:
- Filter on "aaa" shows only rows containing "aaa" (not "bbb" or empty)
- Filter on "bbb" shows only rows containing "bbb" (not "aaa" or empty)
- Filter on Empty shows only rows with empty cell (not "aaa" or "bbb")
- Filter on All shows all rows ("aaa", "bbb" and empty)
- Attempting to filter for "aaa" or "bbb" automatically selects All, and includes the empty cells.

Using the filters in column C ("1 value + blanks"), which has only one unique value in addition to some empty cells:
- Filter on Empty shows only rows with empty cell (not "aaa")
- Filter on All shows all rows ("aaa" and empty)
- Attempting to filter for "aaa" automatically selects All, and includes the empty cells.

I've checked this on Windows using LO 4.0.4, which is admittedly quite old, but it looks like others are experiencing similar on more recent versions.

The way the tick boxes work is a bit confusing in this regard, but it is possible to work around this by selecting "not empty" from the filters. It is also possible to choose "Standard Filter..." from the dropdown rather than using the tick boxes, and from there explicitly filter e.g. on "aaa" in column C ("1 value + blanks").

It appears that the tick boxes are intended as a quick was to set up basic filters, and don't accurately reflect more complex filters, but that's not particularly clear. Although the tick boxes don't look right after selecting "Not Empty", clicking "Standard Filter..." does show that the filter is currently set to show Not Empty values.

Perhaps the tick boxes should all be greyed out if they can't accurately reflect the current filter? Even better, if (Empty) could be made one of the tick box options (without confusion with a possible value of "Empty" in a cell), it would be possible to select e.g. "aaa" and "bbb" without (Empty), or even "aaa" and (Empty) without "bbb".
Comment 6 Rob 2014-07-23 22:03:27 UTC
For comparison:
In Excel there is a tickbox marked '(blanks)' which filters values consisting solely of one or more spaces and empty rows.

Adding this also solves bug [Bug 81577] FILTER: Can't switch a filter of if only one value except NULL is deleted.
Comment 7 Owen Genat 2014-07-26 01:52:30 UTC
Summary edited for clarity.
Comment 8 Joel Madero 2014-07-28 16:09:19 UTC
Setting to UNCONFIRMED.

Note: REOPENED is for a bug that a developer says they fixed (thus the bug is put into RESOLVED -> FIXED) but a user can still see the problem on a version that should be fixed. 

For bugs never confirmed by a neutral third party the correct status is UNCONFIRMED. Thanks!
Comment 9 Joel Madero 2014-07-28 19:43:21 UTC
My test system:
Bodhi 2 (built on Ubuntu 12.04) x64
LibreOffice 4.2.6 rc

Confirmed (see notes below)
New - confirmed
Minor - can slow down professional quality work but will not prevent it
Low - the workaround is pretty straight forward (select not empty)


> Using the filters in column B ("2 values + blanks"), which has more than one
> unique value in addition to some empty cells:
> - Filter on "aaa" shows only rows containing "aaa" (not "bbb" or empty)
> - Filter on "bbb" shows only rows containing "bbb" (not "aaa" or empty)
> - Filter on Empty shows only rows with empty cell (not "aaa" or "bbb")
> - Filter on All shows all rows ("aaa", "bbb" and empty)
> - Attempting to filter for "aaa" or "bbb" automatically selects All, and
> includes the empty cells.
Assuming the last is "attempt to filter for "aaa" AND "bbb" not or (or works fine if you select just one as that's just step 1 and 2 above)

> 
> Perhaps the tick boxes should all be greyed out if they can't accurately
> reflect the current filter? Even better, if (Empty) could be made one of the
> tick box options (without confusion with a possible value of "Empty" in a
> cell), it would be possible to select e.g. "aaa" and "bbb" without (Empty),
> or even "aaa" and (Empty) without "bbb".

Not a fan of graying out anything, you do it once or twice and you learn how to workaround it. It's a pretty small issue but an issue none the less.

Changing title to better reflect the issue as this isn't dependent on only one category existing, it's if you select all categories available (whether that is one or ten) then "all" is automatically ticked.
Comment 10 Rob 2014-07-28 22:54:37 UTC
This bug is related to (but not the same as): "[Bug 81577] - FILTER: Can't switch a filter of if only one value except NULL".

I agree with you that graying out is not a very elegant solution. I repeat the suggested solution from [Bug 81577] since that solves both bugs in one go:

---
1- Add 'Empty' to the ticklist, and remove it from the text selection
2- Make clear 'not empty' has been selected (a tick after the text will do)
3- Make 'not empty' and 'All' mark appropriate list boxes
4- Mark 'not empty' if all boxes except 'Empty' are marked

FYI: Excel marks that are blank, and fields solely consisting of spaces as "(blanks)". Excel in fact trims all fields, so for the tick boxes 'a' is the same as ' a '.
---

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.