USP_MKTSEGMENTATION_GETSUMMARYINFO
Returns summary information about a marketing effort.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@SEGMENTATIONID | uniqueidentifier | IN | |
@CURRENTAPPUSERID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.[USP_MKTSEGMENTATION_GETSUMMARYINFO]
(
@SEGMENTATIONID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier = null
)
as
set nocount on;
declare @BBECAPPEALID nvarchar(36);
declare @BBECAPPEALGUID uniqueidentifier;
declare @BBECAPPEALDESCRIPTION nvarchar(100);
declare @COLLAPSESUMMARYSECTION bit;
declare @SHOWLOCKEDFIELDS bit;
--Make sure the appeal name and description are up-to-date in our table...
exec dbo.[USP_MKTSEGMENTATIONACTIVATE_UPDATEAPPEALINFO] @SEGMENTATIONID;
select
@BBECAPPEALID = [APPEALSYSTEMID]
from dbo.[MKTSEGMENTATIONACTIVATE]
where [MKTSEGMENTATIONACTIVATE].[SEGMENTATIONID] = @SEGMENTATIONID
and dbo.[UFN_MKTRECORDSOURCE_VALIDFORBBEC]([MKTSEGMENTATIONACTIVATE].[RECORDSOURCEID]) = 1;
begin try
set @BBECAPPEALGUID = convert(uniqueidentifier, @BBECAPPEALID);
end try
begin catch
-- yum!
set @BBECAPPEALGUID = null;
end catch
if not @BBECAPPEALGUID is null
select
@BBECAPPEALDESCRIPTION = [NAME]
from dbo.[APPEAL]
where [ID] = @BBECAPPEALGUID;
if @CURRENTAPPUSERID is not null
select
@COLLAPSESUMMARYSECTION = [COLLAPSESUMMARYSECTION],
@SHOWLOCKEDFIELDS = [SHOWLOCKEDFIELDS]
from dbo.[MKTCOMMUNICATIONEFFORTUSERSETTINGS]
where [SEGMENTATIONID] = @SEGMENTATIONID
and [APPUSERID] = @CURRENTAPPUSERID;
select
[MKTSEGMENTATION].[NAME],
[MKTSEGMENTATION].[DESCRIPTION],
[MKTSEGMENTATION].[CODE],
[MKTSEGMENTATION].[IDINTEGER],
[MKTSEGMENTATION].[ACTIVE],
[MKTSEGMENTATION].[ACTIVATEDATE],
--Get a comma delimited list of appeals
isnull(stuff(
(
select ', ' + case when [APPEALSYSTEMID] = @BBECAPPEALID then @BBECAPPEALDESCRIPTION else [APPEALDESCRIPTION] end
from dbo.[MKTSEGMENTATIONACTIVATE]
where [SEGMENTATIONID] = [MKTSEGMENTATION].[ID]
for xml path(''), type
).value('.', 'varchar(max)')
, 1, 2, ''
), '') as [APPEAL],
[EFFORTSTATUS].[DATEREFRESHED],
(select count([ID]) from dbo.[MKTSEGMENTATIONSEGMENT] where [SEGMENTATIONID] = [MKTSEGMENTATION].[ID]) as [NUMSEGMENTS],
(select count([ID]) from dbo.[MKTSEGMENTATIONPACKAGE] where [SEGMENTATIONID] = [MKTSEGMENTATION].[ID]) as [NUMPACKAGES],
[MKTSEGMENTATIONBUDGET].[BUDGETAMOUNT],
[MKTSEGMENTATIONBUDGET].[FIXEDCOST],
[MKTSEGMENTATION].[MARKETINGPLANITEMID],
(select (case when count(*) = 0 then (select case when (select count([ID]) from dbo.[MKTGIFTRECORDSOURCE]) > 0 then 1 else 0 end) else 0 end)
from dbo.[MKTSEGMENTATIONSEGMENT]
inner join dbo.[MKTSEGMENT] on [MKTSEGMENT].[ID] = [MKTSEGMENTATIONSEGMENT].[SEGMENTID]
left outer join dbo.[MKTGIFTRECORDSOURCE] on [MKTGIFTRECORDSOURCE].[ID] = [MKTSEGMENT].[QUERYVIEWCATALOGID]
where [MKTSEGMENTATIONSEGMENT].[SEGMENTATIONID] = [MKTSEGMENTATION].[ID]
and [MKTGIFTRECORDSOURCE].[ID] is null) as [GIFTSOURCESDEFINED],
(select count([ID]) from dbo.[MKTSEGMENTATIONSEED] where [SEGMENTATIONID] = [MKTSEGMENTATION].[ID]) as [NUMSEEDS],
(select count([TEST].[ID]) from dbo.[MKTSEGMENTATION] as [TEST] where [TEST].[PARENTSEGMENTATIONID] = [MKTSEGMENTATION].[ID]) as [NUMTESTMAILINGS],
[MKTSEGMENTATION].[MAILDATE],
(select [NAME] from dbo.[SITE] where [ID] = [MKTSEGMENTATION].[SITEID]) as [SITE],
[MKTSEGMENTATION].[MAILINGTYPECODE],
[MKTSEGMENTATIONBUDGET].[FIXEDCOST] as [MAILINGFIXEDCOST],
convert(uniqueidentifier, isnull(@BBECAPPEALGUID, '00000000-0000-0000-0000-000000000000')) as [BBECAPPEALID],
isnull(@BBECAPPEALDESCRIPTION, '') as [BBECAPPEALDESCRIPTION],
[MKTSEGMENTATION].[BASECURRENCYID],
dbo.[UFN_CURRENCY_GETDESCRIPTION]([MKTSEGMENTATION].[BASECURRENCYID]) [CURRENCY],
[MKTSEGMENTATION].[ISHISTORICAL],
[MKTSEGMENTATION].[DATEADDED],
[EFFORTSTATUS].[CALCULATEDATE] as [LASTCALCULATEDATE],
[EFFORTSTATUS].[EXPORTDATE] as [LASTEXPORTDATE],
[EFFORTSTATUS].[REMOVEMEMBERSDATE],
[EFFORTSTATUS].[CALCULATEPROCESSID],
[EFFORTSTATUS].[EXPORTPROCESSID],
[EFFORTSTATUS].[ACTIVATEPROCESSID],
[EFFORTSTATUS].[REFRESHPROCESSID],
[EFFORTSTATUS].[REMOVEMEMBERSPROCESSID],
[MKTSEGMENTATION].[DUEDATE],
[MKTSEGMENTATION].[CHANNEL],
[PARENTTEMPLATE].[NAME] as [TEMPLATENAME],
(select [DISPLAYNAME] from dbo.[APPUSER] where [ID] = [MKTSEGMENTATION].[OWNERID]) as [OWNER],
isnull(@COLLAPSESUMMARYSECTION, 0) as [COLLAPSESUMMARYSECTION],
isnull(@SHOWLOCKEDFIELDS, 0) as [SHOWLOCKEDFIELDS],
[EFFORTSTATUS].[CALCULATESTATUSCODE],
[EFFORTSTATUS].[EXPORTSTATUSCODE],
[EFFORTSTATUS].[ACTIVATESTATUSCODE],
[EFFORTSTATUS].[REFRESHSTATUSCODE],
[EFFORTSTATUS].[REMOVEMEMBERSSTATUSCODE],
[MKTCOMMUNICATIONTEMPLATE].[INCLUDESEEDS],
cast((case when dbo.[UFN_INSTALLEDPRODUCTS_PRODUCTIS]('BB9873D7-F1ED-430A-8AB4-F09F47056538') = 0 then 1 else 0 end) as bit) [ISBBEC]
from dbo.[MKTSEGMENTATION]
inner join dbo.[MKTSEGMENTATIONBUDGET] on [MKTSEGMENTATIONBUDGET].[ID] = [MKTSEGMENTATION].[ID]
left join dbo.[UFN_MKTCOMMUNICATIONEFFORT_GETSTATUSINFO_BULK]() as [EFFORTSTATUS] on [EFFORTSTATUS].[SEGMENTATIONID] = [MKTSEGMENTATION].[ID]
left join dbo.[MKTCOMMUNICATIONTEMPLATE] on [MKTSEGMENTATION].[ID] = [MKTCOMMUNICATIONTEMPLATE].[MKTSEGMENTATIONID]
left join dbo.[MKTCOMMUNICATIONTEMPLATE] as [PARENTTEMPLATE] on [MKTCOMMUNICATIONTEMPLATE].[PARENTCOMMUNICATIONTEMPLATEID] = [PARENTTEMPLATE].[ID]
where [MKTSEGMENTATION].[ID] = @SEGMENTATIONID;
return 0;