Filtered dashboard not working correctly

Hi all,

A while ago I’ve set up a dashboard that consists of a Filter Table, and a slice of the Transactions table. The condition on the slice of the Transactions is AND(OR([Date] >= INDEX(FilterTable[Start Date], 1),ISBLANK(INDEX(FilterTable[Start Date], 1))),OR([Date] <=INDEX(FilterTable[End Date], 1),ISBLANK(INDEX(FilterTable[End Date], 1))),OR(IN([Transaction Type],FilterTable[Transaction Type]),ISBLANK(FilterTable[Transaction Type])),OR(IN([Type],FilterTable[Type]),ISBLANK(FilterTable[Type])))

The filter table has a security filter (USEREMAIL()=[Useremail]) and each user has their own row, so each user can have their own filters.

Some of the columns in the filter table are set up as enumlist, and this allows the user to select more than one value per filter field. The slice of the transactions table, visually displays the correct data when the filters are applied.

However, recently I’ve noticed strange behaviour when selecting more than one value per field. Whilst the data on the slice is showing correctly, there are two issues, 1) when you click on the export action the exported file will be blank (this only happens when there are more than one value in a field, when there are no fields that have more than one value selected, the export sheet is perfect), and 2) the sums on the filter table (for example for the Total Income field, SUM(SELECT(Filtered Transactions[Amount In], [Type] <> “Donation”))) will show £0.00.

As soon as I deselect the additional values and leave only one value per field, the sums and downloads work correctly.

Is this a bug or a recent change that Google have done?

Is there a better way to make the dashboard?

Please contact AppSheet Support for help with this.

I have managed to figure it out with the help of another post on here, by changing the formula as follows:

Original:

AND(OR([Date] >= INDEX(FilterTable[Start Date], 1),ISBLANK(INDEX(FilterTable[Start Date], 1))),OR([Date] <=INDEX(FilterTable[End Date], 1),ISBLANK(INDEX(FilterTable[End Date], 1))),OR(IN([Transaction Type],FilterTable[Transaction Type]),ISBLANK(FilterTable[Transaction Type])),OR(IN([Type],FilterTable[Type]),ISBLANK(FilterTable[Type])))

Corrected:

AND(
OR(
[Date] >= INDEX(FilterTable[Start Date], 1),
ISBLANK(INDEX(FilterTable[Start Date], 1))
),
OR(
[Date] <= INDEX(FilterTable[End Date], 1),
ISBLANK(INDEX(FilterTable[End Date], 1))
),OR(
IN([Transaction Type], LOOKUP(USEREMAIL(),“FilterTable”,“Useremail”,“Transaction Type”)),
ISBLANK(FilterTable[Transaction Type])
),
OR(
IN([Type], LOOKUP(USEREMAIL(),“FilterTable”,“Useremail”,“Type”)),
ISBLANK(FilterTable[Type])
),
)