This is perhaps more of a rant than anything else but after being so pleased with the way Blackbaud introduced Batch into the RE:API I now found myself stuck with another piece of Raiser’s Edge functionality that I am less than pleased with.In the UK Gift Aid is big business. In the States (and possibly elsewhere) the donor can claim tax back from charitable donations. In the
Continue reading Adjust that tax claim at your peril
Category Archives: Beginner
Additions to the Plugin Directory
Since we started the plugin directory new plugins have been added. Here are the most recent additions to the plugin directory. If we have missed any then feel free to add them. Thank you to all those who have added over the past months.
Cannot find the plugin that you are looking for? Get in contact with us and find out how we can make your Raiser’s Edge processes more efficient and make savings in both time and money.
Excel Revisited
In a previous post (Integrating with Excel) I gave a code example of how RE can integrate with Excel. The code was relatively simple. One of the problems with working with Excel is if you embed references to Excel in your project but you are not sure of the version of Excel you will be working with.
Integrating with Excel
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.
Custom user defined business rules
The idea of creating user defined business rules has been discussed in various threads at Blackbus and on the Blackbaud Raiser’s Edge forums (see User Defined Business Rules for example). The whole functionality is really useful but there are clearly limitations.
One really good use of VBA is to perform this very task. For those not familiar with the build in version it allows you to select a query (constituent, gift or action) and for a all or a limited number of security groups it allows you to display a message on opening the record. This same functionality can be repeated using VBA. Of course you are able to query on a lot more, or perform more than simply display a message. Continue reading Custom user defined business rules
How to install a plugin
You may be interested in knowing how to install a plugin because you have just downloaded one and want to install it or you have just developed a plugin and want to deploy it. This article covers both.
Continue reading How to install a plugin
Blackbaud Labs RE7 code sample
I just noticed Blackbaud have added a code sample to their Blackbaud Labs site. This appears to be the same code sample as was released on CodePlex but it will no doubt get a larger audience here.
My initial thought about this code are that it is unnecessarily complicated. Creating an embedded HTML resource, creating a specific control, putting in the correct GUID into to the HTML page and then getting it all to work seems to be somewhat of a long winded approach. Continue reading Blackbaud Labs RE7 code sample
Changing Raiser’s Edge skin
If only we could change Raiser’s Edge in the same way that we can change other applications such as our favourite music players etc.
Well unfortunately I cannot show you a way to do exactly that but there are a few things that can be changed. Continue reading Changing Raiser’s Edge skin
How to use the API on a shoestring
There are a lot of misconceptions about what the Raiser’s Edge API is and what it can be used for. A lot of organisations are put off by the fact that the API is expensive to purchase on top of the fact that they may have to cover the cost of development too.
A Non-production database
There has been some discussion on the Blackbaud forums and on the Blackbus forum about using a second non-production database. This article will highlight some ways of doing this.
Before I begin I want to categorically state that if you believe what I am writing in this post breaks your Blackbaud contract then do not do it. A long time ago I was told by Blackbaud that it was perfectly acceptable and I hold by that but I know that others who have been told otherwise (including various support people at Blackbaud who will give you a different ruling depending on who you speak to!) Just to reiterate I am in no way encouraging you to break the law!
Continue reading A Non-production database