UFN_APPEAL_GETBENEFITDETAILS_2

Returns the benefit details associated with an appeal and a appeal benefit level dollar amount.

Return

Return Type
table

Parameters

Parameter Parameter Type Mode Description
@APPEALID uniqueidentifier IN
@GIFTAMOUNT money IN
@TRANSACTIONCURRENCYID uniqueidentifier IN
@BASECURRENCYID uniqueidentifier IN

Definition

Copy


            create function dbo.UFN_APPEAL_GETBENEFITDETAILS_2
            (
                @APPEALID uniqueidentifier,
                @GIFTAMOUNT money,
                @TRANSACTIONCURRENCYID uniqueidentifier,
                @BASECURRENCYID uniqueidentifier = null
            )
            returns @RESULT table
            (
                ID uniqueidentifier, 
                BENEFITID uniqueidentifier,
                VALUE money,
                QUANTITY int,
                SEQUENCE int,
                BASECURRENCYID uniqueidentifier
            )
            as
            begin
                declare @APPEALBENEFITID uniqueidentifier; 
                set @APPEALBENEFITID = null;

                select top 1
                    @APPEALBENEFITID = ID 
                from dbo.APPEALBENEFIT 
                where
                    APPEALID = @APPEALID and
                    dbo.UFN_APPEALBENEFIT_GETAMOUNTINCURRENCY(ID, @TRANSACTIONCURRENCYID) <= @GIFTAMOUNT
                order by AMOUNT desc;

                if not @APPEALBENEFITID is null
                    insert into @RESULT
                        select
                            APPEALBENEFITDETAIL.ID,
                            APPEALBENEFITDETAIL.BENEFITID,
                            APPEALBENEFITDETAIL.VALUE,
                            APPEALBENEFITDETAIL.QUANTITY,
                            APPEALBENEFITDETAIL.SEQUENCE,
                            APPEALBENEFITDETAIL.BASECURRENCYID
                        from dbo.APPEALBENEFITDETAIL
                            inner join dbo.BENEFIT 
                                on APPEALBENEFITDETAIL.BENEFITID = BENEFIT.ID
                        where 
                            APPEALBENEFITID = @APPEALBENEFITID and 
                            BENEFIT.USEPERCENT = 0 and
                            APPEALBENEFITDETAIL.BASECURRENCYID = @BASECURRENCYID;

                return;
            end