USP_DATAFORMTEMPLATE_EDIT_EVENTLOCATION2
The save procedure used by the edit dataform template "Event Location Edit Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter indicating the ID of the record being edited. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@NAME | nvarchar(100) | IN | Name |
@CAPACITY | int | IN | Capacity |
@COUNTRYID | uniqueidentifier | IN | Country |
@STATEID | uniqueidentifier | IN | State |
@ADDRESSBLOCK | nvarchar(150) | IN | Address |
@CITY | nvarchar(50) | IN | City |
@POSTCODE | nvarchar(12) | IN | ZIP |
@PHONENUMBER | nvarchar(100) | IN | Phone number |
@ROOMS | xml | IN | Room/Unit |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_EVENTLOCATION2
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@NAME nvarchar(100),
@CAPACITY int,
@COUNTRYID uniqueidentifier,
@STATEID uniqueidentifier,
@ADDRESSBLOCK nvarchar(150),
@CITY nvarchar(50),
@POSTCODE nvarchar(12),
@PHONENUMBER nvarchar(100),
@ROOMS xml
)
as
set nocount on;
declare @CURRENTDATE datetime;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
set @CURRENTDATE = getdate();
-- TMV 03/01/2007 CR268233-022607
if @CAPACITY is null
set @CAPACITY = 0;
begin try
update
dbo.EVENTLOCATION
set
NAME = @NAME,
CAPACITY = @CAPACITY,
COUNTRYID = @COUNTRYID,
STATEID = @STATEID,
ADDRESSBLOCK = @ADDRESSBLOCK,
CITY = @CITY,
POSTCODE = @POSTCODE,
PHONENUMBER = @PHONENUMBER,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where
ID = @ID;
-- Check to see if the rooms exist on any events / batch events
if exists (
select
LOCATIONROOMS.ID
from
dbo.UFN_EVENTLOCATION_GETROOMS(@ID) as LOCATIONROOMS
inner join
dbo.EVENT on EVENT.EVENTLOCATIONROOMID = LOCATIONROOMS.ID
union
select
LOCATIONROOMS.ID
from
dbo.UFN_EVENTLOCATION_GETROOMS(@ID) as LOCATIONROOMS
inner join
dbo.BATCHEVENT on BATCHEVENT.EVENTLOCATIONROOMID = LOCATIONROOMS.ID
except
select
T.c.value('(ID)[1]','uniqueidentifier')
from
@ROOMS.nodes('/ROOMS/ITEM') T(c)
)
begin
raiserror('ERR_EVENTLOCATIONROOM_INUSE', 13, 1);
return 1;
end
exec dbo.USP_EVENTLOCATION_GETROOMS_UPDATEFROMXML @ID, @ROOMS, @CHANGEAGENTID, @CURRENTDATE;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;