Реализация представлена в виде представления с SQL-запросом, собирающим всю необходимую информацию для последующей фильтрации.
Результатом выполнения представления является таблица со следующими параметрами:
SELECT
soft_lin.name AS package,
soft_lin.ver,
COUNT(DISTINCT computer_id) AS co
FROM public.soft_lin
JOIN public.soft_lin_to_computer ON public.soft_lin.id = public.soft_lin_to_computer.soft_id
WHERE soft_lin.name = ANY ( {0} )
GROUP BY soft_lin.name, soft_lin.ver
ORDER BY soft_lin.name
Перейти в подраздел Столбцы представления и выставить типы для следующих колонок:
Выставить для каждой колонки отображаемые имена (колонка Имя);
В подразделе Условия задать тип String и имя условия (к примеру ПО);
Задать справочник, нажав на рисунок пера:
Ввести следующий SQL запрос:
SELECT DISTINCT name FROM public.soft_lin
В подразделе Конфигурирование и предпросмотр задать Тип условия, возвращаемое условие name, отображаемое значение name. Нажать применить;
4. Сохранить созданное представление. В случае некорректной настройки появится предупреждение об ошибке.
Для применения представления необходимо выполнить следующие действия: