Ограничение данных Spotfire с помощью выпадающих - PullRequest
0 голосов
/ 30 августа 2018

У меня есть приборная панель spotfire с двумя выпадающими списками, один для Дня и один для Месяца, который я хочу использовать для ограничения данных визуализаций.

enter image description here

Мне нужно использовать оба фильтра одновременно. В настоящее время у меня есть инструкция case, написанная для этого, однако операторы case по умолчанию прекращают вычислять выражения, когда они достигают истинного оператора.
Например, ниже, у меня есть операторы для MonthSelector сверху, он не продолжает оценивать после этого DaySelector.

case

when "${MonthSelector}"="all" then [Month] <> ''

when "${MonthSelector}"<>"all" then [Month] = "${MonthSelector}"

when "${DaySelector}"="all" then [Week_Day] <> ''

when "${DaySelector}"="WeekDay" then [Week_Day] <> 'Saturday' and [Week_Day] <> 'Sunday'

when "${DaySelector}"="WeekEnd" then [Week_Day] = 'Saturday' OR [Week_Day] = 'Sunday'

when "${DaySelector}"<>"WeekEnd" AND "${DaySelector}"<>"WeekDay" AND "${DaySelector}"<>"all" then [Week_Day] = "${DaySelector}"
else false end case

Мне нужна помощь либо в получении точечного огня для продолжения оценки оператора case после первого значения true, либо в другом способе написания выражения ограничения данных, которое будет ограничивать данные на основе обоих раскрывающихся списков.

Я в растерянности, любая помощь будет оценена.

1 Ответ

0 голосов
/ 30 августа 2018

Можете ли вы попробовать вложить дела? Может быть, как это непроверенное выражение:

case
    when "${MonthSelector}"="all" then case
        when "${DaySelector}"="all" then [Week_Day] <> '' and [Month] <> ''
        when "${DaySelector}"="WeekDay" then [Week_Day] <> 'Saturday' and [Week_Day] <> 'Sunday' and [Month] <> ''
        when "${DaySelector}"="WeekEnd" then [Week_Day] = 'Saturday' OR [Week_Day] = 'Sunday' and [Month] <> ''
        when "${DaySelector}"<>"WeekEnd" AND "${DaySelector}"<>"WeekDay" AND "${DaySelector}"<>"all" then [Week_Day] = "${DaySelector}" and [Month] <> ''
        else false
        end
    when "${MonthSelector}"<>"all" then case
        when "${DaySelector}"="all" then [Week_Day] <> '' and [Month] = "${MonthSelector}"
        when "${DaySelector}"="WeekDay" then [Week_Day] <> 'Saturday' and [Week_Day] <> 'Sunday' and [Month] = "${MonthSelector}"
        when "${DaySelector}"="WeekEnd" then [Week_Day] = 'Saturday' OR [Week_Day] = 'Sunday' and [Month] = "${MonthSelector}"
        when "${DaySelector}"<>"WeekEnd" AND "${DaySelector}"<>"WeekDay" AND "${DaySelector}"<>"all" then [Week_Day] = "${DaySelector}" and [Month] = "${MonthSelector}"
        else false
        end
    else false
end
...