CheckItem - процедура проверка введенных данных на форме

CheckItem - хранимая процедура проверки введенных данных на форме

CREATE PROCEDURE [dbo].[fm_test_checkItem]
  @username nvarchar(256),
  @itemID int,
  @parameters ExtendedDictionaryParameter READONLY
AS BEGIN -- процедура проверки корректности данных перед сохранением
  declare @ptitle nvarchar(max)
  select @ptitle = value from @parameters where [key] = 'title'

  declare @id int
  select @id = id from as_trace where header=@ptitle and id <> @itemID

  if(@id >0) begin
    select 0 Result, 'В системе уже есть элемент с выбранным Заголовком (ID='+cast(@id as nvarchar)+')' Msg
  end else begin
    select 1 Result, '' Msg
  end
END

Процедура возвращает модель ResultModel: Result, Msg

Если Result=1 то проверка прошла успешно.

Примечание: ранее использовался способ передачи колонок формы как параметров хранимой процедуры (он оставлен для совместимости). В настоящий момент используется коллекция @parameters для передачи колонок (также в рамках этой коллекции дополнительно передаются langID и falconGuid).

Если не хотите использвоать CheckItem - оставьте в процедуре только select 1 Result, '' Msg

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