Как сделать отдельный универсальный поиск

Вы можете вставить универсальный поиск в любое место страницы, а также делать их несколько на сайте. Каждый из них будет обрабатываться одной и той же процедурой search, но при этом ей может передаваться разный typeID. При этом разные типы поисков могут делаться по разному набору объектов (т.е. как будет задано в sql-процедуре.)

Для размещения глобального поиска используем подобную верстку: 

<select class="form-control  as-select-search hide" data-url="/controls/search/search" data-itemid="100" data-minlength="1" data-delay="1000">
  <option value="0">Поиск по документации...</option>
</select>

data-itemID задает @typeID в процедуре falcon_search.

Вы также можете установить задержку поиска при наборе с клавиатуры через атрибут data-delay и минимальное количество символов для поиска через атрибут data-minlength. 

В процедуре поиска вы можете обработать следующим образом: 

CREATE PROCEDURE [dbo].[falcon_search]
   @q nvarchar(256),
   @typeID int,
  @page nvarchar(256) = '',
  @username nvarchar(256)
AS
BEGIN

	CREATE TABLE dbo.#result (id int, [text] nvarchar(max), [desc] nvarchar(max),[type] nvarchar(256),
	[date] date)

    if(@typeID=100) begin
      -- работа отдельного поиска
       insert into #result
       select top 15 id,
       		  ' '+title+'',
              'Обновил: ' + updatedBy + ' ' + convert(nvarchar,isnull(updated,'2020-01-01'),104) + ' ' + LEFT(convert(nvarchar, isnull(updated,'2020-01-01'),108),5),
              '',
              getdate()
       from kb_articles where isPublish=1 and ( (title like '%'+@q+'%') or (text like '%'+@q+'%') )
       order by id desc

       select * from #result
		drop table #result
        return
    end

    -- остальные поиски ....


END

Пример работы данного поиска есть в базе знаний (справа вверху). 

Falcon Space - функциальная веб-платформа разработки на узком стеке MS SQL/Bootstrap. Вводная по Falcon Space
Насколько полезной была статья?

Google поиск по нашей документации

Falcon Space

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

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

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

по ходу эксплуатации программы. Как создается функционал на платформе

Это простой удобный интерфейс

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