USP_DATAFORMTEMPLATE_ADD_MKTCOMMUNICATIONEFFORTFROMPLAN_PRELOAD
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@MARKETINGPLANITEMID | uniqueidentifier | IN | |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@TEMPLATES | xml | INOUT | |
@EFFORTNAME | nvarchar(100) | INOUT | |
@EFFORTBASECURRENCYID | uniqueidentifier | INOUT | |
@SITEREQUIRED | bit | INOUT | |
@APPEALINFORMATION | xml | INOUT | |
@PLANPATH | nvarchar(405) | INOUT | |
@EFFORTSITEID | uniqueidentifier | INOUT | |
@EFFORTLAUNCHDATE | datetime | INOUT | |
@ISBBEC | bit | INOUT |
Definition
Copy
CREATE procedure dbo.[USP_DATAFORMTEMPLATE_ADD_MKTCOMMUNICATIONEFFORTFROMPLAN_PRELOAD]
(
@MARKETINGPLANITEMID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier = null,
@TEMPLATES xml = null output,
@EFFORTNAME nvarchar(100) = null output,
@EFFORTBASECURRENCYID uniqueidentifier = null output,
@SITEREQUIRED bit = null output,
@APPEALINFORMATION xml = null output,
@PLANPATH nvarchar(405) = null output,
@EFFORTSITEID uniqueidentifier = null output,
@EFFORTLAUNCHDATE datetime = null output,
@ISBBEC bit = null output
)
as
set nocount on;
declare @PLANSOURCECODEID uniqueidentifier;
select top 1
@PLANSOURCECODEID = [MKTMARKETINGPLANITEM].[SOURCECODEID],
@PLANPATH = dbo.[UFN_MKTMARKETINGPLANITEM_PATH]([MKTMARKETINGPLANITEM].[ID], 1),
@EFFORTLAUNCHDATE = [MKTMARKETINGPLANITEM].[MAILDATE],
@EFFORTSITEID = [MKTMARKETINGPLAN].[SITEID],
@EFFORTBASECURRENCYID = [MKTMARKETINGPLANITEM].[BASECURRENCYID],
@EFFORTNAME = [MKTMARKETINGPLANITEM].[NAME]
from dbo.[MKTMARKETINGPLANITEM]
inner join dbo.[MKTMARKETINGPLAN] on [MKTMARKETINGPLAN].[ID] = [MKTMARKETINGPLANITEM].[MARKETINGPLANID]
where dbo.[MKTMARKETINGPLANITEM].[ID] = @MARKETINGPLANITEMID;
set @TEMPLATES = (
select
[MKTCOMMUNICATIONTEMPLATE].[ID] as '@ID',
[MKTCOMMUNICATIONTEMPLATE].[NAME] as '@NAME'
from
dbo.[MKTCOMMUNICATIONTEMPLATE]
inner join dbo.[MKTCOMMUNICATIONTEMPLATEDEFAULT] on [MKTCOMMUNICATIONTEMPLATE].[ID] = [MKTCOMMUNICATIONTEMPLATEDEFAULT].[COMMUNICATIONTEMPLATEID]
where [MKTCOMMUNICATIONTEMPLATE].[ISACTIVE] = 1 and
[MKTCOMMUNICATIONTEMPLATE].[MKTSEGMENTATIONID] is null and
[MKTCOMMUNICATIONTEMPLATE].[PARENTCOMMUNICATIONTEMPLATEID] is null
and [MKTCOMMUNICATIONTEMPLATE].[BASECURRENCYID] = @EFFORTBASECURRENCYID
and [MKTCOMMUNICATIONTEMPLATE].[TEMPLATETYPECODE] = 0
and (
--Planner does not specify source code, so return all templates
(@PLANSOURCECODEID is null)
or
--Template does not lock source code so return this template
([MKTCOMMUNICATIONTEMPLATEDEFAULT].[SOURCECODELOCKED] = 0)
or
--Template locks source code so only return template if the source code matches the planner source code
([MKTCOMMUNICATIONTEMPLATEDEFAULT].[SOURCECODELOCKED] = 1 and ([MKTCOMMUNICATIONTEMPLATEDEFAULT].[SOURCECODEID] = @PLANSOURCECODEID or ([MKTCOMMUNICATIONTEMPLATEDEFAULT].[SOURCECODEID] is null and @PLANSOURCECODEID is null)))
)
and (
dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1
or exists (
select
1
from
dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,'be893a33-88f1-49e4-9404-1b5d4df90ebd',1) as [SITESFORUSERONFEATURE]
where
[SITESFORUSERONFEATURE].[SITEID]=[MKTCOMMUNICATIONTEMPLATE].[SITEID]
or ([SITESFORUSERONFEATURE].[SITEID] is null and [MKTCOMMUNICATIONTEMPLATE].[SITEID] is null)
)
)
order by [MKTCOMMUNICATIONTEMPLATE].[NAME]
for xml path('ITEM'),root('TEMPLATES'),elements,binary base64
)
set @SITEREQUIRED = dbo.[UFN_SITEREQUIREDFORUSERONFEATURE](@CURRENTAPPUSERID, 'be893a33-88f1-49e4-9404-1b5d4df90ebd', 1);
--Get appeal search catalog IDs with the record source name
set @APPEALINFORMATION = (
select
[MKTAPPEALRECORDSOURCE].[ID] as [RECORDSOURCEID],
[QUERYVIEWCATALOG].[DISPLAYNAME] as [RECORDSOURCENAME],
[MKTAPPEALRECORDSOURCE].[SEARCHLISTCATALOGID] as [SEARCHLISTCATALOGID],
[MKTAPPEALRECORDSOURCE].[DESCRIPTIONFIELD] as [SEARCHLISTDESCRIPTIONFIELD]
from dbo.[MKTAPPEALRECORDSOURCE]
inner join QUERYVIEWCATALOG on [MKTAPPEALRECORDSOURCE].[ID] = [QUERYVIEWCATALOG].[ID]
where dbo.[UFN_MKTRECORDSOURCE_VALIDFORPRODUCT]([QUERYVIEWCATALOG].[ID]) = 1
for xml raw('ITEM'), type, elements, root('APPEALINFORMATION'), binary base64);
set @ISBBEC = (case when dbo.[UFN_INSTALLEDPRODUCTS_PRODUCTIS]('BB9873D7-F1ED-430A-8AB4-F09F47056538') = 0 then 1 else 0 end);
return 0;