UFN_RESERVATIONRATESCALE_ISAPPLIED

Returns whether or not all of the applications have been set up and exist on the reservation.

Return

Return Type
bit

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN

Definition

Copy


        CREATE function dbo.UFN_RESERVATIONRATESCALE_ISAPPLIED
        (
            @ID uniqueidentifier
        )
        returns bit
        with execute as caller
        as 
        begin
            declare @ISAPPLIED bit = 1

            declare @FLATRATEAMOUNT money
            declare @APPLIEDAMOUNT money

            select @FLATRATEAMOUNT = AMOUNT
            from dbo.RESERVATIONRATESCALEPRICE
            where 
                RESERVATIONRATESCALEID = @ID and
                INUSE = 1

            select 
                @APPLIEDAMOUNT = isnull(sum(TOTAL),0.0)
            from dbo.SALESORDERITEM
            where
                SALESORDERID = @ID and
                PRICINGSTRUCTURECODE = 1

            if @FLATRATEAMOUNT <> @APPLIEDAMOUNT or
                exists
                (
                    select 1 from dbo.RESERVATIONRATESCALEAPPLICATION
                    where
                        RESERVATIONRATESCALEID = @ID and
                        (
                            dbo.UFN_RESERVATIONRATESCALEAPPLICATION_ISDISTRIBUTED(ID) = 0 or
                            dbo.UFN_RESERVATIONRATESCALEAPPLICATION_INCLUDEDINFLATRATE(ID) = 0
                        )
                )
            begin
                set @ISAPPLIED = 0
            end

            return @ISAPPLIED
        end