USP_DATAFORMTEMPLATE_ADD_MKTLETTERCODE

The save procedure used by the add dataform template "Letter Add Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@MAILINGTYPECODE tinyint IN Input parameter indicating the context ID for the record being added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@NAME nvarchar(100) IN Name
@DESCRIPTION nvarchar(255) IN Description
@MKTEXPORTDEFINITIONID uniqueidentifier IN Export definition (obsolete)
@INCLUDESRECEIPT bit IN Letter includes receipt
@WORDTEMPLATEFILENAME nvarchar(255) IN Word template
@WORDFILE varbinary IN File
@EXPORTDEFINITIONID uniqueidentifier IN Export definition
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@SITES xml IN Sites

Definition

Copy


CREATE procedure dbo.[USP_DATAFORMTEMPLATE_ADD_MKTLETTERCODE]
(
  @ID uniqueidentifier = null output,
  @MAILINGTYPECODE tinyint,
  @CHANGEAGENTID uniqueidentifier,
  @NAME nvarchar(100),
  @DESCRIPTION nvarchar(255) = null,
  @MKTEXPORTDEFINITIONID uniqueidentifier = null, -- obsolete

  @INCLUDESRECEIPT bit = null,
  @WORDTEMPLATEFILENAME nvarchar(255) = null,
  @WORDFILE varbinary(max) = null,
  @EXPORTDEFINITIONID uniqueidentifier = null,
  @CURRENTAPPUSERID uniqueidentifier = null,
  @SITES xml = null
)
as
  set nocount on;

  declare @CURRENTDATE datetime;

  begin try
    if @SITES is null and dbo.[UFN_SITEREQUIREDFORUSERONFEATURE](@CURRENTAPPUSERID, '2B50DFE4-83C0-46B9-A6FD-76199C95BC74', 1) = 1 
      begin
        raiserror('BBERR_LETTERCODESITE_SITEID', 13, 1);
        return 1;
      end

    if @CHANGEAGENTID is null
      exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;

    set @CURRENTDATE = getdate();

    if @ID is null
      set @ID = newid();

    insert into dbo.[LETTERCODE] (
      [ID],
      [NAME],
      [DESCRIPTION],
      [WORDTEMPLATEFILENAME],
      [WORDFILE],
      [EXPORTDEFINITIONID],
      [INCLUDESRECEIPT],
      [ADDEDBYID],
      [CHANGEDBYID],
      [DATEADDED],
      [DATECHANGED]
    ) values (
      @ID,
      @NAME,
      @DESCRIPTION,
      @WORDTEMPLATEFILENAME,
      @WORDFILE,
      @EXPORTDEFINITIONID,
      @INCLUDESRECEIPT,
      @CHANGEAGENTID,
      @CHANGEAGENTID,
      @CURRENTDATE,
      @CURRENTDATE
    );

    if @SITES is not null
      exec dbo.[USP_LETTERCODE_GETSITES_ADDFROMXML] @ID, @SITES, @CHANGEAGENTID, @CURRENTDATE;

  end try

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

  return 0;