USP_DATAFORMTEMPLATE_EDITLOAD_FAFEVENT
The load procedure used by the edit dataform template "FAFEvent 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. |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@NAME | nvarchar(100) | INOUT | Name |
@DESCRIPTION | nvarchar(255) | INOUT | Description |
@STARTDATE | datetime | INOUT | Start date |
@STARTTIME | UDT_HOURMINUTE | INOUT | Start time |
@ENDDATE | datetime | INOUT | End date |
@ENDTIME | UDT_HOURMINUTE | INOUT | End time |
@EVENTYEAR | UDT_YEAR | INOUT | Report year |
@EVENTLOCATIONID | uniqueidentifier | INOUT | Location |
@EVENTLOCATIONCONTACTID | uniqueidentifier | INOUT | Event contact |
@PRIORYEAREVENTID | uniqueidentifier | INOUT | Previous event |
@MAINEVENTID | uniqueidentifier | INOUT | Main event |
@EVENTCATEGORYCODEID | uniqueidentifier | INOUT | Category |
@SITES | xml | INOUT | Sites |
@LOOKUPEVENTID | nvarchar(100) | INOUT | Alternate lookup ID |
@SUPPORTPHONE | nvarchar(100) | INOUT | Support phone |
@SUPPORTURL | UDT_WEBADDRESS | INOUT | Support URL |
@HASSUPPORTINGEVENTS | bit | INOUT | |
@EVENTTYPECODE | tinyint | INOUT | Event type |
@EVENTSUPPORTEMAIL | UDT_EMAILADDRESS | INOUT | Event support email |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_FAFEVENT(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@CURRENTAPPUSERID uniqueidentifier,
--EVENT FIELDS
@NAME nvarchar(100) = NULL output,
@DESCRIPTION nvarchar(255) = null output,
@STARTDATE datetime = null output,
@STARTTIME UDT_HOURMINUTE = null output,
@ENDDATE datetime = null output,
@ENDTIME UDT_HOURMINUTE = null output,
@EVENTYEAR UDT_YEAR = null output,
@EVENTLOCATIONID uniqueidentifier = null output,
@EVENTLOCATIONCONTACTID uniqueidentifier = null output,
@PRIORYEAREVENTID uniqueidentifier = null output,
@MAINEVENTID uniqueidentifier = null output,
@EVENTCATEGORYCODEID uniqueidentifier =null output,
@SITES xml = null output,
@LOOKUPEVENTID nvarchar(100) = null output,
@SUPPORTPHONE nvarchar(100) = null output,
@SUPPORTURL UDT_WEBADDRESS = null output,
@HASSUPPORTINGEVENTS bit = null output,
@EVENTTYPECODE tinyint = null output,
@EVENTSUPPORTEMAIL UDT_EMAILADDRESS = null output
)
as
set nocount on;
-- be sure to set these, in case the select returns no rows
set @DATALOADED = 0
set @TSLONG = 0
if dbo.UFN_SITEREQUIREDFORUSER(@CURRENTAPPUSERID) = 1
begin
if not exists (select SITEID from dbo.APPUSER where APPUSER.ID = @CURRENTAPPUSERID)
raiserror('You are not assigned to a default site. To continue, contact your administrator and verify your default site setup.', 13,1);
else
if dbo.UFN_APPUSER_DEFAULTSITEFORUSER(@CURRENTAPPUSERID) is null
raiserror('Your default site is not included in your role?s record access. To continue, contact your administrator and update your role.', 13,1);
end
select
@DATALOADED = 1,
@TSLONG = E.TSLONG,
@NAME = E.NAME,
@DESCRIPTION = E.DESCRIPTION,
@STARTDATE = E.STARTDATE,
@STARTTIME = E.STARTTIME,
@ENDDATE = E.ENDDATE,
@ENDTIME = E.ENDTIME,
@EVENTYEAR = EV.EVENTYEAR,
@EVENTLOCATIONID = E.EVENTLOCATIONID,
@EVENTLOCATIONCONTACTID = E.EVENTLOCATIONCONTACTID,
@PRIORYEAREVENTID = EV.PRIORYEAREVENTID,
@MAINEVENTID = E.MAINEVENTID,
@EVENTCATEGORYCODEID = EVENTCATEGORYCODEID,
--@SITES = dbo.UFN_EVENT_GETSITES_TOITEMLISTXML(E.ID),
@LOOKUPEVENTID = EV.LOOKUPEVENTID,
@SUPPORTPHONE = EV.SUPPORTPHONE,
@SUPPORTURL = EV.SUPPORTURL,
@HASSUPPORTINGEVENTS = case when (select count(ID) from dbo.EVENT ES where ES.MAINEVENTID = E.ID) > 0 then 1 else 0 end,
@EVENTTYPECODE = EV.EVENTTYPECODE,
@EVENTSUPPORTEMAIL = EV.EVENTSUPPORTEMAIL
from dbo.EVENT E (nolock)
join dbo.EVENTEXTENSION EV (nolock)on E.ID= EV.EVENTID
left join dbo.EVENTLOCATION EL (nolock)on E.EVENTLOCATIONID= EL.ID
WHERE E.ID = @ID
select @SITES = (
SELECT ES.[ID], ES.[SITEID], S.NAME
FROM dbo.[UFN_EVENT_GETSITES](@ID) ES
join dbo.[SITE] S on S.ID = ES.SITEID
for xml raw('ITEM'),type,elements,root('SITES'),BINARY BASE64 )
return 0;