Как создать предустановленные фильтры для таблицы на сайте (predefined filters)

В этом примере мы реализовали вывод таблицы с предустановленными фильтрами.

Для этого мы:

  • создали таблицу
  • добавили в нее необходимые колонки (id, client, product, created, status)
  • для колонки status установили тип фильтра "Список" и настроили SQL
  • настроили процедуру GetItem
CREATE PROCEDURE [dbo].[crud_watch_presetFilters_getItems]
	@filters CRUDFilterParameter READONLY,
	@sort sql_variant,
	@direction nvarchar(8),
	@page int,
	@pageSize int,
	@username nvarchar(32)
AS
BEGIN
	declare   @ids TABLE (id int)

	-- filters...
	declare @filterStatus nvarchar(128)
	select @filterStatus = Value from @filters where [Key] = 'status'

	insert into @ids
	select id
	from tst_orders
    where (isnull(@filterStatus, '') = '' or statusID in (select try_cast(value as int) from  dbo.split(@filterStatus, ',')))

	-- SELECT 1
	select
    	id id,
		(select name from tst_customers where id = customerID) client,
		(select name from tst_products where id = productID) product,
		FORMAT(created, 'dd.MM.yyyy') created,
		(select name from tst_statuses where id = statusID) status
	from tst_orders
	where id in (select id from @ids)
	order by
		case when @sort = '' then id end asc
	OFFSET @PageSize * (@Page - 1) ROWS
	FETCH NEXT @PageSize ROWS ONLY;

	-- SELECT 2
	select count(*) from @ids

	-- SELECT 3
	Select  '  ' Title, 1 HideTitleCount

	-- 4 SELECT Footer data or kanban/gantt data
    Select '' x1, '' x2, '' x3, '' x4

    -- 5 SELECT  - ГЛАВНАЯ ЧАСТЬ
     select * from (
     select 'Активные заказы' Title, 'Вывод только действующих заказов' Tooltip, 'activeStatus' code, 'success' type, 'status=1,2,4' Filters, 1 ord
       union
     select 'Неактуальные заказы' Title, 'Вывод неактивных заказов' Tooltip, 'passiveStatus' code, 'secondary' type, 'status=3,5' Filters, 2 ord
     	) t1


END

 

Документация - https://falcon.web-automation.ru/docs/tablicy--kak-sozdat-predustanovlennye-filtry

Насколько полезна эта возможность?

Другие модули

Последние обновления

Платформа Falcon Space

Это снижение стоимости владения

за счет меньшего количества людей для поддержки

Это быстрое внесение изменений

по ходу эксплуатации программы

Это современный интерфейс

полная адаптация под мобильные устройства

Сайт использует Cookie. Правила конфиденциальности OK