Хотя функция «Выбрать все» в раскрывающемся списке компонентов выбора может показаться простой функцией, мне было невероятно трудно найти работоспособное решение. Я могу найти три вопроса SO по теме, но ни один из подходов не работает полностью.
Как добавить выберите все, чтобы выбрать компонент в CDE
параметр сброса Pentaho CDE
Как добавить опцию "выбрать все" для выбора компонента в CDE?
У меня есть таблица со столбцом, который содержит рейтинги от 1 до 5 (как строковый тип). Мне нужно дать пользователям возможность выбрать значение от 1 до 5 или «Все».
Я создал простой источник данных (DB2), вытягивая числа 1-5 в виде строк. Когда применимо ниже, я бы UNION ALL
с ''
или "Все"
SELECT ... WHERE (CAST(RATING AS CHAR) = CAST(${parameter} AS CHAR) OR ${parameter} = '')
SELECT ... WHERE (RATING = ${parameter} OR ${parameter} = '')
SELECT ... WHERE (RATING LIKE (CASE WHEN ${parameter} = 'All' THEN '%' ELSE ${parameter} END))
Я использую функции «Выбрать компонент» и «Простой параметр», как и следовало ожидать. Я экспериментировал с установкой "Значения свойства параметра" равным ''
, "Все" и числам 1-5, но я могу получить только либо "Все" или числовой выбор для работы. Примерно за 50 итераций этой методологии я ни разу не сработал успешно оба.
Есть ли простой или прямой способ добавить выбор «Все», не переключаясь на компонент множественного выбора или дополнительный JavaScript?
RATING
). Вы пытались использовать параметр внутри предложения LIKE, например:WHERE TO_CHAR(RATING) LIKE ${parameter}
, а затем использовать «%» в качестве значения для «Все»? Я думаю, что мне удалось решить что-то подобное с этой стратегией. - person Óscar Gómez Alcañiz   schedule 22.08.2016