Проверка орфографии в тексте через Яндекс Speller

Вы можете добавить проверку орфограции прямо в личном кабинете. По нажатию на некоторую кнопку будет отправляться запрос к Яндекс Speller и выводиться таблица возможных ошибок по тексту. 

Как внедрить интеграцию: 

1. Создаем исходящий API метод с код yandexspell (с POST JSON)

процедура Request: 

CREATE PROCEDURE [dbo].[api_yandexspell_request]
	@parameters ExtendedDictionaryParameter READONLY,  -- входящие параметры для внутренней обработки (используйте Key, Value2)
	@username nvarchar(32)  -- текущий пользователь.
AS
BEGIN
	declare @text nvarchar(max)='', @itemID nvarchar(256), @id int
    select @itemid = isnull(Value2, Value) from @parameters where lower([Key])='itemid'
    
    if(left(@itemID, 8)='article_') begin 
    	set @id = try_cast(substring(@itemID, 9, 100) as int)
    	select top 1 @text = text1 from  as_articles 	 where id = @id
    end
	if(len(@text)=0) begin 
   		 select top 1 @text = text1 from  as_articles 	 
    end
    
    set @text = dbo.as_stripHTML(@text)
    
   -- SELECT 1  Msg, Result, Url (адрес, куда будет идти запрос)
	select '' Msg, 1 Result, 'https://speller.yandex.net/services/spellservice.json/checkText?options=4' Url   -- skip addressed

	-- SELECT 2 PARAMETERS - параметры, которые будут передаваться во внешний источник
	select 'text' name, @text value, 'form' [type] -- form (в форме передается), header (в http headers), get запросы передавайте прямо в URL  
END

Процедура Response: 

CREATE PROCEDURE [dbo].[api_yandexspell_response]
	@response nvarchar(max),
	@parameters ExtendedDictionaryParameter READONLY,  -- входящие параметры для внутренней обработки (используйте Key, Value2 - те же что и на request)	
	@username nvarchar(32)
AS
BEGIN
	-- SELECT 1
	select '' Msg, 1 Result, @response Response
	-- SELECT 2 Внешние действия
END

2. Реализуем обработку вывода в таблице (обязательно ставим в настройках таблицы Источник API = yandexspell) и @filters параметр имеет тип ExtendedDictionaryParameter.

Процедура GetItems: 

CREATE PROCEDURE [dbo].[crud_spellText_getItems]
	@filters ExtendedDictionaryParameter READONLY,  	
	@sort sql_variant,
	@direction nvarchar(8),
	@page int,
	@pageSize int,
	@username nvarchar(32)
AS
BEGIN
	-- filters...
	declare @resp nvarchar(max)
	select @resp = Value2 from @filters where [Key] = 'yandexspell'
	
	SELECT word text,     
    	'Code: '+ isnull(code,'') + ', Pos: ' + isnull(pos, '') + ', Row: '+ isnull([row], '') + ', Col: '+ isnull(col, '') desc_text,
        isnull( STUFF(
            (
            SELECT ', ' + value
                FROM openjson(s) AS t 
                FOR XML PATH('')
            ), 1, 2, N''
        ), '') s
    FROM OPENJSON(@resp, '$')
    WITH (
          
            code nvarchar(512) '$.code',
			pos nvarchar(512) '$.pos',
			[row] nvarchar(512) '$.row',
			col nvarchar(512) '$.col',
			word nvarchar(max) '$.word',
			s nvarchar(max) '$.s' as json
        )
    	
    -- SELECT 2
    select 1

    -- SELECT 3
    select 1 HideTitleCount, 1 Compact
	

END

В итоге для каждой статьи можно вызвать эту таблицу в модальном окне, которая покажет ошибки в тексте. 

Примечание: 

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

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

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

Платформа Falcon Space

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

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

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

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

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

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

Веб-приложения на чистом MS SQL. Обучение разработке на Falcon Space

Вы можете разрабатывать самостоятельно или сотрудничать с нами в плане веб-разработки на платформе Falcon Space, используя только SQL и HTML.

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