USP_EMAIL_PROCESSINGSCHEDULE_ENABLE
Enables schedule email processing.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CHANGEAGENTID | uniqueidentifier | IN | |
@GLOBALCHANGECATALOGID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_EMAIL_PROCESSINGSCHEDULE_ENABLE
(
@CHANGEAGENTID uniqueidentifier,
@GLOBALCHANGECATALOGID uniqueidentifier = null
)
as
begin
set nocount on;
-- 1. verify that the default email processes exist
declare @GCID uniqueidentifier;
declare @GLOBALCHANGEDATAFORMITEMLOCAL nvarchar(4000);
declare @SCHEDULEID uniqueidentifier;
declare @DATE date = getdate();
declare @PARAMETERSETID uniqueidentifier;
--Transactional
if ISNULL(@GLOBALCHANGECATALOGID, 'F79575E5-FE4F-47BD-954C-AB056EF109D9') = 'F79575E5-FE4F-47BD-954C-AB056EF109D9'
begin
-- 1. verify that the default email processes exist
-- add default transactional email process if it does not exist
if (select count(*) from globalchange where NAME = 'Default transactional email process' and GLOBALCHANGECATALOGID = 'F79575E5-FE4F-47BD-954C-AB056EF109D9') <> 1
begin
set @GCID = newid();
-- Add global change with default settings
set @GLOBALCHANGEDATAFORMITEMLOCAL=N'<?xml version="1.0" encoding="utf-16"?>
<DataFormItem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="bb_appfx_dataforms">
<Values>
<fv ID="JobInterval"><Value xsi:type="xsd:int">10</Value></fv>
<fv ID="JobEnabled"><Value xsi:type="xsd:boolean">false</Value></fv>
<fv ID="JobName"><Value xsi:type="xsd:string">Default transactional email process</Value></fv>
<fv ID="ScheduleFrequencySubDayType"><Value xsi:type="xsd:int">2</Value></fv>
</Values>
</DataFormItem>';
exec dbo.USP_GLOBALCHANGE_ADDINSTANCE @ID=@GCID,
@CHANGEAGENTID=@CHANGEAGENTID,
@GLOBALCHANGECATALOGID='F79575E5-FE4F-47BD-954C-AB056EF109D9',
@GLOBALCHANGEDATAFORMITEM=@GLOBALCHANGEDATAFORMITEMLOCAL,
@NAME=N'Default transactional email process',
@CURRENTAPPUSERID=null
end
-- 2. verify that schedules exist and are linked to the default processes
-- add default transactional schedule if it does not exist
if (select count(*) from dbo.GLOBALCHANGE GC
inner join dbo.BUSINESSPROCESSSCHEDULE BPS on GC.ID = BPS.BUSINESSPROCESSPARAMETERSETID
inner join dbo.SCHEDULE S on S.ID = BPS.SCHEDULEID
where GC.NAME = 'Default transactional email process' and GC.GLOBALCHANGECATALOGID = 'F79575E5-FE4F-47BD-954C-AB056EF109D9') <> 1
begin
set @SCHEDULEID = newid();
insert into dbo.SCHEDULE (ID, TYPECODE, FREQUENCY, SUBDAYFREQUENCYTYPECODE, SUBDAYFREQUENCY, SUBDAYSTARTINGTIME, SUBDAYENDINGTIME, STARTDATE)
values (@SCHEDULEID, 4, 1, 2, 60, '00:00:00', '23:59:59', @DATE);
delete from dbo.BUSINESSPROCESSSCHEDULE where ID = '148F2DF3-53E1-45D7-9A6D-A7101B616417';
set @PARAMETERSETID = (select top 1 ID from dbo.GLOBALCHANGE where GLOBALCHANGECATALOGID='F79575E5-FE4F-47BD-954C-AB056EF109D9' and NAME = 'Default transactional email process');
insert into dbo.BUSINESSPROCESSSCHEDULE (ID, BUSINESSPROCESSID, BUSINESSPROCESSPARAMETERSETID, SCHEDULEID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values ('148F2DF3-53E1-45D7-9A6D-A7101B616417', '3269A1D1-31CB-4D28-945C-B7623A3EFCCA', @PARAMETERSETID,@SCHEDULEID, @CHANGEAGENTID, @CHANGEAGENTID, @DATE, @DATE);
end
-- 3. enable transactional schedule
update dbo.SCHEDULE set ENABLED = 1
from dbo.SCHEDULE S
inner join dbo.BUSINESSPROCESSSCHEDULE BPS on BPS.SCHEDULEID = S.ID
inner join dbo.GLOBALCHANGE GC on BPS.BUSINESSPROCESSPARAMETERSETID = GC.ID
where GC.GLOBALCHANGECATALOGID in ('F79575E5-FE4F-47BD-954C-AB056EF109D9')
end
--General Purpose
if ISNULL(@GLOBALCHANGECATALOGID, '5066A489-6282-400C-96AF-1ECC1B7F281F') = '5066A489-6282-400C-96AF-1ECC1B7F281F'
begin
-- 1. verify that the default email processes exist
-- add general purpose email process if it does not exist
if (select count(*) from GLOBALCHANGE where NAME = 'Default general purpose email process' and GLOBALCHANGECATALOGID = '5066A489-6282-400C-96AF-1ECC1B7F281F') <> 1
begin
set @GCID = newid();
-- Add global change with default settings
set @GLOBALCHANGEDATAFORMITEMLOCAL = N'<?xml version="1.0" encoding="utf-16"?>
<DataFormItem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="bb_appfx_dataforms">
<Values>
<fv ID="ProcessEnterpriseEmails"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessNetCommunityEmails"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessExternalEmails"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessBlasts"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessFundraiserBlasts"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessNewsletters"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessCampaigns"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessChapter"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessPersonalPageBlasts"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessProjectAppealBlasts"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessProjectAppealSeed"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessSignupNotifications"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessDonationNotifications"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessPageSharing"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessSiteNotifications"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessECards"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessDirectMarketing"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="ProcessTest"><Value xsi:type="xsd:boolean">true</Value></fv>
<fv ID="JobInterval"><Value xsi:type="xsd:int">10</Value></fv>
<fv ID="JobEnabled"><Value xsi:type="xsd:boolean">false</Value></fv>
<fv ID="JobName"><Value xsi:type="xsd:string">Default general purpose email process</Value></fv>
<fv ID="ScheduleFrequencySubDayType"><Value xsi:type="xsd:int">2</Value></fv>
</Values>
</DataFormItem>';
exec dbo.USP_GLOBALCHANGE_ADDINSTANCE @ID=@GCID,
@CHANGEAGENTID=@CHANGEAGENTID,
@GLOBALCHANGECATALOGID='5066A489-6282-400C-96AF-1ECC1B7F281F',
@GLOBALCHANGEDATAFORMITEM=@GLOBALCHANGEDATAFORMITEMLOCAL,
@NAME=N'Default general purpose email process',
@CURRENTAPPUSERID=null
end
-- 2. verify that schedules exist and are linked to the default processes
-- add default general purpose schedule if it does not exist
if (select count(*) from dbo.GLOBALCHANGE GC
inner join dbo.BUSINESSPROCESSSCHEDULE BPS on GC.ID = BPS.BUSINESSPROCESSPARAMETERSETID
inner join dbo.SCHEDULE S on S.ID = BPS.SCHEDULEID
where GC.NAME = 'Default general purpose email process' and GC.GLOBALCHANGECATALOGID = '5066A489-6282-400C-96AF-1ECC1B7F281F') <> 1
begin
set @SCHEDULEID = newid();
insert into dbo.SCHEDULE (ID, TYPECODE, FREQUENCY, SUBDAYFREQUENCYTYPECODE, SUBDAYFREQUENCY, SUBDAYSTARTINGTIME, SUBDAYENDINGTIME, STARTDATE)
values (@SCHEDULEID, 4, 1, 2, 60, '00:00:00', '23:59:59', @DATE);
delete from dbo.BUSINESSPROCESSSCHEDULE where ID = 'C5A7E136-5F56-43EF-B4D8-D30DF710DA14';
set @PARAMETERSETID = (select top 1 ID from dbo.GLOBALCHANGE where GLOBALCHANGECATALOGID='5066A489-6282-400C-96AF-1ECC1B7F281F' and NAME = 'Default general purpose email process');
insert into dbo.BUSINESSPROCESSSCHEDULE (ID, BUSINESSPROCESSID, BUSINESSPROCESSPARAMETERSETID, SCHEDULEID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values ('C5A7E136-5F56-43EF-B4D8-D30DF710DA14', '3269A1D1-31CB-4D28-945C-B7623A3EFCCA', @PARAMETERSETID,@SCHEDULEID, @CHANGEAGENTID, @CHANGEAGENTID, @DATE, @DATE);
end
-- 3. enable general purpose schedule
update dbo.SCHEDULE set ENABLED = 1
from dbo.SCHEDULE S
inner join dbo.BUSINESSPROCESSSCHEDULE BPS on BPS.SCHEDULEID = S.ID
inner join dbo.GLOBALCHANGE GC on BPS.BUSINESSPROCESSPARAMETERSETID = GC.ID
where GC.GLOBALCHANGECATALOGID in ('5066A489-6282-400C-96AF-1ECC1B7F281F')
end
--Status
if ISNULL(@GLOBALCHANGECATALOGID,'8C3ECDB1-BE50-4898-AD1B-98ECB6D07812') = '8C3ECDB1-BE50-4898-AD1B-98ECB6D07812'
begin
-- 1. verify that the default email processes exist
-- add email status process if it does not exist
if (select count(*) from GLOBALCHANGE where NAME = 'Default status process' and GLOBALCHANGECATALOGID = '8C3ECDB1-BE50-4898-AD1B-98ECB6D07812') <> 1
begin
set @GCID = newid();
-- Add global change with default settings
set @GLOBALCHANGEDATAFORMITEMLOCAL=N'<?xml version="1.0" encoding="utf-16"?>
<DataFormItem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="bb_appfx_dataforms">
<Values>
<fv ID="JobInterval"><Value xsi:type="xsd:int">1</Value></fv>
<fv ID="JobEnabled"><Value xsi:type="xsd:boolean">false</Value></fv>
<fv ID="JobName"><Value xsi:type="xsd:string">Default status process</Value></fv>
<fv ID="ScheduleFrequencySubDayType"><Value xsi:type="xsd:int">4</Value></fv>
<fv ID="DeleteGeneralPurposeStatusOlderThan"><Value xsi:type="xsd:int">1</Value></fv>
<fv ID="DeleteGeneralPurposeIntervalType"><Value xsi:type="xsd:int">0</Value></fv>
<fv ID="DeleteTransactionalStatusOlderThan"><Value xsi:type="xsd:int">1</Value></fv>
<fv ID="DeleteTransactionalIntervalType"><Value xsi:type="xsd:int">0</Value></fv>
</Values>
</DataFormItem>';
exec dbo.USP_GLOBALCHANGE_ADDINSTANCE @ID=@GCID,
@CHANGEAGENTID=@CHANGEAGENTID,
@GLOBALCHANGECATALOGID='8C3ECDB1-BE50-4898-AD1B-98ECB6D07812',
@GLOBALCHANGEDATAFORMITEM=@GLOBALCHANGEDATAFORMITEMLOCAL,
@NAME=N'Default status process',
@CURRENTAPPUSERID=null
end
-- 2. verify that schedules exist and are linked to the default processes
-- add default email status schedule if it does not exist
if (select count(*) from GLOBALCHANGE GC
inner join dbo.BUSINESSPROCESSSCHEDULE BPS on GC.ID = BPS.BUSINESSPROCESSPARAMETERSETID
inner join dbo.SCHEDULE S on S.ID = BPS.SCHEDULEID
where GC.NAME = 'Default status process' and GC.GLOBALCHANGECATALOGID = '8C3ECDB1-BE50-4898-AD1B-98ECB6D07812') <> 1
begin
set @SCHEDULEID = newid();
insert into dbo.SCHEDULE (ID, TYPECODE, FREQUENCY, SUBDAYFREQUENCYTYPECODE, SUBDAYFREQUENCY, SUBDAYSTARTINGTIME, SUBDAYENDINGTIME, STARTDATE)
values (@SCHEDULEID, 4, 1, 2, 60, '00:00:00', '23:59:59', @DATE);
delete from dbo.BUSINESSPROCESSSCHEDULE where ID = 'F24E3368-008D-47DA-967C-6F01FF07AB5F';
set @PARAMETERSETID = (select top 1 ID from dbo.GLOBALCHANGE where GLOBALCHANGECATALOGID='8C3ECDB1-BE50-4898-AD1B-98ECB6D07812' and NAME = 'Default status process');
insert into dbo.BUSINESSPROCESSSCHEDULE (ID, BUSINESSPROCESSID, BUSINESSPROCESSPARAMETERSETID, SCHEDULEID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values ('F24E3368-008D-47DA-967C-6F01FF07AB5F', '3269A1D1-31CB-4D28-945C-B7623A3EFCCA', @PARAMETERSETID, @SCHEDULEID, @CHANGEAGENTID, @CHANGEAGENTID, @DATE, @DATE);
end
-- 3. enable status process schedule
update dbo.SCHEDULE set ENABLED = 1
from dbo.SCHEDULE S
inner join dbo.BUSINESSPROCESSSCHEDULE BPS on BPS.SCHEDULEID = S.ID
inner join dbo.GLOBALCHANGE GC on BPS.BUSINESSPROCESSPARAMETERSETID = GC.ID
where GC.GLOBALCHANGECATALOGID in ('8C3ECDB1-BE50-4898-AD1B-98ECB6D07812')
end
end