Настройка параметров таблицы (SELECT 3)
В этом примере мы реализовали таблицу с различными дополнительными параметрами, такими как Title, TitleTooltip, ToolbarAdditional, Subtitle, GroupOperationsToolbar, EmptyText, FastCreateLinkText, FastCreateDialogHeader, FastCreateDialogPlaceholder, FastCreateSearch, FastCreateTextarea, HideTitleCount, DisableCellTitle, ButtonSize, FontSize, Compact, ZoomCells, EnableExcelExport, EnablePrint, EnableClipboard, EditableMode, DisableFrozenHeader, DisableCellTitle, Collapse, HeaderTag, Theme, ShowNumsCol, Remove, RemoveConfirmText, FastCreate, InstantFilter.
Для этого мы:
- создали таблицу
- добавили в неё необходимые колонки (id, name, price, art, created, theme)
- установили фильтр "Список" для поля theme и настроили её SQL
- реализовали процедуру GetItem
- реализовали процедуру UpdateField
- реализовали процедуру DeleteItem
CREATE PROCEDURE [dbo].[crud_watch_setting1_theme_dict]
@tableCode nvarchar(32),
@col nvarchar(32),
@username nvarchar(32)
as
begin
-- источник данных для списка значений (Value, Text)
select 'light' Value, 'light' Text
union
select 'dark' Value, 'dark' Text
end
CREATE PROCEDURE [dbo].[crud_watch_setting1_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 @filterTheme nvarchar(128)
select @filterTheme = Value from @filters where [Key] = 'theme'
insert into @ids
select id
from tst_products
-- SELECT 1
select id id,
isnull(name, '') name,
isnull(price, 0)price,
isnull(art, '') art,
isnull(format(created, 'dd.MM.yyyy'), '01.01.1900') created
from tst_products
where id in (select id from @ids)
order by
case when @sort = 'name' and @direction = 'down' then name end desc,
case when @sort = 'name' and @direction = 'up' then name end asc,
case when @sort = 'price' and @direction = 'down' then price end desc,
case when @sort = 'price' and @direction = 'up' then price end asc,
case when @sort = 'art' and @direction = 'down' then art end desc,
case when @sort = 'art' and @direction = 'up' then art end asc,
case when @sort = 'created' and @direction = 'down' then created end desc,
case when @sort = 'created' and @direction = 'up' then created end asc
OFFSET @PageSize * (@Page - 1) ROWS
FETCH NEXT @PageSize ROWS ONLY;
-- SELECT 2
select count(*) from @ids
-- SELECT 3
Select
'Настройки таблицы' Title,
'В select 3' TitleTooltip,
'' ToolbarAdditional,
'' Subtitle,
'' GroupOperationsToolbar,
'Отсутсвуют данные' EmptyText,
'Создать' FastCreateLinkText, 'Имя' FastCreateDialogHeader, 'Продукт' FastCreateDialogPlaceholder,
0 FastCreateSearch, 0 FastCreateTextarea,
0 HideTitleCount,
0 DisableCellTitle,
1 InstantFilter,
'sm' ButtonSize,
'10px' FontSize,
1 Compact,
0 ZoomCells,
1 EnableExcelExport, 1 EnablePrint, 1 EnableClipboard,
'inline' EditableMode,
1 DisableFrozenHeader,
1 DisableCellTitle,
1 Collapse,
'h6' HeaderTag,
@filterTheme Theme,
1 ShowNumsCol,
1 Remove,
'Удалить?' RemoveConfirmText,
1 FastCreate
END
CREATE PROCEDURE [dbo].[crud_watch_setting1_updateField]
@itemID int,
@field nvarchar(64),
@value nvarchar(max),
@username nvarchar(64)
AS
BEGIN
if(@field = 'art') begin
update tst_products set art = @value where id = @itemID
end else begin
select 'Невалидный код свойства' Msg, 0 Result
return
end
select '' Msg, 1 Result
END
CREATE PROCEDURE [dbo].[crud_watch_setting1_deleteItem]
@itemID int,
@username nvarchar(32)
AS
-- удаление строки таблицы
SET NOCOUNT off ;
-- удаление элемента
delete from tst_products where id = @itemID
if (@@ROWCOUNT > 0) begin
select '' Msg, 1 Result
end else begin
select 'Запись не удалилась из базы' Msg, 0 Result
end
Последние обновления
Интеграции 24.11.2025
Разное 24.11.2025
Форма 15.11.2025
Визуализация 02.11.2025
Таблица 08.10.2025
Форма 26.09.2025
Таблица 23.09.2025
Разное 23.08.2025
Таблица 21.08.2025
Форма 20.08.2025
Таблица 18.08.2025
Таблица 21.06.2025
Форма 07.06.2025
Форма 29.03.2025
Форма 17.02.2025
Файлы и документы 10.01.2025
Форма 01.11.2024
Форма 23.10.2024
SQL-инструмент для создания личных кабинетов на сайте
Платформа Falcon Space
Это снижение стоимости владения
за счет меньшего количества людей для поддержки
Это быстрое внесение изменений
по ходу эксплуатации программы
Это современный интерфейс
полная адаптация под мобильные устройства