USP_DATAFORMTEMPLATE_EDIT_MKTCOMMUNICATIONTEMPLATE

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN
@CURRENTAPPUSERID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@NAME nvarchar(100) IN
@DESCRIPTION nvarchar(255) IN
@SITEID uniqueidentifier IN
@TEMPLATETYPECODE tinyint IN
@OVERRIDEASKLADDERS bit IN
@OVERRIDEAPPEALBUSINESSUNITS bit IN
@INCLUDESEEDS bit IN
@ISACTIVE bit IN
@COMMUNICATIONNAMESCHEMEID uniqueidentifier IN
@DESCRIPTIONDEFAULT nvarchar(255) IN
@DESCRIPTIONLOCKED bit IN
@APPEALINFORMATION xml IN
@APPEALLOCKED bit IN
@CHANNELCODEDEFAULT tinyint IN
@CHANNELCODELOCKED bit IN
@ALLOWRESERVINGFINDERNUMBERS bit IN
@ALLOWRESERVINGFINDERNUMBERSLOCKED bit IN
@ALLOWSPECIFYBUDGET bit IN
@ALLOWSPECIFYBUDGETLOCKED bit IN
@ALLOWEXCLUDEPREVIOUSEFFORTS bit IN
@ALLOWEXCLUDEPREVIOUSEFFORTSLOCKED bit IN
@SOURCECODEIDDEFAULT uniqueidentifier IN
@SOURCECODELOCKED bit IN
@MAILEXPORTDEFINITIONID uniqueidentifier IN
@MAILEXPORTDEFINITIONIDLOCKED bit IN
@PHONEEXPORTDEFINITIONID uniqueidentifier IN
@PHONEEXPORTDEFINITIONIDLOCKED bit IN
@EMAILEXPORTDEFINITIONID uniqueidentifier IN
@EMAILEXPORTDEFINITIONIDLOCKED bit IN
@EXPORTDESCRIPTION nvarchar(255) IN
@EXPORTDESCRIPTIONLOCKED bit IN
@CURRENCYSYMBOLDISPLAYSETTINGCODE tinyint IN
@CURRENCYSYMBOLDISPLAYSETTINGCODELOCKED bit IN
@CURRENCYDECIMALDIGITSDISPLAYSETTINGCODE tinyint IN
@CURRENCYDECIMALDIGITSDISPLAYSETTINGCODELOCKED bit IN
@CURRENCYDECIMALDIGITS int IN
@CURRENCYGROUPSEPARATORDISPLAYSETTINGCODE tinyint IN
@CURRENCYGROUPSEPARATORDISPLAYSETTINGCODELOCKED bit IN
@CURRENCYGROUPSEPARATOR nvarchar(4) IN
@CURRENCYDECIMALSEPARATORDISPLAYSETTINGCODE tinyint IN
@CURRENCYDECIMALSEPARATORDISPLAYSETTINGCODELOCKED bit IN
@CURRENCYDECIMALSEPARATOR nvarchar(4) IN
@DATEFORMAT nvarchar(50) IN
@DATEFORMATLOCKED bit IN
@FUZZYDATEFORMAT nvarchar(50) IN
@FUZZYDATEFORMATLOCKED bit IN
@MONTHDAYFORMAT nvarchar(50) IN
@MONTHDAYFORMATLOCKED bit IN
@HOURMINUTEFORMAT nvarchar(50) IN
@HOURMINUTEFORMATLOCKED bit IN
@CSVLINEBREAKCODE tinyint IN
@CSVLINEBREAKCODELOCKED bit IN
@RUNSEGMENTATIONSEGMENTREFRESHPROCESS bit IN
@RUNSEGMENTATIONSEGMENTREFRESHPROCESSLOCKED bit IN
@RUNMARKETINGEXCLUSIONSREPORT bit IN
@RUNMARKETINGEXCLUSIONSREPORTLOCKED bit IN
@CACHESOURCEANALYSISRULEDATA bit IN
@CACHESOURCEANALYSISRULEDATALOCKED bit IN
@RUNSEGMENTATIONSEGMENTCALCULATEPROCESS bit IN
@RUNSEGMENTATIONSEGMENTREFRESHPROCESSACTIVATE bit IN
@RUNMARKETINGEXCLUSIONSREPORTACTIVATE bit IN
@CACHESOURCEANALYSISRULEDATAACTIVATE bit IN
@ACTIVATEOPTIONSLOCKED bit IN
@EXPORTAFTERACTIVATE bit IN
@EXPORTAFTERACTIVATELOCKED bit IN
@USEADDRESSPROCESSING bit IN
@ADDRESSPROCESSINGOPTIONID uniqueidentifier IN
@NAMEFORMATPARAMETERID uniqueidentifier IN
@ADDRESSPROCESSINGOPTIONSEASONALASOFDATETYPECODE tinyint IN
@ADDRESSPROCESSINGOPTIONSEASONALASOFDATE datetime IN
@ADDRESSPROCESSINGLOCKED bit IN
@HOUSEHOLDINGTYPECODE tinyint IN
@HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS bit IN
@HOUSEHOLDINGONERECORDPERHOUSEHOLD bit IN
@HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD bit IN
@HOUSEHOLDINGLOCKED bit IN
@DEFAULTKPIS xml IN
@KPISLOCKED bit IN
@INCLUDESELECTIONS xml IN
@INCLUDESELECTIONSLOCKED bit IN
@EXCLUDESELECTIONS xml IN
@EXCLUDESELECTIONSLOCKED bit IN
@EXCLUDEDECEASED bit IN
@EXCLUDEDECEASEDLOCKED bit IN
@EXCLUDEINACTIVE bit IN
@EXCLUDEINACTIVELOCKED bit IN
@EXCLUSIONASOFDATE datetime IN
@EXCLUSIONDATETYPECODE tinyint IN
@EXCLUSIONASOFDATELOCKED bit IN
@EXCLUSIONS xml IN
@EXCLUSIONSLOCKED bit IN
@ASKLADDEROVERRIDES xml IN
@ASKLADDEROVERRIDESLOCKED bit IN
@SEEDS xml IN
@SEEDSLOCKED bit IN
@BUSINESSUNITS xml IN
@BUSINESSUNITSLOCKED bit IN
@CACHESOURCEANALYSISRULEDATAACTIVATELOCKED bit IN
@ALLOWEFFORTBUSINESSUNITSOVERRIDE bit IN
@ALLOWEFFORTADDRESSPROCESSINGOVERRIDE bit IN

