USP_DATAFORMTEMPLATE_EDITLOAD_DISCOUNTGROUPDETAILMERCHANDISE
The load procedure used by the edit dataform template "Discount Group Detail Merchandise Edit Data 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. |
@TSLONG | bigint | INOUT | Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record. |
@APPLIESTOMERCHANDISECODE | tinyint | INOUT | Applies to |
@DISCOUNTMERCHANDISEDEPARTMENTS | xml | INOUT | Departments |
@DISCOUNTMERCHANDISEITEMS | xml | INOUT | Items |
@DISCOUNTTYPECODE | tinyint | INOUT | |
@MERCHANDISEAMOUNT | money | INOUT | Value |
@MERCHANDISEPERCENT | decimal(5, 2) | INOUT | Value |
@APPLIESTOCODE | tinyint | INOUT | |
@CALCULATIONTYPECODE | tinyint | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_DISCOUNTGROUPDETAILMERCHANDISE
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@APPLIESTOMERCHANDISECODE tinyint = null output,
@DISCOUNTMERCHANDISEDEPARTMENTS xml = null output,
@DISCOUNTMERCHANDISEITEMS xml = null output,
@DISCOUNTTYPECODE tinyint = null output,
@MERCHANDISEAMOUNT money = null output,
@MERCHANDISEPERCENT decimal(5, 2) = null output,
@APPLIESTOCODE tinyint = null output,
@CALCULATIONTYPECODE tinyint = null output
)
as
set nocount on;
set @DATALOADED = 0
set @TSLONG = 0
select
@DATALOADED = 1,
@APPLIESTOMERCHANDISECODE = DISCOUNTGROUPDETAIL.DISCOUNTGROUPDETAILAPPLICATIONCODE,
@DISCOUNTTYPECODE = DISCOUNT.DISCOUNTTYPECODE,
@MERCHANDISEAMOUNT = DISCOUNT.MERCHANDISEAMOUNT,
@MERCHANDISEPERCENT = DISCOUNT.MERCHANDISEPERCENT,
@APPLIESTOCODE = DISCOUNT.APPLIESTOCODE,
@CALCULATIONTYPECODE = DISCOUNT.CALCULATIONTYPECODE
from dbo.DISCOUNTGROUPDETAIL
inner join dbo.DISCOUNTGROUP on DISCOUNTGROUP.ID = DISCOUNTGROUPDETAIL.DISCOUNTGROUPID
inner join dbo.DISCOUNT on DISCOUNT.ID = DISCOUNTGROUP.DISCOUNTID
where DISCOUNTGROUP.DISCOUNTID = @ID
and DISCOUNTEDITEM = 1
and DISCOUNTGROUPDETAIL.DISCOUNTGROUPDETAILAPPLICATIONCODE <> 3
if @DATALOADED = 1
begin
if @APPLIESTOMERCHANDISECODE = 1
begin
set @DISCOUNTMERCHANDISEDEPARTMENTS = (
select
DISCOUNTGROUPDETAILMERCHANDISEDEPARTMENT.ID,
DISCOUNTGROUPDETAILMERCHANDISEDEPARTMENT.MERCHANDISEDEPARTMENTID,
DISCOUNTGROUPDETAILMERCHANDISEDEPARTMENT.SEQUENCE
from dbo.DISCOUNTGROUPDETAILMERCHANDISEDEPARTMENT
inner join dbo.DISCOUNTGROUPDETAIL on dbo.DISCOUNTGROUPDETAILMERCHANDISEDEPARTMENT.ID = DISCOUNTGROUPDETAIL.ID
inner join dbo.DISCOUNTGROUP on DISCOUNTGROUP.ID = DISCOUNTGROUPDETAIL.DISCOUNTGROUPID
where DISCOUNTGROUP.DISCOUNTID = @ID
and DISCOUNTEDITEM = 1
for xml raw('ITEM'),type,elements,root('DISCOUNTMERCHANDISEDEPARTMENTS'),binary base64
);
end
else if @APPLIESTOMERCHANDISECODE = 2
begin
set @DISCOUNTMERCHANDISEITEMS = (
select
DISCOUNTGROUPDETAILMERCHANDISEITEM.ID,
DISCOUNTGROUPDETAILMERCHANDISEITEM.MERCHANDISEITEMID,
DISCOUNTGROUPDETAILMERCHANDISEITEM.SEQUENCE
from dbo.DISCOUNTGROUPDETAILMERCHANDISEITEM
inner join dbo.DISCOUNTGROUPDETAIL on dbo.DISCOUNTGROUPDETAILMERCHANDISEITEM.ID = DISCOUNTGROUPDETAIL.ID
inner join dbo.DISCOUNTGROUP on DISCOUNTGROUP.ID = DISCOUNTGROUPDETAIL.DISCOUNTGROUPID
where DISCOUNTGROUP.DISCOUNTID = @ID
and DISCOUNTEDITEM = 1
for xml raw('ITEM'),type,elements,root('DISCOUNTMERCHANDISEITEMS'),binary base64
);
end
end
return 0;