USP_DATAFORMTEMPLATE_VIEW_APPEALMAILINGACTIVATEPROCESS
The load procedure used by the view dataform template "Appeal Mailing Activate View Form"
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter used to load the fields defined on the form. |
@DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
@APPEALID | uniqueidentifier | INOUT | Appeal ID |
@APPEALNAME | nvarchar(100) | INOUT | Appeal |
@APPEALMAILINGID | uniqueidentifier | INOUT | Appeal mailing ID |
@APPEALMAILINGNAME | nvarchar(100) | INOUT | Name |
@APPEALMAILINGDESCRIPTION | nvarchar(255) | INOUT | Description |
@ACTIVE | bit | INOUT | Active |
@EXPORTQUANTITY | int | INOUT | EXPORTQUANTITY |
@EXPORTSTATUSCODE | tinyint | INOUT | EXPORTSTATUSCODE |
@NETCOMMUNITYEMAILJOBENABLED | bit | INOUT | NETCOMMUNITYEMAILJOBENABLED |
@NETCOMMUNITYLINKESTABLISHED | bit | INOUT | NETCOMMUNITYLINKESTABLISHED |
@NETCOMMUNITYEMAILJOBSTARTED | bit | INOUT | NETCOMMUNITYEMAILJOBSTARTED |
@EXPORTPROCESSSTATUSID | uniqueidentifier | INOUT | EXPORTPROCESSSTATUSID |
Definition
Copy
CREATE procedure dbo.[USP_DATAFORMTEMPLATE_VIEW_APPEALMAILINGACTIVATEPROCESS]
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@APPEALID uniqueidentifier = null output,
@APPEALNAME nvarchar(100) = null output,
@APPEALMAILINGID uniqueidentifier = null output,
@APPEALMAILINGNAME nvarchar(100) = null output,
@APPEALMAILINGDESCRIPTION nvarchar(255) = null output,
@ACTIVE bit = null output,
@EXPORTQUANTITY int = null output,
@EXPORTSTATUSCODE tinyint = null output,
@NETCOMMUNITYEMAILJOBENABLED bit = null output,
@NETCOMMUNITYLINKESTABLISHED bit = null output,
@NETCOMMUNITYEMAILJOBSTARTED bit = null output,
@EXPORTPROCESSSTATUSID uniqueidentifier = null output
)
as
set nocount on;
set @DATALOADED = 0;
declare @ACTIVATEPROCESSSTATUSID uniqueidentifier;
declare @COMMUNICATIONTYPECODE as tinyint;
select
@DATALOADED = 1,
@APPEALID = [APPEAL].[ID],
@APPEALNAME = [APPEAL].[NAME],
@APPEALMAILINGID = [APPEALMAILING].[ID],
@APPEALMAILINGNAME = [MKTSEGMENTATION].[NAME],
@APPEALMAILINGDESCRIPTION = [MKTSEGMENTATION].[DESCRIPTION],
@ACTIVE = [MKTSEGMENTATION].[ACTIVE],
@COMMUNICATIONTYPECODE = [MKTSEGMENTATION].[COMMUNICATIONTYPECODE]
from dbo.[MKTSEGMENTATIONACTIVATEPROCESS]
inner join dbo.[APPEALMAILING] on [APPEALMAILING].[ID] = [MKTSEGMENTATIONACTIVATEPROCESS].[SEGMENTATIONID]
inner join dbo.[APPEAL] on [APPEAL].[ID] = [APPEALMAILING].[APPEALID]
inner join dbo.[MKTSEGMENTATION] on [MKTSEGMENTATION].[ID] = [APPEALMAILING].[ID]
where [MKTSEGMENTATIONACTIVATEPROCESS].[ID] = @ID;
if @DATALOADED = 1
begin
-- Get the latest export process run
select top 1
@EXPORTPROCESSSTATUSID = [MKTSEGMENTATIONACTIVATEEXPORTLINK].[EXPORTPROCESSSTATUSID]
from dbo.[MKTSEGMENTATIONACTIVATEPROCESSSTATUS]
left join dbo.[MKTSEGMENTATIONACTIVATEEXPORTLINK] on [MKTSEGMENTATIONACTIVATEPROCESSSTATUS].[ID] = [MKTSEGMENTATIONACTIVATEEXPORTLINK].[ID]
where [MKTSEGMENTATIONACTIVATEPROCESSSTATUS].[PARAMETERSETID] = @ID
order by [MKTSEGMENTATIONACTIVATEPROCESSSTATUS].[DATEADDED] desc;
if @EXPORTPROCESSSTATUSID is null
-- Get the latest export process run
select top 1
@EXPORTPROCESSSTATUSID = [MKTSEGMENTATIONEXPORTPROCESSSTATUS].[ID]
from dbo.[MKTSEGMENTATIONEXPORTPROCESSSTATUS]
inner join dbo.[MKTSEGMENTATIONEXPORTPROCESS] on [MKTSEGMENTATIONEXPORTPROCESS].[ID] = [MKTSEGMENTATIONEXPORTPROCESSSTATUS].[PARAMETERSETID]
where [MKTSEGMENTATIONEXPORTPROCESS].[SEGMENTATIONID] = @APPEALMAILINGID
order by [MKTSEGMENTATIONEXPORTPROCESSSTATUS].[DATEADDED] desc;
if @EXPORTPROCESSSTATUSID is null
set @EXPORTPROCESSSTATUSID = '00000000-0000-0000-0000-000000000000';
-- Check to see if the export process has an email package to enable the NetCommunity jobs
declare @TABLENAME nvarchar(250);
declare @SQL nvarchar(max);
select
@TABLENAME = [TABLENAME]
from dbo.[BUSINESSPROCESSOUTPUT]
where [BUSINESSPROCESSSTATUSID] = @EXPORTPROCESSSTATUSID
and upper([TABLEKEY]) = upper(convert(nvarchar(36), @EXPORTPROCESSSTATUSID));
set @SQL =
'select top(1)
@EXPORTQUANTITY = [BUSINESSPROCESSOUTPUTSUMMARY].[QUANTITY],
@EXPORTSTATUSCODE = dbo.[UFN_MKTSEGMENTATIONEXPORTPROCESSOUTPUT_SUMMARYSTATUSCODE]([BUSINESSPROCESSOUTPUTSUMMARY].[STATUS]),
@NETCOMMUNITYEMAILJOBENABLED = case when exists (
select top 1 1
from [BUSINESSPROCESSOUTPUTSUMMARY].[PACKAGES].nodes(''/PACKAGES/ITEM'') T(c)
inner join dbo.[MKTPACKAGE] on [MKTPACKAGE].[ID] = T.c.value(''(ID)[1]'', ''uniqueidentifier'')
where [MKTPACKAGE].[NETCOMMUNITYTEMPLATEID] > 0)
then 1 else 0 end,
@NETCOMMUNITYEMAILJOBSTARTED = case when exists (
select top 1 1
from [BUSINESSPROCESSOUTPUTSUMMARY].[STATUS].nodes(''/STATUS/ITEM'') T(c)
where T.c.value(''(NETCOMMUNITYEMAILID)[1]'', ''integer'') > 0)
then 1 else 0 end,
@NETCOMMUNITYLINKESTABLISHED = dbo.[UFN_MKTNETCOMMUNITYINTEGRATION_LINKESTABLISHED]()
from dbo.[' + @TABLENAME + '] as [BUSINESSPROCESSOUTPUTSUMMARY];';
exec sp_executesql @SQL, N'@EXPORTQUANTITY int output, @EXPORTSTATUSCODE tinyint output, @NETCOMMUNITYEMAILJOBENABLED bit output, @NETCOMMUNITYEMAILJOBSTARTED bit output, @NETCOMMUNITYLINKESTABLISHED bit output',
@EXPORTQUANTITY = @EXPORTQUANTITY output,
@EXPORTSTATUSCODE = @EXPORTSTATUSCODE output,
@NETCOMMUNITYEMAILJOBENABLED = @NETCOMMUNITYEMAILJOBENABLED output,
@NETCOMMUNITYEMAILJOBSTARTED = @NETCOMMUNITYEMAILJOBSTARTED output,
@NETCOMMUNITYLINKESTABLISHED = @NETCOMMUNITYLINKESTABLISHED output;
end
return 0;