USP_DATAFORMTEMPLATE_EDIT_DESIGNATIONLEVELRECIPIENT_2

The save procedure used by the edit dataform template "Fundraising Purpose Recipient Edit Form 2".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter indicating the ID of the record being edited.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@DATE datetime IN Award date
@AMOUNT money IN Award amount
@EDUCATIONALHISTORYID uniqueidentifier IN Education
@STATUSCODEID uniqueidentifier IN Status
@TYPECODEID uniqueidentifier IN Type
@COMMENTS nvarchar(255) IN Comments
@PUBLISHEDNAME nvarchar(100) IN Published name
@SCHOLARSHIPTERMID uniqueidentifier IN Scholarship term
@FERPA bit IN FERPA documentation received

Definition

Copy


                CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_DESIGNATIONLEVELRECIPIENT_2
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier = null,                
                        @DATE datetime,
                        @AMOUNT money,
                        @EDUCATIONALHISTORYID uniqueidentifier,
                        @STATUSCODEID uniqueidentifier,
                        @TYPECODEID uniqueidentifier,
                        @COMMENTS nvarchar(255),
                        @PUBLISHEDNAME nvarchar(100),
                        @SCHOLARSHIPTERMID uniqueidentifier,
                        @FERPA bit
                    )
                as 
                begin
                    set nocount on

                    declare @CURRENTDATE datetime                    
                    set @CURRENTDATE = getdate()

                    declare @BASECURRENCYID uniqueidentifier;
                    declare @DATEADDED datetime;
                    declare @ORGANIZATIONEXCHANGERATEID uniqueidentifier;
                    declare @ORGANIZATIONAMOUNT money;
                    declare @ORGANIZATIONCURRENCYID uniqueidentifier;
                    set @ORGANIZATIONCURRENCYID = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY();

                    select
                        @BASECURRENCYID = DESIGNATIONLEVELRECIPIENT.BASECURRENCYID,
                        @DATEADDED = DESIGNATIONLEVELRECIPIENT.DATEADDED,
                        @ORGANIZATIONEXCHANGERATEID = DESIGNATIONLEVELRECIPIENT.ORGANIZATIONEXCHANGERATEID
                    from
                        dbo.DESIGNATIONLEVELRECIPIENT
                    where
                        DESIGNATIONLEVELRECIPIENT.ID = @ID;

                    if (@ORGANIZATIONCURRENCYID = @BASECURRENCYID)
                    begin
                        set @ORGANIZATIONAMOUNT = @AMOUNT;
                    end
                    else
                    begin
                        if @ORGANIZATIONEXCHANGERATEID is null
                            set @ORGANIZATIONEXCHANGERATEID = dbo.UFN_CURRENCYEXCHANGERATE_GETLATEST(@BASECURRENCYID, @ORGANIZATIONCURRENCYID, @DATEADDED, 0, null);

                        set @ORGANIZATIONAMOUNT = dbo.UFN_CURRENCY_CONVERT(@AMOUNT, @ORGANIZATIONEXCHANGERATEID);
                    end

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

                        update
                            dbo.DESIGNATIONLEVELRECIPIENT
                        set 
                            DATE = @DATE,                             
                            AMOUNT = @AMOUNT,                            
                            CHANGEDBYID = @CHANGEAGENTID,
                            DATECHANGED = @CURRENTDATE,
                            EDUCATIONALHISTORYID = @EDUCATIONALHISTORYID,
                            STATUSCODEID = @STATUSCODEID,
                            TYPECODEID = @TYPECODEID,
                            COMMENTS = @COMMENTS,
                            PUBLISHEDNAME = @PUBLISHEDNAME,
                            SCHOLARSHIPTERMID = @SCHOLARSHIPTERMID,
                            FERPA = @FERPA,
                            ORGANIZATIONEXCHANGERATEID = @ORGANIZATIONEXCHANGERATEID,
                            ORGANIZATIONAMOUNT = @ORGANIZATIONAMOUNT
                        where 
                            ID = @ID                        
                    end try

                    begin catch
                        exec dbo.USP_RAISE_ERROR
                        return 1
                    end catch

                    return 0
                end