Start a new topic

Individual Relationship Defaults

I am trying to set up tribute imports and I would like to set up defaults on the relationship created for Acknowledgees.

Specifically I would like to make the relationship/reciprocal be Acknowledgee/Tributee.  The key here is that I don't want the relationship type to be overwritten if the relationship already exists.

For example, if the relationship already exists for a spouse, but a new tribute is added to the record I don't want the spouse relationship to have the new tribute types.  I only want the new tribute types to be set on new relationships created through the process.

Normally I would do this with a default set like I do for individuals but I don't see anywhere to include a default individual relationship set.

Ideas?  Other people doing Tribute imports that have some insight?

Digging a little further it seems that no defaults are used when a new constituent is created by a relationship...

When I check "Search for possible duplicates first but add as a full constituent if no matches are found" in the Constituents->Relationships->Individual tab it doesn't seem to be applying my Individual Default Set to that new constituent. How should I go about setting the defaults for this new constituent that I am adding?

Related to this is setting the address for the new constituent. In this case I am adding an acknowledgee that will be mailed a card from an "in memory" tribute. Theoretically the address I am receiving is the address of the acknowledgee and not the tributee (since the tributee is presumably passed away). But, the tributee might already have a record in the system with their original address or a family home. I don't want to overwrite that address with the address of the acknowledgee but I still want to record that imported address on the new record created.

Is there a way to set the address on a constituent created by IOM from a relationship if I don't want it to be related to the address of the original record?

Hi Wayne,

Unfortunately, RE Default Sets do not apply to Relationships during imports with IOM. There is also not an event that would allow you to use the API to apply the Default Sets, either. Values for Relationships have to be specified in the data file, or via Virtual Fields.

In regards to the Relationship Type (Spouse vs. Acknowledgee) inquiry: You would have to use the API for this type of conditional evaluation of the Relationship Type. IOM's default functionality will update the Type on an existing relationship unless you choose the option in the profile configuration to create a new relationship if the type is different. If you choose this option, then there will be two relationships on the Relationships tab for the people who had pre-existing relationships, per your example.

If I understand the part about the addresses correctly, this should be handled by mapping the addresses to Individual Address (its full name =  Individual Relationship Address). That would put the address on the Relationship's record and not on the Tributee's record (allowing the deceased person is mapped to Constituent, as it appears they are from  your post). You would also select to break the address link between those two people in the event both records were pre-existing and already shared an address, to keep the Tributee's address from being changed.

Please let me know if I have misunderstood anything.



Ah, I didn't realize that Individual meant Individual Relationship. Good to know!

Sad about the other parts though.
Another related default question.

If a new constituent is created for a tribute acknowledgee I want to set defaults on them. If the tribute gets linked to an existing record then I don't want to change anything on their record.

We have a field called "Source" (re-purposed from the target field) that denotes where that record came from. For records created because they are related to a tribute we would set the value to "Tribute". If, however, the record was created because they gave an online gift, it would be "Online Gift". Now, when that person gets set at the acknowledgee of a tribute through IOM I would like their Source to be "Tribute" if they are a new record, but stay "Online Gift" if they already existed.

To complicate matters Source is a required field.

Case 1) Mr. A exits with Source = Online Gift
Case 2) Mr. A does not exist yet

if a Tribute for Mr. X is created with Mr. A as the acknowledgee:
1) Keep the Source = Online Gift
2) Set the Source on the new record to be Tribute

I can't seem to access the underlying individual record in a relationship until the BeforeIndividualRelationshipSave Sub and by that time an exception has already been thrown because the Source is required.
BTW I fixed the relationship type issue with the following code


    Public Overrides Sub BeforeIndividualRelationshipSave(ByVal oInd As Blackbaud.PIA.RE7.BBREAPI.CIndividual2, _
                                        ByVal oIndRecord As Blackbaud.PIA.RE7.BBREAPI.CRecord, _
                                        ByVal GroupNumber As Integer, _
                                        Cancel as ImportOM.API.iCancel)
        'The relationship record is about to be saved
        'oInd = Relationship
        'oIndRecord = The relationships underlying constituent record
        'GroupNumber = The number assigned to the relationship in your profile
        'Set the type to be Tribute Acknowledgee unless a type already exists
        If oInd.Fields(EINDIVIDUAL2Fields.INDIVIDUAL2_fld_RELATION_CODE) = "" Then
            oInd.Fields(EINDIVIDUAL2Fields.INDIVIDUAL2_fld_RELATION_CODE) = "Tribute Acknowledgee"
        End If
    End Sub


Hi Wayne,

Unfortunately, IOM does not have an event for what you wish to do here, in regards to Source.

There have been requests for an AfterIndividualRelationshipOpen event, like IOM currently has for Constituents, but it has not been implemented in IOM yet.




Is this also the case for creating spouse records then? If the spouse record already exists I will have to overwrite any of the information that is already on the record?

Hi Wayne,

Sorry. :-(

Spouses are just relationships to RE. The only difference is that you can check for the spouse record on the constituent before IOM gets to relationship processing. So if you were to be importing a spouse flag, then you could certainly check to see if the spouse already exists on the constituent before IOM gets to the constituent save event, and then do your custom processing in the relationship event with that knowledge.



Login or Signup to post a comment