UFN_MEMBERSHIPDUESBATCH_GETMEMBERSHIPPROGRAMADDONS

Return

Return Type
table

Parameters

Parameter Parameter Type Mode Description
@BATCHMEMBERSHIPDUESID uniqueidentifier IN
@MEMBERSHIPPROGRAMID uniqueidentifier IN
@TRANSACTIONCURRENCYID uniqueidentifier IN
@TRANSACTIONDATE date IN

Definition

Copy


CREATE function dbo.UFN_MEMBERSHIPDUESBATCH_GETMEMBERSHIPPROGRAMADDONS
(
    @BATCHMEMBERSHIPDUESID uniqueidentifier,
    @MEMBERSHIPPROGRAMID uniqueidentifier,
    @TRANSACTIONCURRENCYID uniqueidentifier,
  @TRANSACTIONDATE date
)
returns table
as
return (
    select 
        case 
            when BATCHMEMBERSHIPDUESMEMBERSHIPROGRAMADDON.ID is null then 0
            else 1
        end as APPLY,
        MEMBERSHIPPROGRAMADDON.ADDONID,
        ADDON.ADDONTYPECODE as ADDONTYPE,
    case when MEMBERSHIPPROGRAMADDON.BASECURRENCYID = @TRANSACTIONCURRENCYID then MEMBERSHIPPROGRAMADDON.PRICE
    else dbo.UFN_CURRENCY_CONVERT(MEMBERSHIPPROGRAMADDON.PRICE,dbo.UFN_CURRENCYEXCHANGERATE_GETLATEST(MEMBERSHIPPROGRAMADDON.BASECURRENCYID,@TRANSACTIONCURRENCYID,@TRANSACTIONDATE,1,null))
    end as PRICE,
        case 
            when MULTIPLEALLOWED = 0 then 1
            else coalesce(BATCHMEMBERSHIPDUESMEMBERSHIPROGRAMADDON.NUMBEROFADDONS, 0
        end as NUMBEROFADDONS,
        MEMBERSHIPPROGRAMADDON.MULTIPLEALLOWED,
        @TRANSACTIONCURRENCYID as TRANSACTIONCURRENCYID    
    from dbo.MEMBERSHIPPROGRAMADDON 
    inner join dbo.ADDON 
        on MEMBERSHIPPROGRAMADDON.ADDONID = ADDON.ID
    left outer join dbo.BATCHMEMBERSHIPDUESMEMBERSHIPROGRAMADDON
        on MEMBERSHIPPROGRAMADDON.ADDONID = BATCHMEMBERSHIPDUESMEMBERSHIPROGRAMADDON.ADDONID
            and BATCHMEMBERSHIPDUESMEMBERSHIPROGRAMADDON.BATCHMEMBERSHIPDUESID = @BATCHMEMBERSHIPDUESID
    where MEMBERSHIPPROGRAMID = @MEMBERSHIPPROGRAMID
)