USP_DATAFORMTEMPLATE_HOUSEHOLDMEMBER_ADD
The save procedure used by the add dataform template "Household Member 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 |
@LASTNAME | nvarchar(100) | IN | Last name |
@FIRSTNAME | nvarchar(50) | IN | First name |
@MIDDLENAME | nvarchar(50) | IN | Middle name |
@NICKNAME | nvarchar(50) | IN | Nickname |
@TITLECODEID | uniqueidentifier | IN | Title |
@SUFFIXCODEID | uniqueidentifier | IN | Suffix |
@MAIDENNAME | nvarchar(100) | IN | Maiden name |
@GENDERCODE | tinyint | IN | Gender |
@BIRTHDATE | UDT_FUZZYDATE | IN | Birth date |
@RELATIONSHIPTYPECODEID | uniqueidentifier | IN | Relationship type |
@RECIPROCALTYPECODEID | uniqueidentifier | IN | Reciprocal type |
@STARTDATE | datetime | IN | Start date |
@COPYHOUSEHOLDCONTACTINFO | bit | IN | Copy household's primary contact information |
@RECOGNIZEMEMBERFORHOUSEHOLD | bit | IN | Recognize member for household gifts |
@ADDEDCONSTITUENTTOOTHERMEMBERSRECOGNITION | xml | IN | Added constituent to other members recognition |
@ADDEDCONSTITUENTFROMOTHERMEMBERSRECOGNITION | xml | IN | Added constituent from other members recognition |
@SKIP_ADDING_SECURITYGROUPS | bit | IN | Skip adding security groups |
@SKIP_ADDING_SITES | bit | IN | Skip adding sites |
@TITLE2CODEID | uniqueidentifier | IN | Title 2 |
@SUFFIX2CODEID | uniqueidentifier | IN | Suffix 2 |
@INFOSOURCECODEID | uniqueidentifier | IN | Constituent source |
@GENDERCODEID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_HOUSEHOLDMEMBER_ADD
(
@ID uniqueidentifier = null output,
@CURRENTAPPUSERID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@GROUPID uniqueidentifier,
@MEMBERID uniqueidentifier = null,
@LASTNAME nvarchar(100) = null,
@FIRSTNAME nvarchar(50) = '',
@MIDDLENAME nvarchar(50) = '',
@NICKNAME nvarchar(50) = '',
@TITLECODEID uniqueidentifier = null,
@SUFFIXCODEID uniqueidentifier = null,
@MAIDENNAME nvarchar(100) = '',
@GENDERCODE tinyint = 0,
@BIRTHDATE dbo.UDT_FUZZYDATE = '00000000',
@RELATIONSHIPTYPECODEID uniqueidentifier = null,
@RECIPROCALTYPECODEID uniqueidentifier = null,
@STARTDATE datetime = null,
@COPYHOUSEHOLDCONTACTINFO bit = null,
@RECOGNIZEMEMBERFORHOUSEHOLD bit = null,
@ADDEDCONSTITUENTTOOTHERMEMBERSRECOGNITION xml = null,
@ADDEDCONSTITUENTFROMOTHERMEMBERSRECOGNITION xml = null,
@SKIP_ADDING_SECURITYGROUPS bit = 0,
@SKIP_ADDING_SITES bit = 0,
@TITLE2CODEID uniqueidentifier = null,
@SUFFIX2CODEID uniqueidentifier = null,
@INFOSOURCECODEID uniqueidentifier = null,
@GENDERCODEID uniqueidentifier = null
)
as
set nocount on;
-- 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, @LASTNAME, @FIRSTNAME,
@MIDDLENAME, @NICKNAME, @TITLECODEID, @SUFFIXCODEID, @MAIDENNAME, @GENDERCODE, @BIRTHDATE,
@RELATIONSHIPTYPECODEID, @RECIPROCALTYPECODEID, @STARTDATE, @COPYHOUSEHOLDCONTACTINFO, @GROUPID, null, 0,
@RECOGNIZEMEMBERFORHOUSEHOLD, @CURRENTAPPUSERID, 'ea110ccd-d89b-4fce-8398-2054ce1df4ee', @SKIP_ADDING_SECURITYGROUPS,
@SKIP_ADDING_SITES, @TITLE2CODEID, @SUFFIX2CODEID, @INFOSOURCECODEID, @GENDERCODEID;
exec dbo.USP_GETRECOGNITIONDEFAULTSBETWEENMEMBERSBYSOURCE_UPDATEFROMXML @GROUPID, @MEMBERID,
@ADDEDCONSTITUENTTOOTHERMEMBERSRECOGNITION, @CHANGEAGENTID
exec dbo.USP_GETRECOGNITIONDEFAULTSBETWEENMEMBERSBYRECIPIENT_UPDATEFROMXML @GROUPID, @MEMBERID,
@ADDEDCONSTITUENTFROMOTHERMEMBERSRECOGNITION, @CHANGEAGENTID
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;