RE-Decoded

A technical look at the Raiser's Edge API from Blackbaud


Feeds:

The case of the disappearing form

February 14th, 2007 by David Zeidman

One of my most long standing problems that I have had with RE:VBA is showing a form modally. This in itself is not difficult but as soon as you move away from Raiser’s Edge, bring up another window in front of the modal form and then go back to Raiser’s Edge, the modal form has disappeared. Because the form is modal you are not able to access the underlying window (let’s call this the parent window). This is a pain as the only way to bring it back is to place another window over the parent window and then minimize it. This is not hard to do but it is harder to explain to users and not very intuitive.

Read the rest of this entry »

Posted in Advanced | Comments Off

Old and New Relationships

February 9th, 2007 by David Zeidman

The other day I was trawling the knowledgebase for some code to quickly look up the primary organization record for a constituent. It is the sort of thing that I could have worked out myself very easily but sometimes it is just convenient to see if Blackbaud already have the code available.

I found exactly what I was looking for, or so I thought. KB BB54132: How to write code to find the Record ID for the Primary Organization relationship. Seeing the solution reminded me of the time I first took over the reigns of RE customisation developer at my first position in San Francisco.

Read the rest of this entry »

Posted in Intermediate | 1 Comment »

Six ways to name a record

February 2nd, 2007 by David Zeidman

One thing that can make the API confusing is its inconsistencies. Take for example the task of referencing the constituent object’s system id from another data object. The constituent system ID is used uniformally throughout to connect a constituent to its child objects such as, gifts, actions, aliases, solicit codes, etc. The naming convention however is not uniform. The objects have fields which are referenced in the following format:

OBJECTNAME_fld_FIELDNAME

so that an action references the constituent that is tied to it by the following:

oAction.Fields(ACTION_fld_RECORDS_ID)

Read the rest of this entry »

Posted in Beginner | 2 Comments »

Switch to our mobile site