USP_DATAFORMTEMPLATE_ADD_EXCHANGEEMAILBATCHCOMMIT

The save procedure used by the add dataform template "Exchange Email Batch Row Commit Add Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@CONSTITUENTID uniqueidentifier IN Constituent
@USERID uniqueidentifier IN User
@DATESENT datetime IN Date
@TIMESENT UDT_HOURMINUTE IN Time
@ADDASINTERACTION bit IN Process
@SUBJECT nvarchar(256) IN Subject
@BODY nvarchar(max) IN Body
@INTERACTIONTYPECODEID uniqueidentifier IN Type
@VALIDATEONLY bit IN Validate only
@SITES xml IN Sites

Definition

Copy

                CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_EXCHANGEEMAILBATCHCOMMIT
                (
                    @ID uniqueidentifier output
                    @CHANGEAGENTID uniqueidentifier,
                    @CONSTITUENTID uniqueidentifier = null,
                    @USERID uniqueidentifier = null,                
                    @DATESENT datetime = null,
                    @TIMESENT UDT_HOURMINUTE = null,
                    @ADDASINTERACTION bit = null,
                    @SUBJECT nvarchar(256) = null
                    @BODY nvarchar(max) = null,                
                    @INTERACTIONTYPECODEID uniqueidentifier = null,
                    @VALIDATEONLY bit = 0,
                    @SITES xml = null
                )
                as
                    set nocount on;

                    declare @STATUSCODE tinyint;
                    declare @DATESENTNOTIME datetime;
                    declare @OWNER nvarchar(154);

                    set @DATESENTNOTIME = dbo.UFN_DATE_GETEARLIESTTIME(@DATESENT);
                    SELECT @OWNER = CONSTITUENTID FROM dbo.APPUSER WHERE ID = @USERID;

                    declare @CHANGEDATE datetime;
                    set @CHANGEDATE = getdate();

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

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

                    if @ADDASINTERACTION <> 0
                    begin
                        begin try              
                            insert into dbo.INTERACTION (ID,CONSTITUENTID,EXPECTEDDATE,ACTUALDATE,FUNDRAISERID,INTERACTIONTYPECODEID,OBJECTIVE,STATUSCODE,COMMENT,ADDEDBYID,CHANGEDBYID, DATEADDED, DATECHANGED) 
                            values (@ID,@CONSTITUENTID,@DATESENTNOTIME,@DATESENTNOTIME,@OWNER,@INTERACTIONTYPECODEID,@SUBJECT,2,@BODY,@CHANGEAGENTID,@CHANGEAGENTID,@CHANGEDATE,@CHANGEDATE);
                            exec dbo.USP_CONSTITUENTINTERACTION_GETSITES_ADDFROMXML @ID, @SITES, @CHANGEAGENTID, @CHANGEDATE;
                        end try
                        begin catch 
                            exec dbo.USP_RAISE_ERROR;
                            return 1;
                        end catch
                    end

                    return 0;