USP_DATAFORMTEMPLATE_EDITSAVE_CHARITYCLAIMREFERENCENUMBER
The save procedure used by the edit dataform template "Charity Claim Information 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. |
@REFERENCENUMBER | nvarchar(20) | IN | Reference number |
@DESCRIPTION | nvarchar(50) | IN | Description |
@CLASSIFICATIONCODE | tinyint | IN | Classification |
@WAITINGPERIOD | smallint | IN | Days to wait |
@SITES | xml | IN | Sites |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITSAVE_CHARITYCLAIMREFERENCENUMBER
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier,
@REFERENCENUMBER nvarchar(20),
@DESCRIPTION nvarchar(50),
@CLASSIFICATIONCODE tinyint,
@WAITINGPERIOD smallint,
@SITES xml,
@CURRENTAPPUSERID uniqueidentifier
)
as
begin
set nocount on;
declare @CURRENTDATE datetime
IF @ID is null
set @ID = newid()
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
set @CURRENTDATE = getdate()
declare @SITECOUNT int;
select @SITECOUNT = COUNT(SITEID) from dbo.UFN_CHARITYCLAIMREFERENCENUMBER_GETSITES_FROMITEMLISTXML(@SITES)
if @SITECOUNT = 0 or @SITES is null
begin
if dbo.UFN_SITEREQUIREDFORUSER(@CURRENTAPPUSERID) = 1
begin
raiserror('BBERR_SITEREQUIRED',13,1);
return;
end
declare @COUNT int;
select @COUNT = count(ID) from dbo.CHARITYCLAIMREFERENCENUMBER where ID not in (select CHARITYCLAIMREFERENCENUMBERID from dbo.CHARITYCLAIMREFERENCENUMBERSITE) and not ID = @ID
if @COUNT > 0
begin
raiserror('BBERR_CCRNSITEREQUIRED',13,1);
return;
end
end
if @WAITINGPERIOD is null
set @WAITINGPERIOD = 0
begin try
update dbo.CHARITYCLAIMREFERENCENUMBER set
ID = @ID,
REFERENCENUMBER = @REFERENCENUMBER,
DESCRIPTION = @DESCRIPTION,
CLASSIFICATIONCODE = @CLASSIFICATIONCODE,
WAITINGPERIOD = @WAITINGPERIOD,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where ID = @ID
exec dbo.USP_CHARITYCLAIMREFERENCENUMBER_GETSITES_UPDATEFROMXML @ID, @SITES, @CHANGEAGENTID, @CURRENTDATE
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0
end