USP_STUDENT_CLASS_DROP
Executes the "Student Class Drop" record operation.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | nvarchar(73) | IN | Input parameter indicating the ID of the record being deleted. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the delete. |
Definition
Copy
CREATE procedure dbo.USP_STUDENT_CLASS_DROP
(
@ID nvarchar(73),
@CHANGEAGENTID uniqueidentifier
)
as begin
--check deletion rules, if any
declare @CLASSID uniqueidentifier
declare @STUDENTID uniqueidentifier
select
@CLASSID = cast(substring(@ID,1,36) as uniqueidentifier),
@STUDENTID = cast(substring(@ID,38,36) as uniqueidentifier)
-- use the system generated delete routine to allow proper recording of the deleting agent
declare @contextCache varbinary(128);
declare @e int;
set @contextCache = CONTEXT_INFO();
/* set CONTEXT_INFO to @CHANGEAGENTID */
if not @CHANGEAGENTID is null
set CONTEXT_INFO @CHANGEAGENTID;
delete from dbo.STUDENTCLASSMEETINGGROUP
from dbo.STUDENTCLASSMEETINGGROUP
inner join dbo.STUDENTCOURSE on STUDENTCLASSMEETINGGROUP.STUDENTCOURSEID = STUDENTCOURSE.ID
inner join dbo.CLASSMEETINGGROUP on STUDENTCLASSMEETINGGROUP.CLASSMEETINGGROUPID = CLASSMEETINGGROUP.ID
where STUDENTCOURSE.STUDENTID = @STUDENTID
and CLASSMEETINGGROUP.CLASSID = @CLASSID
select @e=@@error;
-- reset CONTEXT_INFO to previous value
if not @contextCache is null
set CONTEXT_INFO @contextCache;
if @e <> 0
return 2;
return 0;
end