USP_DATAFORMTEMPLATE_VIEW_EFFORTEXCLUSIONSPROCESS_EXPRESSION
The load procedure used by the view dataform template "Marketing Effort Exclusions Process Expression 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. |
@EFFORTID | uniqueidentifier | INOUT | Effort ID |
@EFFORTNAME | nvarchar(100) | INOUT | Name |
@EFFORTDESCRIPTION | nvarchar(100) | INOUT | Description |
@EFFORTEXCLUSIONPROCESSSTATUSID | uniqueidentifier | INOUT | Marketing effort exclusions process status ID |
@EFFORTTYPECODE | tinyint | INOUT | Marketing effort type code |
Definition
Copy
CREATE procedure dbo.[USP_DATAFORMTEMPLATE_VIEW_EFFORTEXCLUSIONSPROCESS_EXPRESSION]
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@EFFORTID uniqueidentifier = null output,
@EFFORTNAME nvarchar(100) = null output,
@EFFORTDESCRIPTION nvarchar(100) = null output,
@EFFORTEXCLUSIONPROCESSSTATUSID uniqueidentifier = null output,
@EFFORTTYPECODE tinyint = null output
)
as
set nocount on;
declare @ENDEDON datetime;
set @DATALOADED = 0;
select
@DATALOADED = 1,
@EFFORTID = [MKTSEGMENTATIONEXCLUSIONSPROCESS].[SEGMENTATIONID],
@EFFORTNAME = [MKTSEGMENTATION].[NAME],
@EFFORTDESCRIPTION = [MKTSEGMENTATION].[DESCRIPTION],
@EFFORTTYPECODE = [MKTSEGMENTATION].[MAILINGTYPECODE],
@ENDEDON = [BUSINESSPROCESSSTATUS].[ENDEDON]
from dbo.[MKTSEGMENTATIONEXCLUSIONSPROCESS]
left join dbo.[MKTSEGMENTATIONEXCLUSIONSPROCESSSTATUS] on [MKTSEGMENTATIONEXCLUSIONSPROCESSSTATUS].[PARAMETERSETID] = [MKTSEGMENTATIONEXCLUSIONSPROCESS].[ID]
left join dbo.[BUSINESSPROCESSSTATUS] on [BUSINESSPROCESSSTATUS].[ID] = [MKTSEGMENTATIONEXCLUSIONSPROCESSSTATUS].[ID]
inner join dbo.[MKTSEGMENTATION] on [MKTSEGMENTATION].[ID] = dbo.[MKTSEGMENTATIONEXCLUSIONSPROCESS].[SEGMENTATIONID]
where [MKTSEGMENTATIONEXCLUSIONSPROCESS].[ID] = @ID;
if @DATALOADED = 1 and @ENDEDON is not null
--Grab the segment counts status ID that was started before the exclusions process since the output table is now linked to the segment counts process...
select top 1
@EFFORTEXCLUSIONPROCESSSTATUSID = [BUSINESSPROCESSSTATUS].[ID]
from dbo.[MKTSEGMENTATIONSEGMENTCALCULATEPROCESS]
inner join dbo.[MKTSEGMENTATIONSEGMENTCALCULATEPROCESSSTATUS] on [MKTSEGMENTATIONSEGMENTCALCULATEPROCESSSTATUS].[PARAMETERSETID] = [MKTSEGMENTATIONSEGMENTCALCULATEPROCESS].[ID]
inner join dbo.[BUSINESSPROCESSSTATUS] on [BUSINESSPROCESSSTATUS].[ID] = [MKTSEGMENTATIONSEGMENTCALCULATEPROCESSSTATUS].[ID]
where [MKTSEGMENTATIONSEGMENTCALCULATEPROCESS].[SEGMENTATIONID] = @EFFORTID
and [BUSINESSPROCESSSTATUS].[STATUSCODE] = 0
and [BUSINESSPROCESSSTATUS].[STARTEDON] < @ENDEDON
order by [BUSINESSPROCESSSTATUS].[ENDEDON] desc;
return 0;