Drag n drop сортировка строк в таблице. Как перетащить строку в таблице
Устанавливаем в SELECT 3 параметр Sortable = 1, а также добавляем ручку для переноса (если ее нет, то переносить строку можно за любую часть строки):
<i class="fa fa-bars as-table-sortHandle"></i>
Процедура GetItem:
CREATE PROCEDURE [dbo].[crud_watch_sortableTable_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 @filterItemID nvarchar(128)
select @filterItemID = try_cast(Value as int) from @filters where [Key] = 'itemID'
insert into @ids
select id
from tst_customers
where (isnull(@filterItemID, 0)= 0 or id = @filterItemID)
-- SELECT 1
select
id id,
isnull(name, '') name,
isnull(fio, '') fio,
(select count(*) from tst_orders where customerID = c.id) orders ,
'<i class="fa fa-bars as-table-sortHandle"></i>' handle
from tst_customers c
where id in (select id from @ids)
order by ord
OFFSET @PageSize * (@Page - 1) ROWS
FETCH NEXT @PageSize ROWS ONLY;
-- SELECT 2
select count(*) from @ids
-- SELECT 3
Select ' ' Title, 1 HideTitleCount, 1 Sortable
END
Изменения значений в базе происходят через процедуру UpdateField:
CREATE PROCEDURE [dbo].[crud_watch_sortableTable_updateField]
@itemID int,
@field nvarchar(64),
@value nvarchar(max),
@username nvarchar(64)
AS
BEGIN
if(@field = 'sortable') begin
-- pk - table itemID
-- value - comma separated rowIDs
declare @t table(id int, num int)
insert into @t
select try_cast(Value as int), num
from dbo.split(@value, ',')
where isnull(Value, '')<>''
-- get minimal ord value
declare @minOrd int
set @minOrd = isnull((select min(ord) from tst_customers where id in (select id from @t)) , 0)
-- change ord column
update tst_customers
set ord = @minOrd + isnull( (select top 1 num-1 from @t where id =tst_customers.id ), 0)
where id in (select id from @t)
select 'OK' Msg, 1 Result
end else begin
select 'Невалидный код свойства' Msg, 0 Result
return
end
select '' Msg, 1 Result
END
Ссылка на документацию: https://falcon.web-automation.ru/docs/sortirovka-strok-v-tablice
Другие модули
Как редактировать поля прямо в таблице на сайте
Как добавить фильтры данных таблицы в личном кабинете
Вывод таблицы на сайте в личном кабинете
Создание нового элемента в таблице на сайте
Как добавить элемента в таблицу через поле поиска
Как создать вложенные таблицы на сайте
Стилизация полей таблицы. Как улучшить дизайн таблиц на сайте
Последние обновления
Форма 31.07.2022
Страницы 31.07.2022
Страницы 08.05.2022
Интеграции 04.04.2022
Интеграции 01.04.2022
Таблица 24.03.2022
Форма 24.03.2022
Разное 22.03.2022
Интеграции 07.03.2022
Разное 24.02.2022
Разное 18.02.2022
Визуализация 13.02.2022
Разное 07.02.2022
Форма 20.01.2022
Разное 20.01.2022
SQL-инструмент для создания личных кабинетов на сайте

Платформа Falcon Space
Это снижение стоимости владения
за счет меньшего количества людей для поддержки
Это быстрое внесение изменений
по ходу эксплуатации программы
Это современный интерфейс
полная адаптация под мобильные устройства