Definition

Copy


CREATE procedure dbo.[USP_DATAFORMTEMPLATE_EDIT_MKTCOMMUNICATIONTEMPLATE]
(
  @ID uniqueidentifier,
  @CURRENTAPPUSERID uniqueidentifier,
  @CHANGEAGENTID uniqueidentifier = null,
  @NAME nvarchar(100),
  @DESCRIPTION nvarchar(255),
  @SITEID uniqueidentifier,
  @TEMPLATETYPECODE tinyint,
  @OVERRIDEASKLADDERS bit,
  @OVERRIDEAPPEALBUSINESSUNITS bit,
  @INCLUDESEEDS bit,
  @ISACTIVE bit,
  @COMMUNICATIONNAMESCHEMEID uniqueidentifier,
  @DESCRIPTIONDEFAULT nvarchar(255),
  @DESCRIPTIONLOCKED bit,
  @APPEALINFORMATION xml,
  @APPEALLOCKED bit,
  @CHANNELCODEDEFAULT tinyint,
  @CHANNELCODELOCKED bit,
  @ALLOWRESERVINGFINDERNUMBERS bit,
  @ALLOWRESERVINGFINDERNUMBERSLOCKED bit,
  @ALLOWSPECIFYBUDGET bit,
  @ALLOWSPECIFYBUDGETLOCKED bit,
  @ALLOWEXCLUDEPREVIOUSEFFORTS bit,
  @ALLOWEXCLUDEPREVIOUSEFFORTSLOCKED bit,
  @SOURCECODEIDDEFAULT uniqueidentifier,
  @SOURCECODELOCKED bit,
  @MAILEXPORTDEFINITIONID uniqueidentifier,
  @MAILEXPORTDEFINITIONIDLOCKED bit,
  @PHONEEXPORTDEFINITIONID uniqueidentifier,
  @PHONEEXPORTDEFINITIONIDLOCKED bit,
  @EMAILEXPORTDEFINITIONID uniqueidentifier,
  @EMAILEXPORTDEFINITIONIDLOCKED bit,
  @EXPORTDESCRIPTION nvarchar(255),
  @EXPORTDESCRIPTIONLOCKED bit,
  @CURRENCYSYMBOLDISPLAYSETTINGCODE tinyint,
  @CURRENCYSYMBOLDISPLAYSETTINGCODELOCKED bit,
  @CURRENCYDECIMALDIGITSDISPLAYSETTINGCODE tinyint,
  @CURRENCYDECIMALDIGITSDISPLAYSETTINGCODELOCKED bit,
  @CURRENCYDECIMALDIGITS int,
  @CURRENCYGROUPSEPARATORDISPLAYSETTINGCODE tinyint,
  @CURRENCYGROUPSEPARATORDISPLAYSETTINGCODELOCKED bit,
  @CURRENCYGROUPSEPARATOR nvarchar(4),
  @CURRENCYDECIMALSEPARATORDISPLAYSETTINGCODE tinyint,
  @CURRENCYDECIMALSEPARATORDISPLAYSETTINGCODELOCKED bit,
  @CURRENCYDECIMALSEPARATOR nvarchar(4),
  @DATEFORMAT nvarchar(50),
  @DATEFORMATLOCKED bit,
  @FUZZYDATEFORMAT nvarchar(50),
  @FUZZYDATEFORMATLOCKED bit,
  @MONTHDAYFORMAT nvarchar(50),
  @MONTHDAYFORMATLOCKED bit,
  @HOURMINUTEFORMAT nvarchar(50),
  @HOURMINUTEFORMATLOCKED bit,
  @CSVLINEBREAKCODE tinyint,
  @CSVLINEBREAKCODELOCKED bit,
  @RUNSEGMENTATIONSEGMENTREFRESHPROCESS bit,
  @RUNSEGMENTATIONSEGMENTREFRESHPROCESSLOCKED bit,
  @RUNMARKETINGEXCLUSIONSREPORT bit,
  @RUNMARKETINGEXCLUSIONSREPORTLOCKED bit,
  @CACHESOURCEANALYSISRULEDATA bit,
  @CACHESOURCEANALYSISRULEDATALOCKED bit,
  @RUNSEGMENTATIONSEGMENTCALCULATEPROCESS bit,
  @RUNSEGMENTATIONSEGMENTREFRESHPROCESSACTIVATE bit,
  @RUNMARKETINGEXCLUSIONSREPORTACTIVATE bit,
  @CACHESOURCEANALYSISRULEDATAACTIVATE bit,
  @ACTIVATEOPTIONSLOCKED bit,
  @EXPORTAFTERACTIVATE bit,
  @EXPORTAFTERACTIVATELOCKED bit,
  @USEADDRESSPROCESSING bit,
  @ADDRESSPROCESSINGOPTIONID uniqueidentifier,
  @NAMEFORMATPARAMETERID uniqueidentifier,
  @ADDRESSPROCESSINGOPTIONSEASONALASOFDATETYPECODE tinyint,
  @ADDRESSPROCESSINGOPTIONSEASONALASOFDATE datetime,
  @ADDRESSPROCESSINGLOCKED bit,
  @HOUSEHOLDINGTYPECODE tinyint,
  @HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS bit,
  @HOUSEHOLDINGONERECORDPERHOUSEHOLD bit,
  @HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD bit,
  @HOUSEHOLDINGLOCKED bit,
  @DEFAULTKPIS xml,
  @KPISLOCKED bit,
  @INCLUDESELECTIONS xml,
  @INCLUDESELECTIONSLOCKED bit,
  @EXCLUDESELECTIONS xml,
  @EXCLUDESELECTIONSLOCKED bit,
  @EXCLUDEDECEASED bit,
  @EXCLUDEDECEASEDLOCKED bit,
  @EXCLUDEINACTIVE bit,
  @EXCLUDEINACTIVELOCKED bit,
  @EXCLUSIONASOFDATE datetime,
  @EXCLUSIONDATETYPECODE tinyint,
  @EXCLUSIONASOFDATELOCKED bit,
  @EXCLUSIONS xml,
  @EXCLUSIONSLOCKED bit,
  @ASKLADDEROVERRIDES xml,
  @ASKLADDEROVERRIDESLOCKED bit,
  @SEEDS xml,
  @SEEDSLOCKED bit,
  @BUSINESSUNITS xml,
  @BUSINESSUNITSLOCKED bit,
  @CACHESOURCEANALYSISRULEDATAACTIVATELOCKED bit,
  @ALLOWEFFORTBUSINESSUNITSOVERRIDE bit,
  @ALLOWEFFORTADDRESSPROCESSINGOVERRIDE bit
)
as
  set nocount on;

  declare @CURRENTDATE datetime = getdate();
  declare @BUSINESSPROCESSEXPORTFORMATID uniqueidentifier;

  if @USEADDRESSPROCESSING = 0
    begin
      set @ADDRESSPROCESSINGOPTIONID = null;
      set @NAMEFORMATPARAMETERID = null;
      set @ADDRESSPROCESSINGOPTIONSEASONALASOFDATETYPECODE = 0;
      set @ADDRESSPROCESSINGOPTIONSEASONALASOFDATE = null;
    end;

  if @OVERRIDEAPPEALBUSINESSUNITS = 0
    set @ALLOWEFFORTBUSINESSUNITSOVERRIDE = 0;

  begin try

    select 
      @BUSINESSPROCESSEXPORTFORMATID = [BUSINESSPROCESSEXPORTFORMATID] 
    from dbo.[MKTCOMMUNICATIONTEMPLATEDEFAULT] 
    where [COMMUNICATIONTEMPLATEID] = @ID;

    update dbo.[MKTCOMMUNICATIONTEMPLATE] set
      [NAME] = @NAME,
      [DESCRIPTION] = @DESCRIPTION,
      [SITEID] = @SITEID,
      [TEMPLATETYPECODE] = @TEMPLATETYPECODE,
      [OVERRIDEASKLADDERS] = @OVERRIDEASKLADDERS,
      [OVERRIDEAPPEALBUSINESSUNITS] = @OVERRIDEAPPEALBUSINESSUNITS,
      [ALLOWEFFORTBUSINESSUNITSOVERRIDE] = @ALLOWEFFORTBUSINESSUNITSOVERRIDE,
      [ALLOWEFFORTADDRESSPROCESSINGOVERRIDE] = @ALLOWEFFORTADDRESSPROCESSINGOVERRIDE,
      [INCLUDESEEDS] = @INCLUDESEEDS,
      [ISACTIVE] = @ISACTIVE,
      [CHANGEDBYID] = @CHANGEAGENTID,
      [DATECHANGED] = @CURRENTDATE
    where [ID] = @ID;

    update dbo.[BUSINESSPROCESSEXPORTFORMAT] set
      [CURRENCYSYMBOLDISPLAYSETTINGCODE] = @CURRENCYSYMBOLDISPLAYSETTINGCODE,
      [CURRENCYDECIMALDIGITSDISPLAYSETTINGCODE] = @CURRENCYDECIMALDIGITSDISPLAYSETTINGCODE,
      [CURRENCYDECIMALDIGITS] = @CURRENCYDECIMALDIGITS,
      [CURRENCYGROUPSEPARATORDISPLAYSETTINGCODE] = @CURRENCYGROUPSEPARATORDISPLAYSETTINGCODE,
      [CURRENCYGROUPSEPARATOR] = @CURRENCYGROUPSEPARATOR,
      [CURRENCYDECIMALSEPARATORDISPLAYSETTINGCODE] = @CURRENCYDECIMALSEPARATORDISPLAYSETTINGCODE,
      [CURRENCYDECIMALSEPARATOR] = @CURRENCYDECIMALSEPARATOR,
      [DATEFORMAT] = @DATEFORMAT,
      [FUZZYDATEFORMAT] = @FUZZYDATEFORMAT,
      [MONTHDAYFORMAT] = @MONTHDAYFORMAT,
      [HOURMINUTEFORMAT] = @HOURMINUTEFORMAT,
      [CSVLINEBREAKCODE] = @CSVLINEBREAKCODE,
      [CHANGEDBYID] = @CHANGEAGENTID,
      [DATECHANGED] = @CURRENTDATE
    where [ID] = @BUSINESSPROCESSEXPORTFORMATID;

    exec dbo.[USP_MKTCOMMUNICATIONTEMPLATEDEFAULTAPPEAL_SAVEFIELD_FROMXML]
      @ID,
      @APPEALINFORMATION,
      @CHANGEAGENTID;

    /* Save universe selection filter information */
    exec dbo.[USP_MKTCOMMUNICATIONTEMPLATEDEFAULTFILTERSELECTION_GETINCLUDESELECTIONS_UPDATEFROMXML]
      @ID
      @INCLUDESELECTIONS
      @CHANGEAGENTID
      @CURRENTDATE;

    /* Save exclusion selection filter information */
    exec dbo.[USP_MKTCOMMUNICATIONTEMPLATEDEFAULTFILTERSELECTION_GETEXCLUDESELECTIONS_UPDATEFROMXML]
      @ID
      @EXCLUDESELECTIONS
      @CHANGEAGENTID
      @CURRENTDATE;

    /* Save KPIs */
    exec dbo.[USP_MKTCOMMUNICATIONTEMPLATEDEFAULTKPI_SAVEFIELD_FROMXML] 
      @ID
      @DEFAULTKPIS
      @CHANGEAGENTID,
      @CURRENTAPPUSERID;

    /* Save exclusion selection filter information */
    exec dbo.[USP_MKTCOMMUNICATIONTEMPLATEDEFAULTSOLICITCODES_GETEXCLUDESOLICITCODES_UPDATEFROMXML]
      @ID
      @EXCLUSIONS
      @CHANGEAGENTID
      @CURRENTDATE;

    update dbo.[MKTCOMMUNICATIONTEMPLATEDEFAULT] set
      [COMMUNICATIONNAMESCHEMEID] = @COMMUNICATIONNAMESCHEMEID,
      [DESCRIPTION] = @DESCRIPTIONDEFAULT,
      [DESCRIPTIONLOCKED] = @DESCRIPTIONLOCKED,
      [APPEALLOCKED] = @APPEALLOCKED,
      [CHANNELCODE] = @CHANNELCODEDEFAULT,
      [CHANNELCODELOCKED] = @CHANNELCODELOCKED,
      [ALLOWRESERVINGFINDERNUMBERS] = @ALLOWRESERVINGFINDERNUMBERS,
      [ALLOWRESERVINGFINDERNUMBERSLOCKED] = @ALLOWRESERVINGFINDERNUMBERSLOCKED,
      [ALLOWSPECIFYBUDGET] = @ALLOWSPECIFYBUDGET,
      [ALLOWSPECIFYBUDGETLOCKED] = @ALLOWSPECIFYBUDGETLOCKED,      
      [ALLOWEXCLUDEPREVIOUSEFFORTS] = @ALLOWEXCLUDEPREVIOUSEFFORTS,
      [ALLOWEXCLUDEPREVIOUSEFFORTSLOCKED] = @ALLOWEXCLUDEPREVIOUSEFFORTSLOCKED,
      [SOURCECODEID] = @SOURCECODEIDDEFAULT,
      [SOURCECODELOCKED] = @SOURCECODELOCKED,      
      [MAILEXPORTDEFINITIONID] = @MAILEXPORTDEFINITIONID,
      [MAILEXPORTDEFINITIONIDLOCKED] = @MAILEXPORTDEFINITIONIDLOCKED,
      [PHONEEXPORTDEFINITIONID] = @PHONEEXPORTDEFINITIONID,      
      [PHONEEXPORTDEFINITIONIDLOCKED] = @PHONEEXPORTDEFINITIONIDLOCKED,
      [EMAILEXPORTDEFINITIONID] = @EMAILEXPORTDEFINITIONID,
      [EMAILEXPORTDEFINITIONIDLOCKED] = @EMAILEXPORTDEFINITIONIDLOCKED,
      [EXPORTDESCRIPTION] = @EXPORTDESCRIPTION,
      [EXPORTDESCRIPTIONLOCKED] = @EXPORTDESCRIPTIONLOCKED,
      [CURRENCYSYMBOLDISPLAYSETTINGCODELOCKED] = @CURRENCYSYMBOLDISPLAYSETTINGCODELOCKED,
      [CURRENCYDECIMALDIGITSDISPLAYSETTINGCODELOCKED] = @CURRENCYDECIMALDIGITSDISPLAYSETTINGCODELOCKED,
      [CURRENCYGROUPSEPARATORDISPLAYSETTINGCODELOCKED] = @CURRENCYGROUPSEPARATORDISPLAYSETTINGCODELOCKED,
      [CURRENCYDECIMALSEPARATORDISPLAYSETTINGCODELOCKED] = @CURRENCYDECIMALSEPARATORDISPLAYSETTINGCODELOCKED,
      [DATEFORMATLOCKED] = @DATEFORMATLOCKED,
      [FUZZYDATEFORMATLOCKED] = @FUZZYDATEFORMATLOCKED,
      [MONTHDAYFORMATLOCKED] = @MONTHDAYFORMATLOCKED,
      [HOURMINUTEFORMATLOCKED] = @HOURMINUTEFORMATLOCKED,
      [CSVLINEBREAKCODELOCKED] = @CSVLINEBREAKCODELOCKED,
      [RUNSEGMENTATIONSEGMENTREFRESHPROCESS] = @RUNSEGMENTATIONSEGMENTREFRESHPROCESS,
      [RUNSEGMENTATIONSEGMENTREFRESHPROCESSLOCKED] = @RUNSEGMENTATIONSEGMENTREFRESHPROCESSLOCKED,
      [RUNMARKETINGEXCLUSIONSREPORT] = @RUNMARKETINGEXCLUSIONSREPORT,
      [RUNMARKETINGEXCLUSIONSREPORTLOCKED] = @RUNMARKETINGEXCLUSIONSREPORTLOCKED,
      [CACHESOURCEANALYSISRULEDATA] = @CACHESOURCEANALYSISRULEDATA,
      [CACHESOURCEANALYSISRULEDATALOCKED] = @CACHESOURCEANALYSISRULEDATALOCKED,
      [RUNSEGMENTATIONSEGMENTCALCULATEPROCESS] = @RUNSEGMENTATIONSEGMENTCALCULATEPROCESS,
      [RUNSEGMENTATIONSEGMENTREFRESHPROCESSACTIVATE] = @RUNSEGMENTATIONSEGMENTREFRESHPROCESSACTIVATE,
      [RUNMARKETINGEXCLUSIONSREPORTACTIVATE] = @RUNMARKETINGEXCLUSIONSREPORTACTIVATE,
      [CACHESOURCEANALYSISRULEDATAACTIVATE] = @CACHESOURCEANALYSISRULEDATAACTIVATE,
      [CACHESOURCEANALYSISRULEDATAACTIVATELOCKED] = @CACHESOURCEANALYSISRULEDATAACTIVATELOCKED,
      [ACTIVATEOPTIONSLOCKED] = @ACTIVATEOPTIONSLOCKED,
      [EXPORTAFTERACTIVATE] = @EXPORTAFTERACTIVATE,
      [EXPORTAFTERACTIVATELOCKED] = @EXPORTAFTERACTIVATELOCKED,    
      [USEADDRESSPROCESSING] = @USEADDRESSPROCESSING,
      [ADDRESSPROCESSINGOPTIONID] = case when @USEADDRESSPROCESSING = 1 then @ADDRESSPROCESSINGOPTIONID else null end,
      [ADDRESSPROCESSINGOPTIONSEASONALASOFDATETYPECODE] = case when @USEADDRESSPROCESSING = 1 then @ADDRESSPROCESSINGOPTIONSEASONALASOFDATETYPECODE else 0 end,
      [ADDRESSPROCESSINGOPTIONSEASONALASOFDATE] = case when @USEADDRESSPROCESSING = 1 then @ADDRESSPROCESSINGOPTIONSEASONALASOFDATE else null end,
      [NAMEFORMATPARAMETERID] = case when @USEADDRESSPROCESSING = 1 then @NAMEFORMATPARAMETERID else null end,
      [ADDRESSPROCESSINGLOCKED] = @ADDRESSPROCESSINGLOCKED,
      [KPISLOCKED] = @KPISLOCKED,
      [HOUSEHOLDINGTYPECODE] = @HOUSEHOLDINGTYPECODE,
      [HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS] = @HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS,
      [HOUSEHOLDINGONERECORDPERHOUSEHOLD] = @HOUSEHOLDINGONERECORDPERHOUSEHOLD,
      [HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD] = @HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD,
      [HOUSEHOLDINGLOCKED] = @HOUSEHOLDINGLOCKED,
      [INCLUDESELECTIONSLOCKED] = @INCLUDESELECTIONSLOCKED,
      [EXCLUDESELECTIONSLOCKED] = @EXCLUDESELECTIONSLOCKED,
      [EXCLUDEDECEASED] = @EXCLUDEDECEASED,
      [EXCLUDEDECEASEDLOCKED] = @EXCLUDEDECEASEDLOCKED,
      [EXCLUDEINACTIVE] = @EXCLUDEINACTIVE,
      [EXCLUDEINACTIVELOCKED] = @EXCLUDEINACTIVELOCKED,
      [EXCLUSIONASOFDATE] = @EXCLUSIONASOFDATE,
      [EXCLUSIONDATETYPECODE] = @EXCLUSIONDATETYPECODE,
      [EXCLUSIONASOFDATELOCKED] = @EXCLUSIONASOFDATELOCKED,
      [EXCLUSIONSLOCKED] = @EXCLUSIONSLOCKED,
      [ASKLADDEROVERRIDESLOCKED] = @ASKLADDEROVERRIDESLOCKED,
      [SEEDSLOCKED] = @SEEDSLOCKED,
      [BUSINESSUNITSLOCKED] = @BUSINESSUNITSLOCKED,
      [CHANGEDBYID] = @CHANGEAGENTID,
      [DATECHANGED] = @CURRENTDATE
    where [COMMUNICATIONTEMPLATEID] = @ID;

    /* Save Ask ladder overrides */
    exec dbo.[USP_MKTCOMMUNICATIONTEMPLATEDEFAULTASKLADDEROVERRIDE_GETITEMLIST_UPDATEFROMXML] @ID, @ASKLADDEROVERRIDES, @CHANGEAGENTID, @CURRENTDATE;

    /* Save seeds */
    exec dbo.[USP_MKTCOMMUNICATIONTEMPLATEDEFAULTSEED_GETITEMLIST_UPDATEFROMXML] @ID, @SEEDS, @CHANGEAGENTID, @CURRENTDATE;

    /* Save business units */
    exec dbo.[USP_MKTCOMMUNICATIONTEMPLATEDEFAULTBUSINESSUNIT_GETBUSINESSUNITS_UPDATEFROMXML] @ID, @BUSINESSUNITS, @CHANGEAGENTID, @CURRENTDATE;

    /* update changed table */
    if exists(select 1 from dbo.[MKTCOMMUNICATIONTEMPLATEEXAMPLE] where [ID] = @ID and [HASCHANGED] = 0)
      update
        dbo.[MKTCOMMUNICATIONTEMPLATEEXAMPLE]
      set
        [HASCHANGED] = 1
      where
        [ID] = @ID;

  end try

  begin catch
    exec dbo.[USP_RAISE_ERROR];
    return 1;
  end catch

  return 0;