USP_DATAFORMTEMPLATE_ADD_ORGTOGROUP_RELATIONSHIP

The save procedure used by the add dataform template "Relationship Organization to Group 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.
@CONSTITUENTID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@RECIPROCALCONSTITUENTID uniqueidentifier IN Related group
@RECIPROCALTYPECODEID uniqueidentifier IN Constituent group is the
@RELATIONSHIPTYPECODEID uniqueidentifier IN Constituent is the
@STARTDATE datetime IN Start date
@ENDDATE datetime IN End date
@COMMENTS nvarchar(max) IN Comments
@ISMATCHINGGIFTRELATIONSHIP bit IN The organization will match contributions for this relationship
@PRIMARYSOFTCREDITRELATIONSHIPEXISTS bit IN Apply to <Constituent> for revenue from <Reciprocal>
@PRIMARYSOFTCREDITMATCHFACTOR decimal(5, 2) IN Recognition credit match percent
@RECIPROCALSOFTCREDITRELATIONSHIPEXISTS bit IN Apply to <Reciprocal> for revenue from <Constituent>
@RECIPROCALSOFTCREDITMATCHFACTOR decimal(5, 2) IN Recognition credit match percent
@PRIMARYRECOGNITIONTYPECODEID uniqueidentifier IN Recognition credit type
@RECIPROCALRECOGNITIONTYPECODEID uniqueidentifier IN Recognition credit type

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_ORGTOGROUP_RELATIONSHIP
                    (
                        @ID uniqueidentifier = null output,
                        @CHANGEAGENTID uniqueidentifier = null,    
                        @CONSTITUENTID uniqueidentifier,
                        @RECIPROCALCONSTITUENTID uniqueidentifier,
                        @RECIPROCALTYPECODEID uniqueidentifier,
                        @RELATIONSHIPTYPECODEID uniqueidentifier,                
                        @STARTDATE datetime = null,
                        @ENDDATE datetime = null,
                        @COMMENTS nvarchar(max) = null,
                        @ISMATCHINGGIFTRELATIONSHIP bit = 0,
                        @PRIMARYSOFTCREDITRELATIONSHIPEXISTS bit = 0,
                        @PRIMARYSOFTCREDITMATCHFACTOR decimal(5,2) = 100,
                        @RECIPROCALSOFTCREDITRELATIONSHIPEXISTS bit = 0,
                        @RECIPROCALSOFTCREDITMATCHFACTOR decimal(5,2) = 100,
                        @PRIMARYRECOGNITIONTYPECODEID uniqueidentifier = null,
                        @RECIPROCALRECOGNITIONTYPECODEID uniqueidentifier = null
                    )
                    as
                        set nocount on;

                        declare @CURRENTDATE datetime;
                        set @CURRENTDATE = getdate();

                        if @ID is null
                            set @ID = newid();

                        if @CHANGEAGENTID is null  
                            exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;        

                        begin try
                            if @ISMATCHINGGIFTRELATIONSHIP = 1
                                update
                                    dbo.RELATIONSHIP
                                set
                                    ISMATCHINGGIFTRELATIONSHIP = 0,
                                    DATECHANGED = @CURRENTDATE,
                                    CHANGEDBYID = @CHANGEAGENTID
                                where
                                    RELATIONSHIPCONSTITUENTID = @CONSTITUENTID and
                                    RECIPROCALCONSTITUENTID = @RECIPROCALCONSTITUENTID and
                                    ISMATCHINGGIFTRELATIONSHIP = 1;


                            declare @SETID uniqueidentifier = newid();

                            insert into dbo.RELATIONSHIPSET
                            (
                                ID,
                                ADDEDBYID,
                                CHANGEDBYID,
                                DATEADDED,
                                DATECHANGED
                            )
                            values
                            (
                                @SETID,
                                @CHANGEAGENTID,
                                @CHANGEAGENTID,
                                @CURRENTDATE,
                                @CURRENTDATE
                            );


                            insert into dbo.RELATIONSHIP
                            (
                                ID,
                                RELATIONSHIPCONSTITUENTID,
                                RECIPROCALCONSTITUENTID,
                                RELATIONSHIPTYPECODEID,
                                RECIPROCALTYPECODEID,
                                STARTDATE,
                                ENDDATE,
                                RELATIONSHIPSETID,
                                COMMENTS,
                                ISMATCHINGGIFTRELATIONSHIP,
                                ADDEDBYID,
                                CHANGEDBYID,
                                DATEADDED,
                                DATECHANGED
                            )
                            values
                            (
                                @ID,
                                @CONSTITUENTID,
                                @RECIPROCALCONSTITUENTID,
                                @RELATIONSHIPTYPECODEID,
                                @RECIPROCALTYPECODEID,
                                @STARTDATE,
                                @ENDDATE,
                                @SETID,
                                @COMMENTS,
                                @ISMATCHINGGIFTRELATIONSHIP,
                                @CHANGEAGENTID,
                                @CHANGEAGENTID,
                                @CURRENTDATE,
                                @CURRENTDATE
                            );

                            exec dbo.USP_RELATIONSHIPCONFIGURATION_CONFIGURE @CONSTITUENTID, @RECIPROCALCONSTITUENTID, @RELATIONSHIPTYPECODEID, @RECIPROCALTYPECODEID, @CHANGEAGENTID, @CURRENTDATE

                            exec dbo.USP_RECOGNITIONDEFAULTSUPDATE @CONSTITUENTID, @RECIPROCALCONSTITUENTID,
                                @STARTDATE, @ENDDATE, @PRIMARYSOFTCREDITRELATIONSHIPEXISTS, @PRIMARYSOFTCREDITMATCHFACTOR,
                                @PRIMARYRECOGNITIONTYPECODEID, @RECIPROCALSOFTCREDITRELATIONSHIPEXISTS
                                @RECIPROCALSOFTCREDITMATCHFACTOR, @RECIPROCALRECOGNITIONTYPECODEID, @CHANGEAGENTID;
                        end try

                        begin catch
                            exec dbo.USP_RAISE_ERROR;
                            return 1;
                        end catch

                        return 0;