UFN_SALESORDER_GETTICKETCOMBINATIONFEES

Gets ticket combination fees in order.

Return

Return Type
money

Parameters

Parameter Parameter Type Mode Description
@SALESORDERITEMID uniqueidentifier IN

Definition

Copy


CREATE function dbo.UFN_SALESORDER_GETTICKETCOMBINATIONFEES(@SALESORDERITEMID uniqueidentifier)
returns money
as begin
    declare @SALESORDERID uniqueidentifier
    declare @TICKETCOMBINATIONID uniqueidentifier
    declare @PRICETYPECODEID uniqueidentifier

    select
        @SALESORDERID = I.SALESORDERID,
        @TICKETCOMBINATIONID = TICKETCOMBINATIONID,
        @PRICETYPECODEID = T.PRICETYPECODEID 
    from
        dbo.SALESORDERITEMTICKETCOMBINATION C
    inner join
        dbo.SALESORDERITEMTICKET T on C.ID = T.ID
    inner join
        dbo.SALESORDERITEM I on T.ID = I.ID
    where
        I.ID = @SALESORDERITEMID;

    declare @FEES money;

    select
        @FEES = sum([SALESORDERITEM].[TOTAL])
    from
        dbo.[SALESORDERITEM]
    inner join
        dbo.[SALESORDERITEMFEE] on [SALESORDERITEM].[ID] = [SALESORDERITEMFEE].[ID]
    inner join
        dbo.[SALESORDERITEMTICKET] on [SALESORDERITEMTICKET].ID = [SALESORDERITEMFEE].SALESORDERITEMID
    inner join
        dbo.SALESORDERITEMTICKETCOMBINATION on SALESORDERITEMTICKETCOMBINATION.ID = [SALESORDERITEMTICKET].ID 
    left outer join
        dbo.CREDITITEM_EXT as EXT on EXT.SALESORDERITEMID = SALESORDERITEM.ID
    left outer join
        dbo.FINANCIALTRANSACTIONLINEITEM as LI on LI.ID = EXT.ID
    where
        [SALESORDERITEM].[SALESORDERID] = @SALESORDERID
        and SALESORDERITEMTICKET.PRICETYPECODEID = @PRICETYPECODEID 
        and SALESORDERITEMTICKETCOMBINATION.TICKETCOMBINATIONID = @TICKETCOMBINATIONID 

    return isnull(@FEES, 0.0);
end