Как в форме сделать поиск для поля?

Последнее обновление - 05.05.2021voroshilova05.05.2021 1
<p>Как сделать поиск для поля, т.е. список с поиском через обращение к БД (autocomplete. search-select)?</p>

В настройках столбца формы указываем Список-поиск (select-search).

В GetItem поле извлекается как название сущности, а не ключ.

Реализуем процедуру вида fm_formCode_fieldCode_dict (редактируем через интерфейс).

CREATE PROCEDURE [dbo].[fm_isp_region_dict]
  @username nvarchar(256),
  @itemID nvarchar(128),
  @q nvarchar(128) = ''

AS
BEGIN
    if(isnull(@q, '')='') begin  -- (для обычного select)
        select ' Не выбрано ' Text, 0 Value, 0 Selected
        union
        SELECT gr.name Text, gr.id Value, 0 Selected
        FROM dbo.as_geo_regions gr        
        order by Text
    end
    else begin
        select ' Не выбрано ' Text, 0 Id, getdate() date, '' [desc], 0 type
        union
        SELECT gr.name Text, gr.id id, getdate() date, '' [desc], 0 type
        FROM dbo.as_geo_regions gr
    where name like '%'+@q+'%'
    order by Text
    end
END

Важное отличие - сюда дополнительно передается необязальный параметр @q nvarchar(128)=’’. ВНИМАНИЕ! Здесь модель отличается от стандартной - text,id,date, desc, type.

В сохранении поля SaveItem нам передается название сущности (а не внешний ключ число):

CREATE PROCEDURE [dbo].[fm_profile_saveItem]
   @username nvarchar(256),
   @itemID  nvarchar(256),
   @fieldemail nvarchar(256) = '',
   @fieldphone nvarchar(256) = '',
   @fieldcity nvarchar(256) = '' -- на входе текст а не ключ-число
AS
BEGIN
    update as_users
    set
        email=@fieldemail,
        phone=@fieldphone,
        regionID=(select top 1 id from as_geo_regions where name=@fieldcity)
    select 1 Result, 'Сохранено' Msg
END

Подробнее - https://falcon.web-automation.ru/docs/formy--kak-sdelat-poisk-dlya-polya--t-e--spisok-s-poiskom-cherez-obrashchenie-k-bd--autocomplete


Другие темы

Как отключить обработку тегов в полях формы?

Не выводится столбец в таблице

Почему форма редактирования скрывается после сохранения ?

Как обновить форму после сохранения без перезагрузки страницы?

Как проверить значение переменной в хранимой процедуре?

Как в форме разным пользователям выводить параметр для редактирования / просмотра?

Как на странице убрать название таблицы(формы)?

Что делать если открытая вкладка(tab) сбрасывается при перезагрузке страницы?

SQL-инструмент для создания личных кабинетов на сайте

Суть подхода и история создания Falcon Space

Платформа Falcon Space

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

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

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

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

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

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

Веб-приложения на MS SQL. Партнерская программа для разработчиков и веб-студий

Вы можете разрабатывать самостоятельно или сотрудничать с нами в плане веб-разработки на платформе Falcon Space, используя только SQL и HTML.
Смотреть примеры с кодом SQL
Документация по платформе
Демо-стенд компонентов
На стенде можно посмотреть различные компоненты в действии: таблицы, формы, модальные окна, диаграммы, карта и т.д.
Демо-сайт решений
Базисные решения, которые можно гибко адаптировать под себя: менять внешний вид, бизнес-логику и даже структуру базы данных.
Получить оценку проекта
Создайте концепцию проекта на основе нашего шаблона и получите оценку проекта в виде КП.