USP_DATAFORMTEMPLATE_VIEW_DISCOUNT
The load procedure used by the view dataform template "Discount View Form"
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. |
| @NAME | nvarchar(100) | INOUT | Name |
| @DESCRIPTION | nvarchar(255) | INOUT | Description |
| @DISCOUNTTYPE | nvarchar(50) | INOUT | Discount type |
| @DISCOUNTTYPECODE | tinyint | INOUT | Discount type |
| @APPLIESTO | nvarchar(50) | INOUT | Applies to |
| @APPLICATIONTYPECODE | tinyint | INOUT | Selected for use label |
| @APPLIESTOCODE | tinyint | INOUT | Applies to |
| @APPLICATIONTYPE | nvarchar(50) | INOUT | Selected for use |
| @CALCULATIONTYPE | nvarchar(50) | INOUT | Calculation type |
| @AMOUNT | decimal(18, 2) | INOUT | Value |
| @LIMITDISCOUNTSPERORDER | bit | INOUT | Discount may be applied |
| @NUMBEROFDISCOUNTSPERORDER | int | INOUT | times |
| @ISACTIVE | bit | INOUT | Status |
| @CALCULATIONTYPECODE | tinyint | INOUT | Calculation type code |
| @APPLIESTOTICKETS | bit | INOUT | Tickets |
| @APPLIESTOMERCHANDISE | bit | INOUT | Merchandise |
| @DISCOUNTGROUPDETAILAPPLICATIONCODE | tinyint | INOUT | DISCOUNTGROUPDETAILAPPLICATIONCODE |
| @QUALIFYINGITEMTYPECODE | tinyint | INOUT | QUALIFYINGITEMTYPECODE |
| @DISCOUNTITEMTYPECODE | tinyint | INOUT | DISCOUNTITEMTYPECODE |
| @QUALIFYINGGROUPDETAILAPPLICATIONCODE | tinyint | INOUT | QUALIFYINGGROUPDETAILAPPLICATIONCODE |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_DISCOUNT
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@NAME nvarchar(100) = null output,
@DESCRIPTION nvarchar(255) = null output,
@DISCOUNTTYPE nvarchar(50) = null output,
@DISCOUNTTYPECODE tinyint=null output,
@APPLIESTO nvarchar(50) = null output,
@APPLICATIONTYPECODE tinyint=null output,
@APPLIESTOCODE tinyint=null output,
@APPLICATIONTYPE nvarchar(50) = null output,
@CALCULATIONTYPE nvarchar(50) = null output,
@AMOUNT decimal(18 ,2) = null output,
@LIMITDISCOUNTSPERORDER bit = null output,
@NUMBEROFDISCOUNTSPERORDER int = null output,
@ISACTIVE bit = null output,
@CALCULATIONTYPECODE tinyint = null output,
@APPLIESTOTICKETS bit = null output,
@APPLIESTOMERCHANDISE bit = null output,
@DISCOUNTGROUPDETAILAPPLICATIONCODE tinyint = null output,
@QUALIFYINGITEMTYPECODE tinyint = null output,
@DISCOUNTITEMTYPECODE tinyint = null output,
@QUALIFYINGGROUPDETAILAPPLICATIONCODE tinyint = null output
)
as
set nocount on;
set @DATALOADED = 0;
select
@DATALOADED = 1,
@NAME = NAME,
@DESCRIPTION = [DESCRIPTION],
@DISCOUNTTYPE = DISCOUNTTYPE,
@DISCOUNTTYPECODE = DISCOUNTTYPECODE,
@APPLIESTO = APPLIESTO,
@APPLIESTOCODE = APPLIESTOCODE,
@APPLICATIONTYPECODE = APPLICATIONTYPECODE,
@APPLICATIONTYPE = APPLICATIONTYPE,
@CALCULATIONTYPE = CALCULATIONTYPE,
@AMOUNT = (case
when [APPLIESTOCODE] = 0 and [DISCOUNTTYPECODE] = 0 then
case [CALCULATIONTYPECODE]
when 0 then
[AMOUNT]
else
[PERCENT]
end
else
0
end),
@LIMITDISCOUNTSPERORDER = LIMITDISCOUNTSPERORDER,
@NUMBEROFDISCOUNTSPERORDER = NUMBEROFDISCOUNTSPERORDER,
@ISACTIVE = ISACTIVE,
@CALCULATIONTYPECODE = [CALCULATIONTYPECODE],
@APPLIESTOMERCHANDISE = APPLIESTOMERCHANDISE,
@APPLIESTOTICKETS = APPLIESTOTICKETS,
@QUALIFYINGITEMTYPECODE = QUALIFYINGITEMTYPECODE,
@DISCOUNTITEMTYPECODE = DISCOUNTITEMTYPECODE
from
dbo.DISCOUNT
where
ID = @ID;
select top 1 @DISCOUNTGROUPDETAILAPPLICATIONCODE = DISCOUNTGROUPDETAIL.DISCOUNTGROUPDETAILAPPLICATIONCODE
from dbo.DISCOUNTGROUPDETAIL
inner join dbo.DISCOUNTGROUP
on DISCOUNTGROUP.ID = DISCOUNTGROUPDETAIL.DISCOUNTGROUPID
where DISCOUNTGROUPDETAIL.DISCOUNTEDITEM = 1
and DISCOUNTGROUPDETAIL.DISCOUNTGROUPDETAILAPPLICATIONCODE <> 3
and DISCOUNTGROUP.DISCOUNTID = @ID
select top 1 @QUALIFYINGGROUPDETAILAPPLICATIONCODE = DISCOUNTGROUPDETAIL.DISCOUNTGROUPDETAILAPPLICATIONCODE
from dbo.DISCOUNTGROUPDETAIL
inner join dbo.DISCOUNTGROUP
on DISCOUNTGROUP.ID = DISCOUNTGROUPDETAIL.DISCOUNTGROUPID
where DISCOUNTGROUPDETAIL.DISCOUNTEDITEM = 0
and DISCOUNTGROUPDETAIL.DISCOUNTGROUPDETAILAPPLICATIONCODE <> 3
and DISCOUNTGROUP.DISCOUNTID = @ID
return 0;