USP_DATAFORMTEMPLATE_VIEW_ORDERFEESTAXES
The load procedure used by the view dataform template "Order Fees and Taxes"
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter used to load the fields defined on the form. |
@DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
@SALESMETHODFEES | xml | INOUT | Sales method fees |
@PROGRAMFEES | xml | INOUT | Program fees |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_ORDERFEESTAXES
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@SALESMETHODFEES xml = null output,
-- @FEETAXES xml = null output,
@PROGRAMFEES xml = null output
-- @PROGRAMTAXES xml = null output,
)
as
set nocount on;
set @DATALOADED = 1;
declare @SALESMETHODID uniqueidentifier
select @SALESMETHODID = SALESMETHOD.ID,
@DATALOADED = 1
from dbo.SALESORDER
inner join dbo.SALESMETHOD on SALESMETHOD.TYPECODE = SALESORDER.SALESMETHODTYPECODE
where SALESORDER.ID = @ID
-- Getting sales method fees
set @SALESMETHODFEES =
(
select
FEE.ID as FEEID,
SALESMETHODFEE.SALESMETHODID,
FEE.AMOUNT,
FEE.APPLIESTOCODE,
FEE.[PERCENT],
FEE.TYPECODE
from dbo.SALESMETHODFEE
inner join dbo.FEE on FEE.ID = SALESMETHODFEE.FEEID
where SALESMETHODFEE.SALESMETHODID = @SALESMETHODID
for xml raw ('ITEM'), type, elements, root('SALESMETHODFEES'), BINARY BASE64
)
-- Getting program order fees, need to refactor this query
set @PROGRAMFEES =
(
select
FEE.ID as FEEID,
PROGRAMFEE.PROGRAMID,
FEE.AMOUNT,
FEE.APPLIESTOCODE,
FEE.[PERCENT],
FEE.TYPECODE
from FEE
inner join dbo.PROGRAMFEE on FEE.ID = PROGRAMFEE.FEEID
where PROGRAMFEE.PROGRAMID in
(select PROGRAM.ID
from dbo.PROGRAM
inner join dbo.EVENT on EVENT.PROGRAMID = PROGRAM.ID
inner join dbo.SALESORDERITEMTICKET on EVENT.ID = SALESORDERITEMTICKET.EVENTID
inner join dbo.SALESORDERITEM on SALESORDERITEMTICKET.ID = SALESORDERITEM.ID
where SALESORDERITEM.SALESORDERID = @ID)
for xml raw ('ITEM'), type, elements, root('PROGRAMFEES'), BINARY BASE64
)
return 0;