USP_DATAFORMTEMPLATE_ADD_MKTSEGMENTCOPY_PRELOAD

The load procedure used by the edit dataform template "Constituent Segment Copy Form"

Parameters

Parameter Parameter Type Mode Description
@SEGMENTID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@SEGMENTTYPECODE tinyint INOUT Segment type code
@QUERYVIEWCATALOGID uniqueidentifier INOUT Record source
@NAME nvarchar(100) INOUT Name
@DESCRIPTION nvarchar(255) INOUT Description
@SEGMENTCATEGORYCODEID uniqueidentifier INOUT Category
@CODEVALUEID uniqueidentifier INOUT Code value ID
@CODE nvarchar(10) INOUT Code
@SELECTIONS xml INOUT Selections
@GROUPS xml INOUT Groups
@SMARTQUERIESEXIST bit INOUT Smart queries exist
@SITEID uniqueidentifier INOUT Site
@SITEREQUIRED bit INOUT Site required?
@SEGMENTPARTDEFINITIONID uniqueidentifier INOUT

Definition

Copy


CREATE procedure dbo.[USP_DATAFORMTEMPLATE_ADD_MKTSEGMENTCOPY_PRELOAD]
(
  @SEGMENTID uniqueidentifier,
  @CURRENTAPPUSERID uniqueidentifier,
  @SEGMENTTYPECODE tinyint = null output,
  @QUERYVIEWCATALOGID uniqueidentifier = null output,
  @NAME nvarchar(100) = null output,
  @DESCRIPTION nvarchar(255) = null output,
  @SEGMENTCATEGORYCODEID uniqueidentifier = null output,
  @CODEVALUEID uniqueidentifier = null output,
  @CODE nvarchar(10) = null output,
  @SELECTIONS xml = null output,
  @GROUPS xml = null output,
  @SMARTQUERIESEXIST bit = null output,
  @SITEID uniqueidentifier = null output,
  @SITEREQUIRED bit = null output,
  @SEGMENTPARTDEFINITIONID uniqueidentifier = null output
)
as
  set nocount on;

  declare @DATALOADED bit;

  exec dbo.[USP_DATAFORMTEMPLATE_EDITLOAD_MKTSEGMENT_2]
    @ID = @SEGMENTID,
    @CURRENTAPPUSERID = @CURRENTAPPUSERID,
    @DATALOADED = @DATALOADED output,
    @NAME = @NAME output,
    @DESCRIPTION = @DESCRIPTION output,
    @SEGMENTCATEGORYCODEID = @SEGMENTCATEGORYCODEID output,
    @CODE = @CODE output,
    @QUERYVIEWCATALOGID = @QUERYVIEWCATALOGID output,
    @SELECTIONS = @SELECTIONS output,
    @GROUPS = @GROUPS output,
    @SMARTQUERIESEXIST = @SMARTQUERIESEXIST output,
    @ISINUSE = null,
    @DATECHANGED = null,
    @ALLOWCODEUPDATE = null,
    @CODEVALUEID = @CODEVALUEID output,
    @TSLONG = null,
    @SITEID = @SITEID output,
    @SITEREQUIRED = null,
    @SEGMENTPARTDEFINITIONID = @SEGMENTPARTDEFINITIONID output;

  set @SITEREQUIRED = dbo.[UFN_SITEREQUIREDFORUSERONFEATURE](@CURRENTAPPUSERID, '3BDB5A56-414F-4377-AE27-5C6E12744D09', 1);

 -- get unique segment name

  exec dbo.[USP_MKTCOMMON_GETUNIQUENAME] @NAME output, '{0} - Copy{1}', 'MKTSEGMENT', 'NAME', 0;            

  select
    @SEGMENTTYPECODE = [SEGMENTTYPECODE]
  from dbo.[MKTSEGMENT]
  where [ID] = @SEGMENTID;

  if dbo.[UFN_MKTSOURCECODEPARTDEFINITIONVALUE_GETAUTOINCREMENTSETTING](@CODEVALUEID) = 1
    set @CODE = dbo.[UFN_MKTSOURCECODE_AUTOINCREMENTCODE](@CODEVALUEID, 0);

  if @SELECTIONS is not null
    set @SELECTIONS.modify('delete /SELECTIONS/ITEM/ID');

  if @GROUPS is not null
    set @GROUPS.modify('delete /GROUPS/ITEM/ID');

  return 0;