As of April 17, 2018, this site is now in read-only mode. To start new Blackbaud Developer’s discussions, you will find Developer Discussions in the Blackbaud CRM Community.

To post or respond to Blackbaud Community discussions, you will have to login using a login. Learn how to login here. If you have questions or need assistance, please email


Adding Address Validation to a custom form

By: christi

Posted on: March 29, 2016

NOTE: You need to have Address Validation turned on before beginning. To see if Address Validation is enabled, open the Address Add Form 2, set the country to a country with Address Validation enabled, and ensure that the Validate button shows. At a minimum, your data form must have the following fields (though they can be named differently and can be hidden, they do need to exist in your form): COUNTRYID, ADDRESSBLOCK, CITY, STATEID, POSTCODE. In your form, add the UIAction that will trigger the validation: <UIAction ActionID="VALIDATEADDRESSACTION" Caption="Validate" Description="Perform... Read More
Categories: ,

bbcon2013 content

By: Ben Lambert

Posted on: October 17, 2013

For the benefit of my session attendees as well as folks who were unable to attend #bbcon this year, here are the slides, source code, and deployables from my session! Here are the slides: bbcon2013.InfinitySDK contains the source code (VB.NET) for the Gamification demo, which uses gaming techniques to drive user behavior in the application (for example, to incentivize fundraisers to file contact reports or complete prospect plan steps). This zip contains the Catalog, UIModel, Workflow, and Mobile projects: contains the files to depl... Read More
Categories: ,

The "Numbers" table

By: TripOtt

Posted on: September 5, 2012

I recently overheard the question at Blackbaud the other day, “What is the “Numbers” table used for?.  We’ll let me try to relay an answer to you good people.  The numbers table can be a pretty powerful thing to use.  Often times in SQL, you find yourself needing to generate numbers or finding gaps in numbered sequences.  You can use it to order things sequentially when querying for data.  For example, you can use them to help generate date/time in your queries: DECLARE @STARTDATE as DATETIME = '1/1/2012' DECLARE @ENDDATE as DATETIME  = '12/31/2012' select DATEADD(d,NUM,@STARTDATE) from NUMBER... Read More
Categories: , ,

InsertGuid Macro

By: TripOtt

Posted on: September 5, 2012

This macro will allow you generate and insert a new guid value with a single keystroke or button press.  This is an extremely useful macro because you will be creating a lot of new guid values when you begin writing your xml specs. In Visual Studio, go to “Tools > Macros > Macro Explorer”. Right-click on the “Macros” node and choose “Load Macro Project…” Assuming you have installed the Blackbaud CRM SDK, browse to “<Your local install location>\SDK\Macros” and open the “BlackbaudEnterprise.vsmacros” file. In the Visual Studio keyboard options you can map the macro to your favorite... Read More

2.94 SDK What’s New

By: TripOtt

Posted on: August 29, 2012

So What’s New?  Want to learn more about the Kitchen Sink, Page Display Zones, List Builders, Batch Import Handlers, Batch Parameter Sets, displaying data mart  info within a data lists?  Check out the What's New Guide for Blackbaud CRM SDK v2.94. Read More

Measuring Growth of a BBCRM Database

By: Greg Howe

Posted on: July 5, 2012

This blog post provides guidance for measuring the growth of a BBCRM database; specifically how to identify the fastest growing tables, the total number of tables in the database, and then how to analyze the data so that you can develop a plan to curb the growth. Identifying Fast Growing Tables: The SQL script at the bottom of this article is written to identify database tables that are greater than 100MB in size (you can adjust the minimum size by changing the WHERE clause). The script’s output will show the table name, number of table rows, reserved space, actual used space, index size, and... Read More
Tags: |

Outlook + Blackbaud CRM Integration

By: Ben Lambert

Posted on: June 19, 2012

As I’ve mentioned before, every piece of functionality available in Blackbaud CRM (or any Infinity-based application), is exposed via a web service.  This makes integration with other applications VERY approachable…even fun! In this post, I’ll demonstrate how to build an AddIn for Microsoft Outlook that adds some useful functionality by driving the web services exposed by BBEC.  The full code for this sample will be uploaded as an attachment to this post. This AddIn will do the following: Add a menu item to the Inbox context menu that will add the selected email’s body as an interaction to the... Read More
Categories: ,

Template error when adding a new item to a VS project

By: Chris Whisenhunt

Posted on: May 24, 2012

One of my developers was getting the error below when trying to add a new item to an existing project. He had 2 different SDKs on his machine so my first thought was that he didn’t have the correct one set. So I had him run the correct SetCurrentSDK.bat on his machine and try again. Still not working. We looked over the forums and found this,   After he ran the SetCurrentSDK.bat he sent me the log and I found that some of the dlls being copied were denied. He ended up solving the issue by run the SetCurrentSDK... Read More

Developing on a machine that has 2 SDKs.

By: Chris Whisenhunt

Posted on: May 16, 2012

Some of you may have both VS2008 and VS2010 installed on your machine and are developing against a 2.9 and 2.91 versions. Well if you haven’t already had to constantly run the SetCurrentSDK.bat files then you will soon enough. I just created some batch files to make my life a little easier. The first part of this is to alter the SetCurrentSDK.bat files by removing the “pause” at the end of the files.   rem Blackbaud AppFx SDK version switch utility rem Copyright 2012, Blackbaud, Inc.  All rights reserved. @echo off SetCurrentSDK.exe /s=localhost /db=OSU /VERBOSE /WAITONERROR @echo Blackba... Read More

Privacy Policy | Sitemap | © 2011 Blackbaud, Inc. All Rights Reserved

Digital Ocean