UFN_SALESORDER_GETORDERADJUSTMENTTOTAL
Returns the adjustment total for an order.
Return
Return Type |
---|
money |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@SALESORDERID | uniqueidentifier | IN |
Definition
Copy
CREATE function dbo.UFN_SALESORDER_GETORDERADJUSTMENTTOTAL
(
@SALESORDERID uniqueidentifier
)
returns money
as begin
declare @ORDERFEETOTAL money
declare @ORDERTAXTOTAL money
declare @ORDERDISCOUNTTOTAL money
select
@ORDERFEETOTAL = coalesce(
(select sum([FEESOI].[TOTAL])
from dbo.[SALESORDERITEM] FEESOI
inner join dbo.[SALESORDERITEMFEE]
on [FEESOI].[ID] = [SALESORDERITEMFEE].[ID]
left join dbo.SALESORDERITEM AFFECTEDSOI on
SALESORDERITEMFEE.SALESORDERITEMID = AFFECTEDSOI.ID
where
[FEESOI].[SALESORDERID] = @SALESORDERID and
( [SALESORDERITEMFEE].[APPLIESTOCODE] = 0 or
FEESOI.PRICINGSTRUCTURECODE = 1 or
AFFECTEDSOI.PRICINGSTRUCTURECODE = 1 )
), 0)
select
@ORDERTAXTOTAL = coalesce(
(select sum([SALESORDERITEM].[TOTAL])
from dbo.[SALESORDERITEM]
where
[SALESORDERITEM].[SALESORDERID] = @SALESORDERID and
[SALESORDERITEM].[TYPECODE] = 4
), 0)
select
@ORDERDISCOUNTTOTAL = coalesce(
(select sum([SALESORDERITEM].[TOTAL])
from dbo.[SALESORDERITEM]
where
[SALESORDERITEM].[SALESORDERID] = @SALESORDERID and
[SALESORDERITEM].[TYPECODE] = 5
), 0)
return (@ORDERFEETOTAL + @ORDERTAXTOTAL) - @ORDERDISCOUNTTOTAL;
end