USP_DATAFORMTEMPLATE_ADD_MKTSEGMENTATIONFROMPLAN_PRELOAD
The load procedure used by the edit dataform template "Marketing Effort From Marketing Plan Add Form"
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@MARKETINGPLANITEMID | uniqueidentifier | IN | Input parameter indicating the context ID for the record being added. |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@CODE | nvarchar(10) | INOUT | Code |
@NAME | nvarchar(100) | INOUT | Name |
@PLANPATH | nvarchar(405) | INOUT | Plan |
@SOURCECODEID | uniqueidentifier | INOUT | Source code |
@MAILDATE | datetime | INOUT | Date |
@HOUSEHOLDINGTYPECODE | tinyint | INOUT | Include |
@ENABLEHOUSEHOLDING | bit | INOUT | Enable householding? |
@SITEID | uniqueidentifier | INOUT | Site |
@SITEREQUIRED | bit | INOUT | Site required? |
@MAILINGTYPECODE | tinyint | INOUT | Marketing effort type |
@ISBBEC | bit | INOUT | Is BBEC? |
@EXCLUSIONS | xml | INOUT | Exclusions |
@ADDRESSPROCESSINGOPTIONID | uniqueidentifier | INOUT | Address processing options |
@NAMEFORMATPARAMETERID | uniqueidentifier | INOUT | Name format options |
@CANUPDATEEXCLUDEDECEASED | bit | INOUT | Can update exclude deceased constituents? |
@CANUPDATEEXCLUDEINACTIVE | bit | INOUT | Can update exclude inactive constituents? |
@ACTIVATIONKPIS | xml | INOUT | Activation KPIs |
@APPEALINFORMATION | xml | INOUT | Appeal information including the appeal searchlist and record source. |
@HOUSEHOLDINGONERECORDPERHOUSEHOLD | bit | INOUT | Send to one person per household |
@CODEVALUEID | uniqueidentifier | INOUT | Code value ID |
@BASECURRENCYID | uniqueidentifier | INOUT | Base currency ID |
@EXPORTDEFINITIONRECORDTYPE | nvarchar(50) | INOUT | Export definition record type |
@EXPORTDEFINITIONRECORDTYPEID | uniqueidentifier | INOUT | Export definition record type ID |
@EXPORTDEFINITIONQUERYVIEWID | uniqueidentifier | INOUT | Export definition query view ID |
@SMARTQUERIESEXIST | bit | INOUT | |
@ITEMLIST | xml | INOUT |
Definition
Copy
CREATE procedure dbo.[USP_DATAFORMTEMPLATE_ADD_MKTSEGMENTATIONFROMPLAN_PRELOAD]
(
@MARKETINGPLANITEMID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier,
@CODE nvarchar(10) = null output,
@NAME nvarchar(100) = null output,
@PLANPATH nvarchar(405) = null output,
@SOURCECODEID uniqueidentifier = null output,
@MAILDATE datetime = null output,
@HOUSEHOLDINGTYPECODE tinyint = null output,
@ENABLEHOUSEHOLDING bit = null output,
@SITEID uniqueidentifier = null output,
@SITEREQUIRED bit = null output,
@MAILINGTYPECODE tinyint = null output,
@ISBBEC bit = null output,
@EXCLUSIONS xml = null output,
@ADDRESSPROCESSINGOPTIONID uniqueidentifier = null output,
@NAMEFORMATPARAMETERID uniqueidentifier = null output,
@CANUPDATEEXCLUDEDECEASED bit = null output,
@CANUPDATEEXCLUDEINACTIVE bit = null output,
@ACTIVATIONKPIS xml = null output,
@APPEALINFORMATION xml = null output,
@HOUSEHOLDINGONERECORDPERHOUSEHOLD bit = null output,
@CODEVALUEID uniqueidentifier = null output,
@BASECURRENCYID uniqueidentifier = null output,
@EXPORTDEFINITIONRECORDTYPE nvarchar(50) = null output,
@EXPORTDEFINITIONRECORDTYPEID uniqueidentifier = null output,
@EXPORTDEFINITIONQUERYVIEWID uniqueidentifier = null output,
@SMARTQUERIESEXIST bit = null output,
@ITEMLIST xml = null output
)
as
set nocount on;
select TOP 1
@NAME = [MKTMARKETINGPLANITEM].[NAME],
@CODE = [MKTMARKETINGPLANITEM].[CODE],
@CODEVALUEID = [MKTMARKETINGPLANITEM].[PARTDEFINITIONVALUESID],
@SOURCECODEID = [MKTMARKETINGPLANITEM].[SOURCECODEID],
@PLANPATH = dbo.[UFN_MKTMARKETINGPLANITEM_PATH]([MKTMARKETINGPLANITEM].[ID], 1),
@MAILDATE = [MKTMARKETINGPLANITEM].[MAILDATE],
@SITEID = [MKTMARKETINGPLAN].[SITEID],
@BASECURRENCYID = [MKTMARKETINGPLANITEM].[BASECURRENCYID],
@ITEMLIST = dbo.[UFN_MKTPLANSOURCECODEPART_GETITEMLIST_TOITEMLISTXML]([MKTMARKETINGPLANITEM].[ID])
from dbo.[MKTMARKETINGPLANITEM]
inner join dbo.[MKTMARKETINGPLAN] on [MKTMARKETINGPLAN].[ID] = [MKTMARKETINGPLANITEM].[MARKETINGPLANID]
where dbo.[MKTMARKETINGPLANITEM].[ID] = @MARKETINGPLANITEMID;
select
@ENABLEHOUSEHOLDING = (case when sum(case when isnull([MKTRECORDSOURCEFIELDMAPPINGS].[HOUSEHOLDIDFIELD],'') = '' then 0 else 1 end) = 0 then 0 else 1 end)
from dbo.[MKTRECORDSOURCE]
left join dbo.[MKTRECORDSOURCEFIELDMAPPINGS] on [MKTRECORDSOURCEFIELDMAPPINGS].[ID] = [MKTRECORDSOURCE].[ID]
where dbo.[UFN_MKTRECORDSOURCE_VALIDFORPRODUCT]([MKTRECORDSOURCE].[ID]) = 1;
--If householding is enabled, then default to only mail one person per household...
set @HOUSEHOLDINGTYPECODE = (case when @ENABLEHOUSEHOLDING = 1 then 1 else 0 end);
set @HOUSEHOLDINGONERECORDPERHOUSEHOLD = @ENABLEHOUSEHOLDING;
set @MAILINGTYPECODE = 0;
set @SITEREQUIRED = dbo.[UFN_SITEREQUIREDFORUSERONFEATURE](@CURRENTAPPUSERID, '44411772-B68C-4281-9C34-B5B936A0A2BC', 1);
set @ISBBEC = (case when dbo.[UFN_INSTALLEDPRODUCTS_PRODUCTIS]('BB9873D7-F1ED-430A-8AB4-F09F47056538') = 0 then 1 else 0 end);
set @EXCLUSIONS = dbo.[UFN_MKTSEGMENTATION_GETREQUIREDANDDEFAULTSOLICITCODEEXCLUSIONS_TOITEMLISTXML](@CURRENTAPPUSERID);
set @SMARTQUERIESEXIST = dbo.[UFN_MKTSELECTION_SMARTQUERIESEXIST](1);
set @CANUPDATEEXCLUDEDECEASED = 1;
set @CANUPDATEEXCLUDEINACTIVE = 1;
if dbo.[UFN_APPUSER_ISSYSADMIN](@CURRENTAPPUSERID) = 0
begin
set @CANUPDATEEXCLUDEDECEASED = dbo.UFN_SECURITY_APPUSER_GRANTED_SYSTEMPRIVILEGE_IN_SYSTEMROLE(@CURRENTAPPUSERID, '2EEC593D-06B1-49E0-9031-A4076B07081C');
set @CANUPDATEEXCLUDEINACTIVE = dbo.UFN_SECURITY_APPUSER_GRANTED_SYSTEMPRIVILEGE_IN_SYSTEMROLE(@CURRENTAPPUSERID, 'C0E02A6F-DF46-460C-ACA2-CC31C9C11BFC');
end;
select top 1
@ADDRESSPROCESSINGOPTIONID = [ID]
from
dbo.[ADDRESSPROCESSINGOPTION]
where
[ISDEFAULT] = 1 and
dbo.[UFN_SITEALLOWEDFORUSER](@CURRENTAPPUSERID, [SITEID]) = 1;
select top 1
@NAMEFORMATPARAMETERID = [ID]
from
dbo.[NAMEFORMATPARAMETER]
where
[ISDEFAULT] = 1 and
dbo.[UFN_SITEALLOWEDFORUSER](@CURRENTAPPUSERID, [SITEID]) = 1;
-- Load KPI values
declare @KPITABLE as table
(
[KPICATALOGID] uniqueidentifier,
[SELECTED] bit,
[NAME] nvarchar(255),
[GOALTYPECODE] tinyint,
[DEFAULT] bit
);
insert into @KPITABLE
exec dbo.[USP_MKTSEGMENTATIONACTIVATEKPI_GETDEFAULTS] @MAILINGTYPECODE, @CURRENTAPPUSERID;
set @ACTIVATIONKPIS = (
select
[KPICATALOGID],
[SELECTED],
[NAME],
[GOALTYPECODE],
[DEFAULT]
from @KPITABLE
for xml raw('ITEM'), type, elements, root('ACTIVATIONKPIS'), binary base64);
--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 @EXPORTDEFINITIONRECORDTYPE = dbo.[UFN_MKTEXPORTDEFINITION_GETRECORDTYPEFROMMAILINGTYPECODE](@MAILINGTYPECODE);
set @EXPORTDEFINITIONRECORDTYPEID = dbo.[UFN_MKTEXPORTDEFINITION_GETRECORDTYPEIDFROMMAILINGTYPECODE](@MAILINGTYPECODE);
set @EXPORTDEFINITIONQUERYVIEWID = dbo.[UFN_MKTEXPORTDEFINITION_GETQUERYVIEWIDFROMMAILINGTYPECODE](@MAILINGTYPECODE);
return 0;