UFN_SALESORDER_GETTICKETOTAL
Returns the ticket total for an order.
Return
Return Type |
---|
money |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@SALESORDERID | uniqueidentifier | IN |
Definition
Copy
CREATE function dbo.UFN_SALESORDER_GETTICKETOTAL
(
@SALESORDERID uniqueidentifier
)
returns money
as begin
declare @TICKETSUBTOTAL money
declare @TICKETFEES money
declare @TICKETDISCOUNTS money
select
@TICKETSUBTOTAL = coalesce(
(select sum([SALESORDERITEM].[TOTAL])
from dbo.[SALESORDERITEM]
where
[SALESORDERITEM].[SALESORDERID] = @SALESORDERID and
[SALESORDERITEM].[TYPECODE] = 0
),0)
select
@TICKETFEES = coalesce(
(select sum([SALESORDERITEM].[TOTAL])
from dbo.[SALESORDERITEM]
inner join dbo.[SALESORDERITEMFEE]
on [SALESORDERITEM].[ID] = [SALESORDERITEMFEE].[ID]
where
[SALESORDERITEM].[SALESORDERID] = @SALESORDERID and
[SALESORDERITEMFEE].[APPLIESTOCODE] = 1 and
[SALESORDERITEMFEE].[SALESORDERITEMID] in
(select [ID] from dbo.[SALESORDERITEM]
where [SALESORDERITEM].[SALESORDERID] = @SALESORDERID and
[SALESORDERITEM].[TYPECODE] = 0)
),0)
select
@TICKETDISCOUNTS = coalesce(
(select sum([SALESORDERITEMITEMDISCOUNT].[AMOUNT])
from dbo.[SALESORDERITEMITEMDISCOUNT]
inner join [SALESORDERITEM] on [SALESORDERITEMITEMDISCOUNT].[SALESORDERITEMID] = [SALESORDERITEM].[ID]
where
[SALESORDERITEM].[TYPECODE] = 0 and
[SALESORDERITEM].[SALESORDERID] = @SALESORDERID
),0)
return (@TICKETSUBTOTAL + @TICKETFEES) - @TICKETDISCOUNTS;
end