USP_DATAFORMTEMPLATE_EDITLOAD_PREREGISTEREDPROGRAMEVENTREGISTRANT
The load procedure used by the edit dataform template "Preregistered Program Event Registrant Edit 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. |
| @CONSTITUENTID | uniqueidentifier | INOUT | Registrant |
| @EVENTID | uniqueidentifier | INOUT | |
| @PREFERENCES | xml | INOUT | Preferences |
| @NOTES | nvarchar(255) | INOUT | Notes |
| @REGISTRANTNAME | nvarchar(255) | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_PREREGISTEREDPROGRAMEVENTREGISTRANT
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@CONSTITUENTID uniqueidentifier = null output,
@EVENTID uniqueidentifier = null output,
@PREFERENCES xml = null output,
@NOTES nvarchar(255) = null output,
@REGISTRANTNAME nvarchar(255) = null output
)
as
begin
set nocount on;
set @DATALOADED = 0;
set @TSLONG = 0;
select
@EVENTID = EVENTID,
@CONSTITUENTID = CONSTITUENTID,
@NOTES = NOTES,
@DATALOADED = 1,
@REGISTRANTNAME = dbo.UFN_CONSTITUENT_BUILDNAME(REGISTRANT.CONSTITUENTID)
from dbo.REGISTRANT
where REGISTRANT.ID = @ID;
set @PREFERENCES = dbo.UFN_REGISTRANT_GETPREFERENCES_TOITEMLISTXML(@ID);
set @PREFERENCES =
(
select
ID,
EVENTPREFERENCEGROUPID,
EVENTPREFERENCEID
from
(
select T.items.value('(ID)[1]','uniqueidentifier') ID,
T.items.value('(EVENTPREFERENCEGROUPID)[1]','uniqueidentifier') EVENTPREFERENCEGROUPID,
T.items.value('(EVENTPREFERENCEID)[1]','uniqueidentifier') EVENTPREFERENCEID
from @PREFERENCES.nodes('/PREFERENCES/ITEM') T(items)
union all
select newid() ID,
EVENTPREFERENCEGROUP.ID EVENTPREFERENCEGROUPID,
null EVENTPREFERENCEID
from dbo.EVENTPREFERENCEGROUP
where EVENTID = @EVENTID
and EVENTPREFERENCEGROUP.ID not in
(
select T.items.value('(EVENTPREFERENCEGROUPID)[1]','uniqueidentifier')
from @PREFERENCES.nodes('/PREFERENCES/ITEM') T(items)
)
) [PREFERENCES]
order by dbo.UFN_EVENTPREFERENCEGROUP_GETNAME(EVENTPREFERENCEGROUPID)
for xml raw('ITEM'),type,elements,root('PREFERENCES'),binary base64
);
return 0;
end