Начало работыОснова Falcon SpaceРуководстваВозможностиКоммуникация пользователейТаблицыФормыПоля формыЛендингиДизайн, стилизация, юзабилитиИнтеграцииУниверсальный APIКаталогиНавигацияДокументыДополнительные компонентыПродвижение, SEOСистемные моментыСистемное администрированиеHOWTOЗагрузка файлов, картинокHOWTO SQLHOWTO JSHOWTO ВерсткаРешение проблемСоветы по реализации
Выгода от использования Falcon Space
В 2-3 раза экономнее и быстрее, чем заказная разработка
Более гибкая, чем коробочные решения и облачные сервисы
Используйте готовые решения и изменяйте под свои потребности
SaveItem - процедура сохранения формы
Время чтения - 3 мин.Дата публикации 17.10.2025
SaveItem - хранимая процедура сохранения данных формы.
CREATE PROCEDURE [dbo].[fm_metric_saveItem]
@username nvarchar(256),
@itemID int,
@parameters ExtendedDictionaryParameter READONLY
AS BEGIN
declare @pcode nvarchar(max), @ptitle nvarchar(max)
select @pcode = Value2 from @parameters where [key]='code' -- всегда Value2, а не Value
select @ptitle = Value2 from @parameters where [key]='title'
update as_mt_metrics set code = @pcode, title = @ptitle
where id = @itemID
-- SELECT 1 select 1 Result, '' Msg, '' Icon, '' RefreshContainer, 10000 AlertDelay,
0 EnableSaveAlert, '' SuccessUrl, 0 HideFormAfterSubmit
-- SELECT 2 Внешние действия
-- select 'notification' type, 'text1' text , 'demo1' [to], 'ticketExecutor' typeCode, 'http///' url, 'add111' additional select 'email' type, 'ru@rudensoft.ru' [to], 'sub1' subject, 'body1' body
END
Входные параметры:
- @username - текущий пользователь
- @itemID - переданный параметр itemID
- @parameters - коллекция параметров из URL (Key, Value)
Примечание: в @parameters используйте Key, Value2, помимо полей формы там находятся еще следующие параметры:
- buttonType - код кнопки сохранения (если используется множесто кнопок сохранения на форме)
- confirmCode - код подтвержения операции (для спец режима работы формы по подтверждению действия)
- referrer - URL страницы, на которой расположена форма
- langID - ID языка пользователя
- falconGuid -Guid посетителя из куки (в том числе и неавторизованного).
- falconFR - первый внешний источник, откуда пришел пользователь.
- falconFP - первая посещенная страница нашего сайта.
- userIP - IP пользователя
- userPort - порт, по которому обратился пользователь (обычно это 443 или 80)
- domain - домен сайта (в случае если используем несколько доменов для одного и того же сайта).
Первый запрос (SELECT 1) возвращает модель:
- Msg - задает текст сообщения о результате операции (Если передать 1 пробел ' ', то сообщение не будет выводиться. Если пустая строка - то результат по умолчанию),
- Result - если 1 то операция успешно выполнена,
- ItemID - переданный начальный ItemID в форму,
- SuccessUrl - если непустая строка, то после выполнения операции осуществляется переход по этому адресу,
- HideFormAfterSubmit - если 1, то форма скрывается после сохранения (а модальное окно закрывается),
- RefreshContainer - селектор контейнера, который надо обновить (например, можно ставить глобальный контейнер на странице ‘.pHtml’). В итоге после сохранения происходит обновление других компонентов в рамках указанного контейнера,
- Refresh - если 1, то выполняется обновление компонента после операции.
- Actions - JSON для действий в браузере.
- EnableSaveAlert - если 1, то результат будет всегда выдаваться во всплывающем окне справа наверху (даже несмотря на то, что есть {form-result}),
- Icon - если указано, то будет выводиться данная иконка в сообщении справа вверху. Пример: fa-cube (подробнее о стилизации иконок можно почитать здесь, об анимации иконок здесь),
- AlertDelay - задержка показа окна результата в мс. По умолчанию 30000,
- Type - цветовое решение окна: danger, success, warning, info, primary и т.д.,
- Confirm - JSON объект для вывода окна подтверждения выполнения действия (поля title,text, btnText, confirmCode, system). См. Как сделать окно подтверждения действия формы.
- ReplaceContainer и ReplaceContainerHtml - если есть задача заменить HTML в каком-то блоке, то указываем селектор в ReplaceContainer и разметку в ReplaceContainerHtml.
- RunAction - задается разметка кнопки (например, с as-form-modal), которая будет активирована (событие click) после успешного выполнения SaveItem.
Второй запрос (SELECT 2) это вызов внешнего действия. См. вызов внешних действий
Примечание: ранее использовался способ передачи колонок формы как параметров хранимой процедуры поля @fieldXXX вместо коллекции @parameters (он оставлен для совместимости). В настоящий момент используется коллекция @parameters для передачи колонок (также в рамках этой коллекции дополнительно передаются langID и falconGuid).
Falcon Space - функциональная веб-платформа разработки на узком стеке MS SQL/Bootstrap. Вводная по Falcon Space
Google поиск по нашей документации
Запрос расчета стоимости веб-проекта на базе Falcon Space
- Шаг 1. Создать концепт проекта
- Шаг 2. Получить оценку бюджета (КП)
- Шаг 3. Заключить договор
- Шаг 4. Создать совместно техническое задание
- Шаг 5. Поэтапная реализация проекта