[Libreoffice-ux-advise] [Bug 140760] (PIVOTTABLE) selection of invalid constraint values possible and probably this irreversibly results in an empty pivot table
bugzilla-daemon at bugs.documentfoundation.org
bugzilla-daemon at bugs.documentfoundation.org
Sun Sep 25 08:48:11 UTC 2022
https://bugs.documentfoundation.org/show_bug.cgi?id=140760
--- Comment #15 from Eike <estolle at web.de> ---
I think I made a noteworthy observation that could relate the bug to the
interface. It seems, the bug arises in the moment all filter items to a
specific column are checked while other columns remain partially filtered.
Then, suddenly the filter is populated with all pairwise different numbers of
the column (those irrelevant displayed unchecked and those relevant checked)
and not only those relevant to the given filter settings.
For explanation, have a look at the original problem setting of bug 117276:
1. Uncheck Citroen, Fiat, Ford, Opel, Peugeot, Renault, Tesla from column B.
The table displays the rows for the remaining carmakers. No row in the table
contains Wert=7000 or 9000. 7000 and 9000 are also removed from the filter list
(not only unchecked) so the filter list is populated by 8000, 10000, 12000,
15000, 18000, 20000, 22000 (all checked).
2a. Uncheck 8000 from column I. One row belonging to a VW disappears. The
filter list shows 8000 (unchecked) and 10000, 12000, 15000, 18000, 20000, 22000
(all checked).
3a. Open filter to column B. You will see only Tesla unchecked. All other
carmakers (Audi, BMW, MB, Porsche, VW) in the filter list are checked. Then
check Tesla. One row belonging to Tesla appears in the table with Wert=22000 in
column I. However the filter list of column I suddenly contains all pairwise
different numbers of the column (nine different numbers): 10000, 12000, 15000,
18000, 20000, 22000 (all checked), 8000 (still unchecked), 7000 and 9000 newly
added and unchecked. Column I consists only of those numbers. So the error is
that 7000 (Opel) and 9000 (Renault) belong to carmakers deselected.
In order to test my theory, I did another test, starting with a new step 2b
2b. In column I, instead of unchecking 8000 I unchecked 22000. This removes all
rows with column B = Porsche,Tesla. The filter list contains Audi, BMW, MB, VW
(all checked) and Fiat, Ford, Peugeot, Renault (all unchecked).
3b. In column B try checking up to any three of the four uncheck carmakers and
you will find that the filter to column I behaves as expected, i.e. 7000 and
9000 are not displayed. But if you check all four (Fiat, Ford, Peugeot,
Renault), the rows displayed are ok but not the filter list of column I. Once
again it shows the same effect as in the first test, that is all possible
numbers with the irrelevant entries being unchecked (7000, 9000, 22000 as they
don't belong to any of the selected carmakers). But the error here once again
is that some of them (7000, 22000) are even shown at all as I=7000 only belongs
to Opel and 22000 belongs to Porsche and Tesla. I=9000 belongs to Renault as
well as I=8000 which is checked.
In step 3b I would expect the filter list of column I to not contain 7000 and
22000 like in step 3a where it should not contain 7000 and 9000.
So please could somebody familiar with the relevant code check what exactly
happens once all filter items are checked? The event "all items checked" seems
to be treated unconditional but it should be treated conditional given the
current filter settings instead. Or explain why it is reasonable to provide
filter items not related to the filter settings.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Libreoffice-ux-advise
mailing list