USP_DATAFORMTEMPLATE_EDIT_MKTSEGMENTATIONEXPORTPROCESS_6
The save procedure used by the edit dataform template "Marketing Effort Export Process Edit Form 4".
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. |
@DESCRIPTION | nvarchar(255) | IN | Description |
@MAILEXPORTDEFINITIONID | uniqueidentifier | IN | Mail export definition |
@EMAILEXPORTDEFINITIONID | uniqueidentifier | IN | Email export definition |
@PHONEEXPORTDEFINITIONID | uniqueidentifier | IN | Phone export definition |
@EXPORTACTIVESEGMENTS | bit | IN | Export active segments |
@EXPORTINLINEEXCLUSIONS | bit | IN | Export exclusion segments |
@INLINEEXCLUSIONEXPORTDEFINITIONID | uniqueidentifier | IN | Export definition |
Definition
Copy
CREATE procedure dbo.[USP_DATAFORMTEMPLATE_EDIT_MKTSEGMENTATIONEXPORTPROCESS_6]
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@DESCRIPTION nvarchar(255),
@MAILEXPORTDEFINITIONID uniqueidentifier,
@EMAILEXPORTDEFINITIONID uniqueidentifier,
@PHONEEXPORTDEFINITIONID uniqueidentifier,
@EXPORTACTIVESEGMENTS bit,
@EXPORTINLINEEXCLUSIONS bit,
@INLINEEXCLUSIONEXPORTDEFINITIONID uniqueidentifier
)
as
set nocount on;
declare @CURRENTDATE datetime;
begin try
if @CHANGEAGENTID is null
exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;
set @CURRENTDATE = getdate();
declare @EXPORTDESCRIPTIONLOCKED bit = 0;
declare @MAILEXPORTDEFINITIONIDLOCKED bit = 0;
declare @EMAILEXPORTDEFINITIONIDLOCKED bit = 0;
declare @PHONEEXPORTDEFINITIONIDLOCKED bit = 0;
declare @SEGMENTATIONID uniqueidentifier = (select [SEGMENTATIONID] from dbo.[MKTSEGMENTATIONEXPORTPROCESS] where [ID] = @ID);
/* Get template locked export settings */
if exists(select top 1 1 from dbo.[MKTCOMMUNICATIONTEMPLATE] where [MKTSEGMENTATIONID] = @SEGMENTATIONID)
begin
select
@EXPORTDESCRIPTIONLOCKED = [MKTCOMMUNICATIONTEMPLATEDEFAULT].[EXPORTDESCRIPTIONLOCKED],
@MAILEXPORTDEFINITIONIDLOCKED = [MKTCOMMUNICATIONTEMPLATEDEFAULT].[MAILEXPORTDEFINITIONIDLOCKED],
@EMAILEXPORTDEFINITIONIDLOCKED = [MKTCOMMUNICATIONTEMPLATEDEFAULT].[EMAILEXPORTDEFINITIONIDLOCKED],
@PHONEEXPORTDEFINITIONIDLOCKED = [MKTCOMMUNICATIONTEMPLATEDEFAULT].[PHONEEXPORTDEFINITIONIDLOCKED]
from dbo.[MKTCOMMUNICATIONTEMPLATE]
inner join dbo.[MKTCOMMUNICATIONTEMPLATEDEFAULT] on [MKTCOMMUNICATIONTEMPLATEDEFAULT].[COMMUNICATIONTEMPLATEID] = [MKTCOMMUNICATIONTEMPLATE].[ID]
where [MKTSEGMENTATIONID] = @SEGMENTATIONID;
end
/* Don't allow overriding of locked values */
update dbo.[MKTSEGMENTATIONEXPORTPROCESS] set
[DESCRIPTION] = case when @EXPORTDESCRIPTIONLOCKED = 1 then [DESCRIPTION] else @DESCRIPTION end,
[EXPORTACTIVESEGMENTS] = @EXPORTACTIVESEGMENTS,
[MAILEXPORTDEFINITIONID] = case when @MAILEXPORTDEFINITIONIDLOCKED = 1 then [MAILEXPORTDEFINITIONID] else @MAILEXPORTDEFINITIONID end,
[EMAILEXPORTDEFINITIONID] = case when @EMAILEXPORTDEFINITIONIDLOCKED = 1 then [EMAILEXPORTDEFINITIONID] else @EMAILEXPORTDEFINITIONID end,
[PHONEEXPORTDEFINITIONID] = case when @PHONEEXPORTDEFINITIONIDLOCKED = 1 then [PHONEEXPORTDEFINITIONID] else @PHONEEXPORTDEFINITIONID end,
[EXPORTINLINEEXCLUSIONS] = @EXPORTINLINEEXCLUSIONS,
[INLINEEXCLUSIONEXPORTDEFINITIONID] = @INLINEEXCLUSIONEXPORTDEFINITIONID,
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE
where [ID] = @ID;
end try
begin catch
exec dbo.[USP_RAISE_ERROR];
return 1;
end catch
return 0;