RE-Decoded

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


Feeds:

VBA User Fields in Export

July 9th, 2008 by David Zeidman

In export for a recurring gift it is not possible to pull out the bank details specific to that gift. You can only pull the name of the bank or all the banks on the constituent’s record. It is not possible to pull the account number and sort code. This is really important when there are bank issues with recurring gifts that need to be sorted out.

Read the rest of this entry »

Posted in Intermediate | 1 Comment »

Creating Attributes with the BatchAPI

July 3rd, 2008 by David Zeidman

Following my previous article on creating a batch with a notepad I am following it up with a some code that adds attributes. This is more or less shown on the Blackbus thread that I referenced but I wanted to clarify some of the steps having gone through the procedure myself. Read the rest of this entry »

Posted in Intermediate | 3 Comments »

Using the Batch API with Notepads or Attributes

June 20th, 2008 by David Zeidman

I have started to use the Batch API in earnest now. I have said previously that it is a great long overdue piece of functionality but I am beginning to understand why it was never included earlier. As with much of the API the newly added Batch API is not well documented. A good example of how to use it was given and can be found on Blackbaud’s knowledgbase (BB418575) but it is somewhat limited. It does not explain for example how to add an attribute or a notepad to a gift batch. This was discussed on a Blackbus thread.  Adding the items to the batch header was quite straight forward but adding the actual values proved more difficult. Here I try to shed some light on the process.

Read the rest of this entry »

Posted in Intermediate | 1 Comment »

Using the RE Controls – Part 1

May 15th, 2008 by David Zeidman

There are a lot of controls that The Raiser’s Edge uses and that you can use in your code to give it a similar look and feel. This article is an introduction to using one of these controls – the SuperEdit70Ex. Like most of the API this is not documented. Indeed this really is not documented. There is no extra documentation other than by looking at the object browser.

  Read the rest of this entry »

Posted in Intermediate | 3 Comments »

Validating a Constituent Batch

April 30th, 2008 by David Zeidman

Previously I have integrated Quick Address from QAS with The Raiser’s Edge. I implemented their pro API in order to validate the address on saving the constituent/relationship/participant and on demand using the VBA macro button. I created a plugin to update addresses en masse using their batch API. I implemented their pro API to create a “silent” validation during import. The one thing that I didn’t do at the time was to validate addresses in a constituent batch. At the time this was not a requirement.

Read the rest of this entry »

Posted in Not Code | 1 Comment »

RE7VBA tool not working as expected

April 7th, 2008 by David Zeidman

When you write code using the RE7VBA tool that compiles the VBA code into a DLL to be deployed, the environment is very similar to the built in VBA environment. There is the same development environment and access to the same code. So you would think that switching between the two would not be a problem.

Read the rest of this entry »

Posted in Intermediate | No Comments »

The Obsolete API

March 26th, 2008 by David Zeidman

Inspired by a posting on Wired (which in turn was taken from a Wiki on obsolete technologies) I wanted to give you a list of the top five obsolete areas of the RE:API.

  1. Read the rest of this entry »

Posted in Intermediate | 2 Comments »

Describe a constituent in their dialogue window

February 25th, 2008 by David Zeidman

When you open up a constituent record wouldn’t it be good to see a one line overview of the most important distinguishing features of their record even if they are on different tabs? This tip shows you how to put this information into the window dialogue title.

Read the rest of this entry »

Posted in Beginner | 1 Comment »

Integrating with Excel

December 5th, 2007 by David Zeidman

Two common tasks seem to be integrating RE with an Excel file. This can mean two things. Either from a plugin or some RE:VBA code opening a Excel file and extracting the data or it can mean that from within Excel VBA access the RE objects to retrieve some data. The way you handle the two scenarios is quite different.

 If you are trying to connect to Raiser’s Edge from Excel you will need the API module. You connect to RE using the REAPI object and initialize it with a serial number and optionally user name and password. You then use the API in exactly the same way as you would from within RE, i.e. via VBA or any other API application.

 If you want to open up Excel from RE then you will need to create the application objects. This is shown in the example below:

    Dim objExcel As Excel.Application     ' Excel application
    Dim objBook As Excel.Workbook      ' Excel workbook 
    Dim objSheet As Excel.Worksheet     ' Excel Worksheet 
    Dim oConstit As New CRecord    oConstit.Init REApplication.SessionContext
    Set objExcel = CreateObject("excel.application") 'Starts the Excel Session 
    Set objBook = objExcel.Workbooks.Open("C:test.xls")   

    For Each objSheet In objBook.Sheets
        If UCase(objSheet.Name) = "Sheet1" Then
            oConstit.Load CLng(objSheet.Range("A2").Text)
            objSheet.Range("A3").Text = oConstit.Fields(RECORDS_fld_FULL_NAME)
            Exit For
        End If
    Next objSheet
     objBook.Save 
     If Not objBook Is Nothing Then
        objBook.Close
        Set objBook = Nothing
    End If
     If Not objExcel Is Nothing Then 
        objExcel.Quit
        Set objExcel = Nothing
    End If  

 

This is quite self-explanatory code, although Excel has an object model just as RE does which is very large and takes a while to get to understand. There is plenty of Excel API information on MSDN.

Posted in Beginner | 1 Comment »

VBA in Imports

November 26th, 2007 by David Zeidman

At one time I was very keen on working with VBA on import. I now steer clear of this wherever possible! There are many reasons.

Read the rest of this entry »

Posted in Intermediate | No Comments »

« Previous Entries Next Entries »

Switch to our mobile site