USP_DATAFORMTEMPLATE_ADD_GIVINGLEVELPROGRAM
The save procedure used by the add dataform template "Giving Level Program Add Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | The output parameter indicating the ID of the record added. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@NAME | nvarchar(100) | IN | Program name |
@DESCRIPTION | nvarchar(255) | IN | Description |
@SMARTFIELDID | uniqueidentifier | IN | Smart field |
@GIVINGLEVELPROGRAMLEVELS | xml | IN | Levels |
@SITES | xml | IN | Site |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_GIVINGLEVELPROGRAM
(
@ID uniqueidentifier = null output,
@CHANGEAGENTID uniqueidentifier = null,
@NAME nvarchar(100) = null,
@DESCRIPTION nvarchar(255) = null,
@SMARTFIELDID uniqueidentifier = null,
@GIVINGLEVELPROGRAMLEVELS xml = null,
@SITES xml = null,
@CURRENTAPPUSERID uniqueidentifier = null
)
as
set nocount on;
if @GIVINGLEVELPROGRAMLEVELS is null
begin
raiserror('BBERR_GIVINGLEVEL_LEVELREQUIRED',13,1);
return 1;
end
if @SITES is null
begin
if dbo.UFN_SITEREQUIREDFORUSER(@CURRENTAPPUSERID) = 1
begin
raiserror('BBERR_GIVINGLEVELPROGRAMSITE_SITEREQUIRED',13,1);
return 1;
end
end
if @ID is null
set @ID = newid();
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
begin try
insert into dbo.[GIVINGLEVELPROGRAM]
(
[ID],
[NAME],
[DESCRIPTION],
[SMARTFIELDID],
[ADDEDBYID],
[CHANGEDBYID],
[DATEADDED],
[DATECHANGED]
)
values
(
@ID,
@NAME,
@DESCRIPTION,
@SMARTFIELDID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
exec dbo.USP_GIVINGLEVELPROGRAM_GETLEVELS_ADDFROMXML @ID, @GIVINGLEVELPROGRAMLEVELS, @CHANGEAGENTID;
exec dbo.USP_GIVINGLEVELPROGRAMSITE_GETSITES_ADDFROMXML @ID, @SITES, @CHANGEAGENTID;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;