USP_DATAFORMTEMPLATE_HOUSEHOLDMEMBERSIMPLIFIED_ADD
The save procedure used by the add dataform template "Household Member Simplified Add Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | The output parameter indicating the ID of the record added. |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@GROUPID | uniqueidentifier | IN | Input parameter indicating the context ID for the record being added. |
@MEMBERID | uniqueidentifier | IN | Constituent |
@COPYHOUSEHOLDCONTACTINFO | bit | IN | Copy household's primary contact information |
@RELATIONSHIPS | xml | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_HOUSEHOLDMEMBERSIMPLIFIED_ADD
(
@ID uniqueidentifier = null output,
@CURRENTAPPUSERID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@GROUPID uniqueidentifier,
@MEMBERID uniqueidentifier = null,
@COPYHOUSEHOLDCONTACTINFO bit = null,
@RELATIONSHIPS xml = null
)
as
set nocount on;
declare @CURRENTDATE datetime = getdate();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
-- Check security on the member if they chose an existing constituent
if @MEMBERID is not null
begin
declare @ISADMIN bit;
declare @APPUSER_IN_NONRACROLE bit;
declare @APPUSER_IN_NOSECGROUPROLE bit;
declare @APPUSER_IN_NONSITEROLE bit;
declare @APPUSER_IN_NOSITEROLE bit;
set @ISADMIN = dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID);
if @ISADMIN = 0
set @APPUSER_IN_NONRACROLE = dbo.UFN_SECURITY_APPUSER_IN_NONRACROLE(@CURRENTAPPUSERID);
if @ISADMIN = 0 and @APPUSER_IN_NONRACROLE = 0
set @APPUSER_IN_NOSECGROUPROLE = dbo.UFN_SECURITY_APPUSER_IN_NO_SECURITY_GROUP_ROLE(@CURRENTAPPUSERID);
set @APPUSER_IN_NONSITEROLE = dbo.UFN_SECURITY_APPUSER_IN_NONSITEROLE(@CURRENTAPPUSERID);
set @APPUSER_IN_NOSITEROLE = dbo.UFN_SECURITY_APPUSER_IN_NO_SITE_ROLE(@CURRENTAPPUSERID);
if (@ISADMIN = 0 and
(
(@APPUSER_IN_NONRACROLE = 0 and
dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITID_FORREPORT(@CURRENTAPPUSERID, @MEMBERID, @APPUSER_IN_NOSECGROUPROLE) = 0)
or
(@APPUSER_IN_NONSITEROLE = 0 and
dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITID_FORREPORT_BYSITE(@CURRENTAPPUSERID, @MEMBERID, @APPUSER_IN_NOSITEROLE) = 0)
)
)
begin
raiserror('BBERR_DB_RECORDSECURITY_PERMISSION_DENIED', 13, 1)
return 1
end
end
begin try
exec dbo.USP_HOUSEHOLDMEMBERADD @ID output, null, @CHANGEAGENTID, @GROUPID, @MEMBERID output, null, null,
null, null, null, null, null, null, null, null, null, null, @COPYHOUSEHOLDCONTACTINFO, @GROUPID, null,
0, null, @CURRENTAPPUSERID, 'D1AE9F9B-9600-4C62-840E-1197F8A065BD', 0, 0, null, null, null;
exec dbo.USP_RELATIONSHIPS_ADDFROMXML @RELATIONSHIPS, @ID, @CHANGEAGENTID, @CURRENTDATE
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;