CheckItemFIeld - процедура реагирования на изменения поля

CheckItemField - хранимая процедура для проверки одиночных полей при заполнении формы 

Если существует подобная процедура с именем fm_{entity}_checkItemField, то она будет вызываться всякий раз, когда редактируется одно из полей формы.

CREATE PROCEDURE [dbo].[fm_metric_checkItemField]
  @username nvarchar(256),
  @itemID int,
  @field nvarchar(256),
  @value nvarchar(max),
  @parameters ExtendedDictionaryParameter readonly -- необязательный
AS BEGIN
  if(@field = 'roles') begin
   if(charindex(' ', @value)>0) begin
     select 'В ролях не должно быть пробелов!' Msg, 0 Result, '.projectStageCont' RefreshContainer, 
         '.p1' ShowContainer, '.p2' HideContainer, '' ReplaceContainer, '' ReplaceContainerHtml
    end
   end

   -- SELECT 1
   select '' Msg, 1 Result

   -- SELECT 2 Outer actions

END

Входные параметры:

В процедуру можно передавать параметр @parameters типа ExtendedDictionaryParameter (Key, Value2) для передачи спецпараметров (langID и falconGuid) и текущие значения других полей формы.

Этот параметр также используется для извлечения данных, полученных из внешнего API. 

На выходе:

SELECT 1

SELECT 2 - вызов внешних действий

Также вы можете задать коллбек для обработки в JS результата проверки поля - as.formcallbacks["{formCode}_checkField"](params, data).

Страница-источник на сайте falconspace.ru