USP_DATAFORMTEMPLATE_EDIT_MKTMEMBERSHIPMAILINGTEMPLATE_3
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@CODE | nvarchar(10) | IN | |
@NAME | nvarchar(50) | IN | |
@DESCRIPTION | nvarchar(255) | IN | |
@SITEID | uniqueidentifier | IN | |
@SOURCECODEID | uniqueidentifier | IN | |
@ITEMLIST | xml | IN | |
@EXCLUSIONDATETYPECODE | tinyint | IN | |
@EXCLUSIONASOFDATE | datetime | IN | |
@EXCLUDEDECEASED | bit | IN | |
@EXCLUDEINACTIVE | bit | IN | |
@EXCLUSIONS | xml | IN | |
@USEADDRESSPROCESSING | bit | IN | |
@ADDRESSPROCESSINGOPTIONID | uniqueidentifier | IN | |
@NAMEFORMATPARAMETERID | uniqueidentifier | IN | |
@ADDRESSPROCESSINGOPTIONSEASONALASOFDATETYPECODE | tinyint | IN | |
@ADDRESSPROCESSINGOPTIONSEASONALASOFDATE | datetime | IN | |
@ACTIVATIONKPIS | xml | IN | |
@USEKPISASDEFAULT | bit | IN | |
@APPEALINFORMATION | xml | IN | |
@RUNACTIVATEANDEXPORT | bit | IN | |
@EXPORTDESCRIPTION | nvarchar(255) | IN | |
@MAILEXPORTDEFINITIONID | uniqueidentifier | IN | |
@EMAILEXPORTDEFINITIONID | uniqueidentifier | IN | |
@PHONEEXPORTDEFINITIONID | uniqueidentifier | IN | |
@CODEVALUEID | uniqueidentifier | IN | |
@RUNSEGMENTATIONSEGMENTREFRESHPROCESS | bit | IN | |
@CACHESOURCEANALYSISRULEDATA | bit | IN | |
@RUNMARKETINGEXCLUSIONSREPORT | bit | IN |
Definition
Copy
CREATE procedure dbo.[USP_DATAFORMTEMPLATE_EDIT_MKTMEMBERSHIPMAILINGTEMPLATE_3]
(
@ID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@CODE nvarchar(10),
@NAME nvarchar(50),
@DESCRIPTION nvarchar(255),
@SITEID uniqueidentifier,
@SOURCECODEID uniqueidentifier,
@ITEMLIST xml,
@EXCLUSIONDATETYPECODE tinyint,
@EXCLUSIONASOFDATE datetime,
@EXCLUDEDECEASED bit,
@EXCLUDEINACTIVE bit,
@EXCLUSIONS xml,
@USEADDRESSPROCESSING bit,
@ADDRESSPROCESSINGOPTIONID uniqueidentifier,
@NAMEFORMATPARAMETERID uniqueidentifier,
@ADDRESSPROCESSINGOPTIONSEASONALASOFDATETYPECODE tinyint,
@ADDRESSPROCESSINGOPTIONSEASONALASOFDATE datetime,
@ACTIVATIONKPIS xml,
@USEKPISASDEFAULT bit,
@APPEALINFORMATION xml,
@RUNACTIVATEANDEXPORT bit,
@EXPORTDESCRIPTION nvarchar(255),
@MAILEXPORTDEFINITIONID uniqueidentifier,
@EMAILEXPORTDEFINITIONID uniqueidentifier,
@PHONEEXPORTDEFINITIONID uniqueidentifier,
@CODEVALUEID uniqueidentifier,
@RUNSEGMENTATIONSEGMENTREFRESHPROCESS bit,
@CACHESOURCEANALYSISRULEDATA bit,
@RUNMARKETINGEXCLUSIONSREPORT bit
)
as
set nocount on;
declare @CURRENTDATE datetime;
declare @CURRENTSITEID uniqueidentifier;
declare @OLDSOURCECODEID uniqueidentifier;
declare @MEMBERSHIPMAILINGPROCESSID uniqueidentifier;
if exists(select top 1 1 from dbo.[MKTMEMBERSHIPMAILINGTEMPLATERULE] where [MEMBERSHIPMAILINGTEMPLATEID] = @ID) or
exists(select top 1 1 from dbo.[MKTMEMBERSHIPMAILINGTEMPLATESEED] where [MEMBERSHIPMAILINGTEMPLATEID] = @ID)
begin
select @CURRENTSITEID = [SITEID] from dbo.[MKTMEMBERSHIPMAILINGTEMPLATE] where [ID] = @ID;
if (@CURRENTSITEID <> @SITEID or (@CURRENTSITEID is null and @SITEID is not null) or (@CURRENTSITEID is not null and @SITEID is null))
begin
raiserror('Site may not be changed on an membership renewal effort template that is in use or has dependencies.', 13, 1);
return 1;
end
end
begin try
if @CHANGEAGENTID is null
exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;
select
@OLDSOURCECODEID = [SOURCECODEID],
@CURRENTDATE = getdate()
from dbo.[MKTMEMBERSHIPMAILINGTEMPLATE]
where [ID] = @ID;
/* update the membership mailing template fields */
update dbo.[MKTMEMBERSHIPMAILINGTEMPLATE] set
[CODE] = @CODE,
[PARTDEFINITIONVALUESID] = @CODEVALUEID,
[NAME] = @NAME,
[DESCRIPTION] = @DESCRIPTION,
[SITEID] = @SITEID,
[SOURCECODEID] = @SOURCECODEID,
[USEADDRESSPROCESSING] = @USEADDRESSPROCESSING,
[ADDRESSPROCESSINGOPTIONID] = @ADDRESSPROCESSINGOPTIONID,
[NAMEFORMATPARAMETERID] = @NAMEFORMATPARAMETERID,
[ADDRESSPROCESSINGOPTIONSEASONALASOFDATETYPECODE] = @ADDRESSPROCESSINGOPTIONSEASONALASOFDATETYPECODE,
[ADDRESSPROCESSINGOPTIONSEASONALASOFDATE] = @ADDRESSPROCESSINGOPTIONSEASONALASOFDATE,
[RUNACTIVATEANDEXPORT] = @RUNACTIVATEANDEXPORT,
[RUNSEGMENTATIONSEGMENTREFRESHPROCESS] = @RUNSEGMENTATIONSEGMENTREFRESHPROCESS,
[CACHESOURCEANALYSISRULEDATA] = @CACHESOURCEANALYSISRULEDATA,
[RUNMARKETINGEXCLUSIONSREPORT] = @RUNMARKETINGEXCLUSIONSREPORT,
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE
where [ID] = @ID;
/* save the sourcecode parts */
exec dbo.[USP_MKTMEMBERSHIPMAILINGTEMPLATESOURCECODEPART_GETITEMLIST2_UPDATEFROMXML] @ID, @ITEMLIST, @CHANGEAGENTID, @CURRENTDATE;
/* update any rule codes in this template with their base segment codes */
if isnull(cast(@OLDSOURCECODEID as varchar(36)), '') <> isnull(cast(@SOURCECODEID as varchar(36)), '')
update dbo.[MKTMEMBERSHIPMAILINGTEMPLATERULE] set
[CODE] = (case when @SOURCECODEID is null then '' else [MKTSEGMENT].[CODE] end),
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE
from dbo.[MKTMEMBERSHIPMAILINGTEMPLATERULE] as [RULE]
inner join dbo.[MKTSEGMENT] on [MKTSEGMENT].[ID] = [RULE].[SEGMENTID]
where [RULE].[MEMBERSHIPMAILINGTEMPLATEID] = @ID;
/* save the contact rules/communication preferences for the membership mailing business process */
select
@MEMBERSHIPMAILINGPROCESSID = [ID]
from dbo.[MKTMEMBERSHIPMAILINGPROCESS]
where [MEMBERSHIPMAILINGTEMPLATEID] = @ID;
exec dbo.[USP_BUSINESSPROCESSCOMMPREF_UPDATE]
@CHANGEAGENTID = @CHANGEAGENTID,
@BUSINESSPROCESSCATALOGID = '854A7703-89D1-4EF7-A7C6-B8836A887092',
@BUSINESSPROCESSPARAMETERSETID = @MEMBERSHIPMAILINGPROCESSID,
@EXCLUSIONDATETYPECODE = @EXCLUSIONDATETYPECODE,
@EXCLUSIONASOFDATE = @EXCLUSIONASOFDATE,
@EXCLUDEDECEASED = @EXCLUDEDECEASED,
@EXCLUDEINACTIVE = @EXCLUDEINACTIVE,
@EXCLUSIONS = @EXCLUSIONS,
@CURRENTAPPUSERID = @CURRENTAPPUSERID;
/* Save KPIs */
exec dbo.[USP_MKTMEMBERSHIPMAILINGTEMPLATEKPI_SAVEFIELD]
@ID,
@ACTIVATIONKPIS,
@USEKPISASDEFAULT,
@CHANGEAGENTID;
/* Save appeal information */
exec dbo.[USP_MKTMEMBERSHIPMAILINGTEMPLATEAPPEAL_SAVEFIELD]
@ID,
@APPEALINFORMATION;
/* Save export information */
exec dbo.[USP_MKTMEMBERSHIPMAILINGTEMPLATEEXPORT_SAVEFIELD]
@ID,
@EXPORTDESCRIPTION,
@MAILEXPORTDEFINITIONID,
@EMAILEXPORTDEFINITIONID,
@PHONEEXPORTDEFINITIONID;
end try
begin catch
exec dbo.[USP_RAISE_ERROR];
return 1;
end catch
return 0;