USP_DATALIST_MKTSEGMENTPASSIVE_ACTIVATEDMAILINGS
Displays a list of activated marketing efforts that use a specific public media segment.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@SEGMENTID | uniqueidentifier | IN | Input parameter indicating the context ID for the data list. |
Definition
Copy
CREATE procedure dbo.[USP_DATALIST_MKTSEGMENTPASSIVE_ACTIVATEDMAILINGS]
(
@SEGMENTID uniqueidentifier
)
as
set nocount on;
select
[MKTSEGMENTATIONSEGMENT].[ID],
[MKTSEGMENTATION].[ID] as [MAILINGID],
'CATALOG:Blackbaud.AppFx.Marketing.Catalog.dll,Blackbaud.AppFx.Marketing.Catalog.envelope_16.png' as [IMAGEKEY],
[MKTSEGMENTATION].[NAME] as [MAILINGNAME],
[MKTSEGMENTATION].[ACTIVATEDATE] as [MAILINGACTIVATEDATE],
[MKTPACKAGE].[NAME] as [PACKAGENAME],
[MKTSEGMENTATIONSEGMENT].[EXPOSURESTARTDATE],
datediff(dd, [MKTSEGMENTATIONSEGMENT].[EXPOSURESTARTDATE], [MKTSEGMENTATIONSEGMENT].[EXPOSUREENDDATE]) + 1 as [EXPOSURE],
[MKTSEGMENTATIONSEGMENTACTIVE].[QUANTITY] as [QUANTITY],
[MKTSEGMENTATIONSEGMENTACTIVE].[RESPONDERS] as [RESPONDERS],
[MKTSEGMENTATIONSEGMENTACTIVE].[RESPONSES] as [RESPONSES],
[MKTSEGMENTATIONSEGMENTACTIVE].[VARIABLECOST] as [VARIABLECOST],
[MKTSEGMENTATIONSEGMENTACTIVE].[FIXEDCOST] as [FIXEDCOST],
[MKTSEGMENTATIONSEGMENTACTIVE].[TOTALCOST] as [TOTALCOST],
cast((case when [MKTSEGMENTATIONSEGMENTACTIVE].[TOTALGIFTAMOUNT] > 0 then [MKTSEGMENTATIONSEGMENTACTIVE].[TOTALCOST] / [MKTSEGMENTATIONSEGMENTACTIVE].[TOTALGIFTAMOUNT] else 0 end) as money) as [COSTPERDOLLARRAISED],
[MKTSEGMENTATIONSEGMENTACTIVE].[TOTALGIFTAMOUNT] as [TOTALGIFTAMOUNT],
cast((case when [MKTSEGMENTATIONSEGMENTACTIVE].[RESPONSES] > 0 then [MKTSEGMENTATIONSEGMENTACTIVE].[TOTALGIFTAMOUNT] / [MKTSEGMENTATIONSEGMENTACTIVE].[RESPONSES] else 0 end) as money) as [AVERAGEGIFTAMOUNT],
cast((case when [MKTSEGMENTATIONSEGMENTACTIVE].[QUANTITY] > 0 then cast([MKTSEGMENTATIONSEGMENTACTIVE].[RESPONSES] as decimal(19,4)) / cast([MKTSEGMENTATIONSEGMENTACTIVE].[QUANTITY] as decimal(19,4)) else 0 end) as decimal(19,4)) as [RESPONSERATE],
cast((case when [MKTSEGMENTATIONACTIVE].[RESPONSERATE] > 0 then cast((case when [MKTSEGMENTATIONSEGMENTACTIVE].[QUANTITY] > 0 then (cast([MKTSEGMENTATIONSEGMENTACTIVE].[RESPONSES] as decimal(19,4)) / cast([MKTSEGMENTATIONSEGMENTACTIVE].[QUANTITY] as decimal(19,4))) * 100 else 0 end) as decimal(19,4)) / [MKTSEGMENTATIONACTIVE].[RESPONSERATE] else 0 end) as decimal(19,4)) as [LIFT],
[MKTSEGMENTATIONSEGMENTACTIVE].[ROIAMOUNT] as [ROIAMOUNT],
cast((case when [MKTSEGMENTATIONSEGMENTACTIVE].[TOTALCOST] > 0 then [MKTSEGMENTATIONSEGMENTACTIVE].[ROIAMOUNT] / [MKTSEGMENTATIONSEGMENTACTIVE].[TOTALCOST] else 0 end) as money) as [ROIPERCENT],
cast((case when [MKTSEGMENTATIONSEGMENTACTIVE].[EXPECTEDTOTALGIFTAMOUNT] > 0 then [MKTSEGMENTATIONSEGMENTACTIVE].[TOTALCOST] / [MKTSEGMENTATIONSEGMENTACTIVE].[EXPECTEDTOTALGIFTAMOUNT] else 0 end) as money) as [EXPECTEDCOSTPERDOLLARRAISED],
[MKTSEGMENTATIONSEGMENTACTIVE].[EXPECTEDRESPONDERS] as [EXPECTEDRESPONDERS],
[MKTSEGMENTATIONSEGMENT].[GIFTAMOUNT] as [EXPECTEDGIFTAMOUNT],
[MKTSEGMENTATIONSEGMENTACTIVE].[EXPECTEDTOTALGIFTAMOUNT] as [EXPECTEDTOTALGIFTAMOUNT],
([MKTSEGMENTATIONSEGMENT].[RESPONSERATE] / 100) as [EXPECTEDRESPONSERATE],
[MKTSEGMENTATIONSEGMENTACTIVE].[EXPECTEDROIAMOUNT] as [EXPECTEDROIAMOUNT],
cast((case when [MKTSEGMENTATIONSEGMENTACTIVE].[TOTALCOST] > 0 then cast([MKTSEGMENTATIONSEGMENTACTIVE].[EXPECTEDROIAMOUNT] as decimal(19,4)) / cast([MKTSEGMENTATIONSEGMENTACTIVE].[TOTALCOST] as decimal(19,4)) else 0 end) as decimal(19,4)) as [EXPECTEDROIPERCENT],
[MKTPACKAGE].[BASECURRENCYID]
from dbo.[MKTSEGMENTATIONSEGMENT]
inner join dbo.[MKTSEGMENTATION] on [MKTSEGMENTATION].[ID] = [MKTSEGMENTATIONSEGMENT].[SEGMENTATIONID]
inner join dbo.[MKTSEGMENTATIONSEGMENTACTIVE] on [MKTSEGMENTATIONSEGMENTACTIVE].[SEGMENTID] = [MKTSEGMENTATIONSEGMENT].[ID]
inner join dbo.[MKTSEGMENTATIONACTIVE] on [MKTSEGMENTATIONACTIVE].[ID] = [MKTSEGMENTATION].[ID]
inner join dbo.[MKTPACKAGE] on [MKTPACKAGE].[ID] = [MKTSEGMENTATIONSEGMENT].[PACKAGEID]
where [MKTSEGMENTATIONSEGMENT].[SEGMENTID] = @SEGMENTID
and [MKTSEGMENTATION].[ACTIVE] = 1
order by [MKTSEGMENTATION].[NAME];
return 0;