USP_DATAFORMTEMPLATE_ADD_MKTSEGMENTATIONAPPEAL

The save procedure used by the add dataform template "Marketing Effort Appeal 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.
@NAME nvarchar(100) IN Name
@DESCRIPTION nvarchar(255) IN Description
@APPEALCATEGORYCODEID uniqueidentifier IN Category
@BUSINESSUNITCODEID uniqueidentifier IN Business unit
@STARTDATE datetime IN Start date
@ENDDATE datetime IN End date
@GOAL money IN Goal
@APPEALREPORT1CODEID uniqueidentifier IN Report code
@SITEID uniqueidentifier IN Site
@MEMBERSHIPPROGRAMID uniqueidentifier IN Membership
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@BUSINESSUNITS xml IN Business units
@CURRENCYID uniqueidentifier IN Input parameter indicating the context ID for the record being added.

Definition

Copy

CREATE procedure dbo.[USP_DATAFORMTEMPLATE_ADD_MKTSEGMENTATIONAPPEAL]
(
  @ID uniqueidentifier = null output,
  @CHANGEAGENTID uniqueidentifier = null,
  @NAME nvarchar(100) = '',
  @DESCRIPTION nvarchar(255) = '',
  @APPEALCATEGORYCODEID uniqueidentifier = null,
  @BUSINESSUNITCODEID uniqueidentifier= null,
  @STARTDATE datetime = null,
  @ENDDATE datetime = null,
  @GOAL money = 0,
  @APPEALREPORT1CODEID uniqueidentifier = null,
  @SITEID uniqueidentifier = null,
  @MEMBERSHIPPROGRAMID uniqueidentifier = null,
  @CURRENTAPPUSERID uniqueidentifier,
  @BUSINESSUNITS xml = null,
  @CURRENCYID uniqueidentifier
)
as
begin
  set nocount on;

  declare @CURRENTDATE datetime;
  declare @ORGANIZATIONGOAL money;
  declare @ORGANIZATIONEXCHANGERATEID uniqueidentifier;

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

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

  set @CURRENTDATE = getdate();

  if @SITEID is null and dbo.[UFN_SITEREQUIREDFORUSERONFEATURE](@CURRENTAPPUSERID, '5902b648-d89d-4446-8a33-e3767ad6b4c0', 1) = 1
    begin
      raiserror('BBERR_APPEALADDFROMMARKETINGEFFORT_SITEISREQUIRED', 13, 1);
      return 1;
    end

  begin try
    exec dbo.[USP_CURRENCY_GETCURRENCYVALUES]
      @GOAL,
      @CURRENTDATE,
      @CURRENCYID,
      null,
      null,
      null,
      null,
      @ORGANIZATIONGOAL output,
      @ORGANIZATIONEXCHANGERATEID output,
      1;

    insert into dbo.[APPEAL]
    (
      [ID],
      [NAME],
      [DESCRIPTION],
      [APPEALCATEGORYCODEID],
      [BUSINESSUNITCODEID],
      [STARTDATE],
      [ENDDATE],
      [GOAL],
      [APPEALREPORT1CODEID],
      [ISACTIVE],
      [SITEID],
      [MEMBERSHIPPROGRAMID],
      [ADDEDBYID],
      [CHANGEDBYID],
      [DATEADDED],
      [DATECHANGED],
      [BASECURRENCYID],
      [ORGANIZATIONGOAL],
      [ORGANIZATIONEXCHANGERATEID]
    ) values (
      @ID,
      @NAME,
      @DESCRIPTION,
      @APPEALCATEGORYCODEID,
      null,
      @STARTDATE,
      @ENDDATE,
      @GOAL,
      @APPEALREPORT1CODEID,
      1,
      @SITEID,
      @MEMBERSHIPPROGRAMID,
      @CHANGEAGENTID,
      @CHANGEAGENTID,
      @CURRENTDATE,
      @CURRENTDATE,
      @CURRENCYID,
      @ORGANIZATIONGOAL,
      @ORGANIZATIONEXCHANGERATEID
    );

    if @BUSINESSUNITCODEID is null
      exec dbo.[USP_APPEALBUSINESSUNIT_GETBUSINESSUNITS_ADDFROMXML] @ID, @BUSINESSUNITS, @CHANGEAGENTID;
    else
      insert into dbo.[APPEALBUSINESSUNIT]
      (
        [ID],
        [APPEALID],
        [BUSINESSUNITCODEID],
        [ADDEDBYID],
        [CHANGEDBYID]
      ) values (
        newid(),
        @ID,
        @BUSINESSUNITCODEID,
        @CHANGEAGENTID,
        @CHANGEAGENTID
      );
  end try

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

  return 0;
end