USP_DATAFORMTEMPLATE_EDIT_MEMBERSHIPRENEWALEFFORTPROCESS
The save procedure used by the edit dataform template "Membership Renewal Effort Process Edit Data Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter indicating the ID of the record being edited. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@MEMBERSHIPPROGRAMID | uniqueidentifier | IN | Membership program ID |
@MEMBERSHIPMAILINGPROCESSID | uniqueidentifier | IN | Membership renewal notices |
@APPEALID | uniqueidentifier | IN | Use existing appeal |
@APPEALNAME | nvarchar(100) | IN | Appeal name |
@APPEALDESCRIPTION | nvarchar(100) | IN | Appeal description |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_MEMBERSHIPRENEWALEFFORTPROCESS (
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@MEMBERSHIPPROGRAMID uniqueidentifier,
@MEMBERSHIPMAILINGPROCESSID uniqueidentifier,
@APPEALID uniqueidentifier,
@APPEALNAME nvarchar(100),
@APPEALDESCRIPTION nvarchar(100),
@CURRENTAPPUSERID uniqueidentifier
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
begin try
declare @MEMBERSHIPMAILINGTEMPLATEID uniqueidentifier
select @MEMBERSHIPMAILINGTEMPLATEID = MEMBERSHIPMAILINGTEMPLATEID
from dbo.MKTMEMBERSHIPMAILINGPROCESS
where ID = @MEMBERSHIPMAILINGPROCESSID
if @MEMBERSHIPMAILINGTEMPLATEID is null
begin
raiserror('ERR_MEMBERSHIPRENEWALEFFORT_FINDTEMPLATE', 13, 1)
return 1
end
-- Update template in membership renewal effort process table
update dbo.MKTMEMBERSHIPRENEWALEFFORTPROCESS
set MEMBERSHIPMAILINGTEMPLATEID = @MEMBERSHIPMAILINGTEMPLATEID
where ID = @ID
-- Add new appeal
if @APPEALID is null
begin
exec dbo.USP_DATAFORMTEMPLATE_ADD_APPEAL
@APPEALID output,
@CHANGEAGENTID ,
@APPEALNAME, --@NAME
@APPEALDESCRIPTION, --@DESCRIPTION
null, --@APPEALCATEGORYCODEID
null, --@BUSINESSUNITCODEID
@CURRENTDATE, --@STARTDATE
null, --@ENDDATE
0, --@GOAL
null, --@APPEALREPORT1CODEID
null, --@SITEID
@MEMBERSHIPPROGRAMID,
@CURRENTAPPUSERID
if @APPEALID is null
begin
raiserror('ERR_MEMBERSHIPRENEWALEFFORT_CREATEAPPEAL', 13, 1)
return 1
end
end
-- Update appeal in membership renewal effort template if desirable
if (select MEMBERSHIPPROGRAMID from dbo.APPEAL where ID = @APPEALID) = @MEMBERSHIPPROGRAMID
and not exists (select 1
from dbo.[MKTMEMBERSHIPMAILINGTEMPLATEAPPEAL]
where [APPEALSYSTEMID] = @APPEALID
and [MEMBERSHIPMAILINGTEMPLATEID] = @MEMBERSHIPMAILINGTEMPLATEID
)
begin
select @APPEALNAME = NAME, @APPEALDESCRIPTION = DESCRIPTION
from dbo.APPEAL where ID = @APPEALID
declare @APPEALINFORMATION xml
set @APPEALINFORMATION = (
select
[QUERYVIEWCATALOG].[DISPLAYNAME] as "RECORDSOURCENAME",
[MKTAPPEALRECORDSOURCE].[SEARCHLISTCATALOGID] as "SEARCHLISTCATALOGID",
[MKTAPPEALRECORDSOURCE].[ID] as "RECORDSOURCEID",
@APPEALID as APPEALSYSTEMID,
@APPEALNAME as APPEALID,
@APPEALDESCRIPTION as APPEALDESCRIPTION
from dbo.[MKTAPPEALRECORDSOURCE] inner join QUERYVIEWCATALOG on [MKTAPPEALRECORDSOURCE].[ID] = [QUERYVIEWCATALOG].[ID]
where dbo.[UFN_MKTRECORDSOURCE_VALIDFORPRODUCT]([QUERYVIEWCATALOG].[ID]) = 1
for xml raw('ITEM'),type,elements,root('APPEALINFORMATION'),BINARY BASE64
)
/* Save appeal information */
exec dbo.[USP_MKTMEMBERSHIPMAILINGTEMPLATEAPPEAL_SAVEFIELD]
@MEMBERSHIPMAILINGTEMPLATEID,
@APPEALINFORMATION
end
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0;