USP_DATAFORMTEMPLATE_VIEW_COMBINATION
The load procedure used by the view dataform template "Combination 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 |
@EVENTSSAMEDAY | bit | INOUT | Same day event |
@ISACTIVE | bit | INOUT | Status |
@PRICES | xml | INOUT | Prices |
@ISAPPROVEDFORWEB | bit | INOUT | |
@RECORDID | uniqueidentifier | INOUT | |
@HASCUSTOMACKNOWLEDGEMENTTEMPLATE | bit | INOUT | |
@ISCUSTOMACKNOWLEDGEMENTENABLED | bit | INOUT | |
@MICROSITEEMAILTEMPLATEID | uniqueidentifier | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_COMBINATION
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@NAME nvarchar(100) = null output,
@DESCRIPTION nvarchar(255) = null output,
@EVENTSSAMEDAY bit = null output,
@ISACTIVE bit = null output,
@PRICES xml = null output,
@ISAPPROVEDFORWEB bit = null output,
@RECORDID uniqueidentifier = null output, -- This will be exactly the same as @ID. Because Infinity. actionhost.js: "The context record ID cannot be retrieved when using a direct handler. Use the host's getFieldValue, getPageFieldValue or getParameterValue method to retrieve the required value instead."
@HASCUSTOMACKNOWLEDGEMENTTEMPLATE bit = null output,
@ISCUSTOMACKNOWLEDGEMENTENABLED bit = null output,
@MICROSITEEMAILTEMPLATEID uniqueidentifier = null output
)
as
set nocount on;
set @DATALOADED = 0;
select
@DATALOADED = 1,
@NAME = NAME,
@DESCRIPTION = DESCRIPTION,
@EVENTSSAMEDAY = EVENTSSAMEDAY,
@ISACTIVE = ISACTIVE,
@RECORDID = ID
from
dbo.COMBINATION
where
ID = @ID;
-- Total program groups in the combination
declare @TOTALPROGRAMGROUPS int;
select @TOTALPROGRAMGROUPS = count(*)
from dbo.PROGRAMGROUP
where COMBINATIONID = @ID;
set @PRICES = (
select
COMBINATIONPRICETYPE.ID,
dbo.UFN_PRICETYPECODE_GETDESCRIPTION(COMBINATIONPRICETYPE.PRICETYPECODEID) as PRICETYPE,
case count(PROGRAMGROUPPRICE.ID)
when @TOTALPROGRAMGROUPS then sum(PROGRAMGROUPPRICE.FACEPRICE)
else null
end as FACEPRICE,
COMBINATIONPRICETYPE.SEQUENCE
from
dbo.COMBINATIONPRICETYPE
left join
dbo.PROGRAMGROUPPRICE on COMBINATIONPRICETYPE.ID = PROGRAMGROUPPRICE.COMBINATIONPRICETYPEID
where
COMBINATIONPRICETYPE.COMBINATIONID = @ID
group by
COMBINATIONPRICETYPE.ID, COMBINATIONPRICETYPE.PRICETYPECODEID, SEQUENCE
order by
COMBINATIONPRICETYPE.SEQUENCE
for xml raw ('ITEM'), type, elements, root('PRICES'), BINARY BASE64
);
set @ISAPPROVEDFORWEB = dbo.UFN_COMBINATION_HASONLINEAVAILABILITY(@ID);
select
@HASCUSTOMACKNOWLEDGEMENTTEMPLATE = 0,
@ISCUSTOMACKNOWLEDGEMENTENABLED = 0;
select
@HASCUSTOMACKNOWLEDGEMENTTEMPLATE = 1,
@ISCUSTOMACKNOWLEDGEMENTENABLED = ACTIVE,
@MICROSITEEMAILTEMPLATEID = ID
from dbo.COMBINATION_MICROSITEEMAILTEMPLATE where COMBINATIONID = @ID;
return 0;