USP_DATAFORMTEMPLATE_EDIT_HOUSEHOLDSCANBEDONORS

The save procedure used by the edit dataform template "Households Can Be Donors Edit Form".

Parameters

Parameter Parameter Type Mode Description
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@HOUSEHOLDSCANBEDONORS bit IN Households can be donors

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_HOUSEHOLDSCANBEDONORS
                    (
                        @CHANGEAGENTID uniqueidentifier = null,
                        @HOUSEHOLDSCANBEDONORS bit
                    )
                    as
                        set nocount on;

                        declare @CURRENTDATE datetime
                        set @CURRENTDATE = getdate()

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

                        begin try
                            update dbo.HOUSEHOLDINFO set 
                                HOUSEHOLDSCANBEDONORS = @HOUSEHOLDSCANBEDONORS,
                                DATECHANGED = @CURRENTDATE,
                                CHANGEDBYID = @CHANGEAGENTID

                            -- If this is the first time this form is saved, the row needs to be created

                            if @@ROWCOUNT = 0
                            begin
                                declare @ID uniqueidentifier
                                set @ID = newid()

                                declare @NAMEFORMATFUNCTIONID uniqueidentifier
                                select
                                    @NAMEFORMATFUNCTIONID = ID 
                                from NAMEFORMATFUNCTION 
                                where 
                                    FORMATSQLFUNCTION = 'UFN_NAMEFORMAT_32'

                                insert into dbo.HOUSEHOLDINFO
                                (
                                    ID,
                                    NAMEFORMATFUNCTIONID,
                                    HOUSEHOLDSCANBEDONORS,
                                    ADDEDBYID,
                                    CHANGEDBYID,
                                    DATEADDED,
                                    DATECHANGED                                
                                )
                                values
                                (
                                    @ID,
                                    @NAMEFORMATFUNCTIONID,
                                    @HOUSEHOLDSCANBEDONORS,
                                    @CHANGEAGENTID,
                                    @CHANGEAGENTID,
                                    @CURRENTDATE,
                                    @CURRENTDATE    
                                )
                            end
                        end try
                        begin catch
                            exec dbo.USP_RAISE_ERROR;
                            return 1;
                        end catch

                        return 0;