USP_DATAFORMTEMPLATE_EDIT_TRACKITEMDAILYADMISSION
The save procedure used by the edit dataform template "Track Item Daily Admission Edit Data 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. |
@PROGRAMID | uniqueidentifier | IN | Program |
@STARTDAY | tinyint | IN | Day |
@STARTTIME | UDT_HOURMINUTE | IN | Start time |
@ENDTIME | UDT_HOURMINUTE | IN | End time |
@NOTES | nvarchar(500) | IN | Notes |
@RESOURCES | xml | IN | Additional supplies/equipment resources |
@STAFFRESOURCES | xml | IN | Staff resources |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_TRACKITEMDAILYADMISSION
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@PROGRAMID uniqueidentifier,
@STARTDAY tinyint,
@STARTTIME dbo.UDT_HOURMINUTE,
@ENDTIME dbo.UDT_HOURMINUTE,
@NOTES nvarchar(500),
@RESOURCES xml,
@STAFFRESOURCES xml
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
-- Since daily admission programs are only on one day if the end time is midnight,
-- we are assuming the user wants the track item to go to the end of the day
if @ENDTIME = '0000'
set @ENDTIME = '2359';
begin try
if dbo.UFN_PROGRAM_ISDAILYADMISSION(@PROGRAMID) = 0
raiserror('ERR_PROGRAMIDNOTDAILYADMISSION', 13, 1);
update
dbo.TRACKITEM
set
NAME = dbo.UFN_PROGRAM_GETNAME(@PROGRAMID),
PROGRAMID = @PROGRAMID,
STARTDAY = @STARTDAY,
STARTTIME = @STARTTIME,
ENDDAY = @STARTDAY,
ENDTIME = @ENDTIME,
NOTES = @NOTES,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where
ID = @ID;
exec dbo.USP_TRACKITEMRESOURCE_GETRESOURCES_UPDATEFROMXML @ID, @RESOURCES, @CHANGEAGENTID, @CURRENTDATE
exec dbo.USP_TRACKITEM_GETSTAFFRESOURCES_UPDATEFROMXML @ID, @STAFFRESOURCES, @CHANGEAGENTID, @CURRENTDATE
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;