USP_DATAFORMTEMPLATE_ADD_MKTSEGMENTATIONASKLADDEROVERRIDE

The save procedure used by the add dataform template "Marketing Effort Ask Ladder Override Add Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@SEGMENTATIONID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@IDSETREGISTERID uniqueidentifier IN Selection
@ASKLADDERID uniqueidentifier IN Ask ladder

Definition

Copy


CREATE procedure dbo.[USP_DATAFORMTEMPLATE_ADD_MKTSEGMENTATIONASKLADDEROVERRIDE]
(
  @ID uniqueidentifier = null output,
  @CHANGEAGENTID uniqueidentifier = null,    
  @SEGMENTATIONID uniqueidentifier,
  @IDSETREGISTERID uniqueidentifier,
  @ASKLADDERID uniqueidentifier
)
as
  set nocount on;

  declare @CURRENTDATE datetime = getdate();
  declare @SEQUENCE int;

  begin try
    if @ID is null
      set @ID = newid();

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

    select
      @SEQUENCE = isnull(max([SEQUENCE]), 0) + 1
    from dbo.[MKTSEGMENTATIONASKLADDEROVERRIDE]
    where [SEGMENTATIONID] = @SEGMENTATIONID;

    insert into dbo.[MKTSEGMENTATIONASKLADDEROVERRIDE] (
      [ID],
      [SEGMENTATIONID],
      [IDSETREGISTERID],
      [ASKLADDERID],
      [SEQUENCE],
      [ADDEDBYID],
      [CHANGEDBYID],
      [DATEADDED],
      [DATECHANGED]
    ) values (
      @ID,
      @SEGMENTATIONID,
      @IDSETREGISTERID,
      @ASKLADDERID,
      @SEQUENCE,
      @CHANGEAGENTID,
      @CHANGEAGENTID,
      @CURRENTDATE,
      @CURRENTDATE
    );

    --Clear the record count cache...

    exec dbo.[USP_MKTSEGMENTATION_CLEARCACHE] @SEGMENTATIONID, 1;

    return 0;
  end try

  begin catch
    exec dbo.[USP_RAISE_ERROR];
    return 1;
  end catch

  return 0;