UFN_COMMUNICATION_GETLETTERS
Returns all communication letters associated with a given communication.
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@COMMUNICATIONID | uniqueidentifier | IN | |
@COMMUNICATIONTYPECODE | tinyint | IN |
Definition
Copy
CREATE function dbo.UFN_COMMUNICATION_GETLETTERS
(
@COMMUNICATIONID uniqueidentifier,
@COMMUNICATIONTYPECODE tinyint
)
returns table as
return (
-- @COMMINICATIONTYPECODE - enum from MKTSegmentation table and CommunicationLetter table
-- 0 - Direct marketing effort
-- 1 - Appeal mailing
-- 2 - Event invitation
-- 3 - Acknowledgement
select
COMMUNICATIONLETTER.ID,
COMMUNICATIONLETTER.SEQUENCE,
COMMUNICATIONLETTER.NAME,
COMMUNICATIONLETTER.CHANNELCODE,
COMMUNICATIONLETTER.CHANNELPREFERENCECODE,
COMMUNICATIONLETTER.INCLUDEINACTIVE,
COMMUNICATIONLETTER.MKTASKLADDERID,
coalesce(MAILPACKAGE.EXPORTDEFINITIONID, dbo.UFN_COMMUNICATIONLETTER_GETDEFAULTEXPORTDEFINITIONID(@COMMUNICATIONTYPECODE, 0)) as MAILEXPORTDEFINITIONID,
COMMUNICATIONLETTER.MAILCONTENTHTML,
coalesce(EMAILPACKAGE.EXPORTDEFINITIONID, dbo.UFN_COMMUNICATIONLETTER_GETDEFAULTEXPORTDEFINITIONID(@COMMUNICATIONTYPECODE, 1)) as EMAILEXPORTDEFINITIONID,
COMMUNICATIONLETTER.EMAILCONTENTHTML,
COMMUNICATIONLETTER.EMAILSUBJECT,
COMMUNICATIONLETTER.EMAILFROMADDRESS,
COMMUNICATIONLETTER.EMAILFROMDISPLAYNAME,
COMMUNICATIONLETTER.EMAILREPLYTOADDRESS,
COMMUNICATIONLETTER.PAPERSIZECODE,
COMMUNICATIONLETTER.MARGINTOP,
COMMUNICATIONLETTER.MARGINBOTTOM,
COMMUNICATIONLETTER.MARGINLEFT,
COMMUNICATIONLETTER.MARGINRIGHT,
COMMUNICATIONLETTER.MAILPACKAGEID,
COMMUNICATIONLETTER.MAILSEGMENTID,
COMMUNICATIONLETTER.EMAILPACKAGEID,
COMMUNICATIONLETTER.EMAILSEGMENTID,
cast(dbo.UFN_COMMUNICATIONLETTER_GETINCLUDEDSELECTIONS_TOITEMLISTXML(COMMUNICATIONLETTER.ID) as nvarchar(max)) as SELECTIONSXML,
cast(dbo.UFN_COMMUNICATIONLETTER_GETEXCLUDEDSELECTIONS_TOITEMLISTXML(COMMUNICATIONLETTER.ID) as nvarchar(max)) as EXCLUDEDSELECTIONSXML,
cast(dbo.UFN_COMMUNICATIONLETTER_GETEXCLUDEDSOLICITCODES_TOITEMLISTXML(COMMUNICATIONLETTER.ID) as nvarchar(max)) as EXCLUDEDSOLICITCODESXML,
COMMUNICATIONLETTERACTIVITYEXCLUSIONS.EXCLUDEBASEDONRECENTCOMMUNICATION,
COMMUNICATIONLETTERACTIVITYEXCLUSIONS.NUMRECENTCOMMUNICATIONPERIODS,
COMMUNICATIONLETTERACTIVITYEXCLUSIONS.RECENTCOMMUNICATIONPERIODTYPECODE,
COMMUNICATIONLETTERACTIVITYEXCLUSIONS.EXCLUDEBASEDONTOTALCOMMUNICATIONSINPASTYEAR,
COMMUNICATIONLETTERACTIVITYEXCLUSIONS.NUMTOTALCOMMUNICATIONSINPASTYEAR,
COMMUNICATIONLETTERACTIVITYEXCLUSIONS.EXCLUDEBASEDONRECENTGIVING,
COMMUNICATIONLETTERACTIVITYEXCLUSIONS.NUMRECENTGIVINGPERIODS,
COMMUNICATIONLETTERACTIVITYEXCLUSIONS.RECENTGIVINGPERIODTYPECODE,
COMMUNICATIONLETTERACTIVITYEXCLUSIONS.EXCLUDEBASEDONTOTALGIVINGINPASTYEAR,
COMMUNICATIONLETTERACTIVITYEXCLUSIONS.TOTALREVENUEAMOUNTINPASTYEAR,
cast(dbo.UFN_COMMUNICATIONLETTERACTIVITYEXCLUSION_GETCOMMUNICATIONTYPES_TOITEMLISTXML(COMMUNICATIONLETTERACTIVITYEXCLUSIONS.ID) as nvarchar(max)) as COMMUNICATIONTYPESXML,
COMMUNICATIONLETTER.OUTPUTTYPECODE,
COMMUNICATIONLETTER.RUNNOW,
COMMUNICATIONLETTER.RUNSCHEDULED
from dbo.COMMUNICATIONLETTER
left outer join dbo.APPEALMAILINGSETUP
on COMMUNICATIONLETTER.SEGMENTATIONID = APPEALMAILINGSETUP.ID
left outer join dbo.COMMUNICATIONLETTERACTIVITYEXCLUSIONS
on COMMUNICATIONLETTER.ID = COMMUNICATIONLETTERACTIVITYEXCLUSIONS.COMMUNICATIONLETTERID
left outer join dbo.MKTPACKAGE MAILPACKAGE
on COMMUNICATIONLETTER.MAILPACKAGEID = MAILPACKAGE.ID
left outer join dbo.MKTPACKAGE EMAILPACKAGE
on COMMUNICATIONLETTER.EMAILPACKAGEID = EMAILPACKAGE.ID
where SEGMENTATIONID = @COMMUNICATIONID
)