USP_MKTSEGMENTWHITEMAILCACHE_SAVE

Saves the calculations for a white mail segment to its cache.

Parameters

Parameter Parameter Type Mode Description
@SEGMENTID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@RESPONDERS int IN
@RESPONSES int IN
@TOTALGIFTAMOUNT money IN
@ORGANIZATIONTOTALGIFTAMOUNT money IN
@AVERAGEGIFTAMOUNT money IN
@ORGANIZATIONAVERAGEGIFTAMOUNT money IN

Definition

Copy


CREATE procedure dbo.[USP_MKTSEGMENTWHITEMAILCACHE_SAVE]
(
  @SEGMENTID uniqueidentifier,
  @CHANGEAGENTID uniqueidentifier,
  @RESPONDERS integer,
  @RESPONSES integer,
  @TOTALGIFTAMOUNT money,
  @ORGANIZATIONTOTALGIFTAMOUNT money,
  @AVERAGEGIFTAMOUNT money,
  @ORGANIZATIONAVERAGEGIFTAMOUNT money
)
as
  set nocount on;

  declare @CURRENTDATE date;
  declare @BASECURRENCYID uniqueidentifier;

  set @CURRENTDATE = getdate();

  if exists (select top 1 1 from dbo.[MKTSEGMENTWHITEMAILCACHE] where [ID] = @SEGMENTID)
    update dbo.[MKTSEGMENTWHITEMAILCACHE] set
      [RESPONDERS] = @RESPONDERS,
      [RESPONSES] = @RESPONSES,
      [TOTALGIFTAMOUNT] = @TOTALGIFTAMOUNT,
      [ORGANIZATIONTOTALGIFTAMOUNT] = @ORGANIZATIONTOTALGIFTAMOUNT,
      [AVERAGEGIFTAMOUNT] = @AVERAGEGIFTAMOUNT,
      [ORGANIZATIONAVERAGEGIFTAMOUNT] = @ORGANIZATIONAVERAGEGIFTAMOUNT,
      [CHANGEDBYID] = @CHANGEAGENTID,
      [DATECHANGED] = @CURRENTDATE
    where [ID] = @SEGMENTID
  else
    begin
      select @BASECURRENCYID = [BASECURRENCYID] from dbo.[MKTSEGMENT] where [ID] = @SEGMENTID;

      insert into dbo.[MKTSEGMENTWHITEMAILCACHE]
      (
        [ID],
        [RESPONDERS],
        [RESPONSES],
        [BASECURRENCYID],
        [TOTALGIFTAMOUNT],
        [ORGANIZATIONTOTALGIFTAMOUNT],
        [AVERAGEGIFTAMOUNT],
        [ORGANIZATIONAVERAGEGIFTAMOUNT],
        [ADDEDBYID],
        [CHANGEDBYID],
        [DATEADDED],
        [DATECHANGED]
      )
      values
      (
        @SEGMENTID,
        @RESPONDERS,
        @RESPONSES,
        @BASECURRENCYID,
        @TOTALGIFTAMOUNT,
        @ORGANIZATIONTOTALGIFTAMOUNT,
        @AVERAGEGIFTAMOUNT,
        @ORGANIZATIONAVERAGEGIFTAMOUNT,
        @CHANGEAGENTID,
        @CHANGEAGENTID,
        @CURRENTDATE,
        @CURRENTDATE
      )
    end

  return 0;