USP_DATAFORMTEMPLATE_EDITLOAD_MKTDUPLICATE

The load procedure used by the edit dataform template "Record Source Duplicate Criteria Edit Form"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@QUERYVIEWCATALOGID uniqueidentifier INOUT Query View Catalog ID
@DEDUPLISTS bit INOUT Apply duplicate criteria during list import
@DUPLICATEFIELDS xml INOUT Fields
@TSLONG bigint INOUT Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record.

Definition

Copy


CREATE procedure dbo.[USP_DATAFORMTEMPLATE_EDITLOAD_MKTDUPLICATE]
(
  @ID uniqueidentifier,
  @DATALOADED bit = 0 output,
  @QUERYVIEWCATALOGID uniqueidentifier = null output,
  @DEDUPLISTS bit = null output,
  @DUPLICATEFIELDS xml = null output,
  @TSLONG bigint = 0 output
)
as
  set nocount on;

  set @DATALOADED = 0;
  set @TSLONG = 0;

  --The ID being passed in is actually the queryviewcatalogid of the marketing record source

  if not exists (select [ID] from dbo.[MKTDUPLICATE] where [QUERYVIEWCATALOGID] = @ID)
    begin
      --This is the first time accessing duplicate criteria for this record source, so add a row for it.

      declare @CHANGEAGENTID uniqueidentifier;
      declare @CURRENTDATE datetime;
      declare @NEWID uniqueidentifier;

      if @CHANGEAGENTID is null
        exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;

      set @CURRENTDATE = getdate();
      set @NEWID = newid();
      set @DEDUPLISTS = 1;
    end;

  select
    @DATALOADED = 1,
    @QUERYVIEWCATALOGID = [QUERYVIEWCATALOGID],
    @DEDUPLISTS = [DEDUPLISTS],
    @DUPLICATEFIELDS = dbo.[UFN_MKTDUPLICATE_GETDUPLICATEFIELDS_TOITEMLISTXML]([ID]),
    @TSLONG = [TSLONG]
  from dbo.[MKTDUPLICATE]
  where [QUERYVIEWCATALOGID] = @ID;

  if @QUERYVIEWCATALOGID is null
    begin
      set @DATALOADED = 1;
      set @QUERYVIEWCATALOGID = @ID;
      set @DEDUPLISTS = 1;
    end 

  return 0;