Complicated Query Building
I'm looking for some direction on how to build a query for the following:
If a constituent donates $500 or more at any time in the year (rolling year, not calendar year) then they are given a free membership.
Has anyone encountered this situation? I am not sure how to query a running total from the time the previous membership expired. Any help is greatly appreciated.
Thanks!
Joelle
Comments
-
I don't have the membership module. Is there an end date associated with the membership that you can query on?0
-
Hi Joelle-
I tried a Constituent query with the following options:
Criteria:
MEMBERSHIP -> HISTORY -> EXPIRES ON -> <today's date one year ago>
AND
TOTAL AMOUNT OF GIFTS Greater Than 500
GIFT DATE Greater Than <day before today's date one year ago>
GIFT TYPE Is One Of <everything except Pledges and Write Offs>
Output:
NAME
HISTORY EXPIRES ON
TOTAL AMOUNT OF GIFTS
I can already see some problems. For example, I have one constituent whose membership expires on 4/12/17. That means my summary gift dates are not valid for that one constituent and I would have to adjust my summary dates to start at 4/12/17. You'll run into this problem with each constituent that has a different Membership Expires On value not to mention my example will not find constituents with a Membership Expires on earlier than 4/12/17 who might have given $500 in the following 365-day period.
I think you'll need to do this in Excel exporting all Members new and old which will allow you to leverage Today(), EDATE(), and other date functions in combination with the History Expires On date. I have no idea how you would go back to get giving summary information since the date range will depend upon the History Expires On date. You might have to export all gifts for all Members on another spreadsheet and again, leverage the History Expires On date in a fomula to sum gifts from another wooksheet in your workbook. I can't see a quick an easy way to do this. Good luck!2 -
Ryan Hyde:
I don't have the membership module. Is there an end date associated with the membership that you can query on?Hi Ryan,
Yes and no. If the constituent has a membership already, they have an expiry date. If not, they would be working towards gaining a membership with each donation which would be a running total? Typing that, I see another problem. At what point would you say, "oh, sorry. You didn't hit $500 this year. Try again." I really thing this is going to require a total revamp of the complimentary membership program. :-(
0 -
Aaron Rothberg:
Hi Joelle-
I tried a Constituent query with the following options:
Criteria:
MEMBERSHIP -> HISTORY -> EXPIRES ON -> <today's date one year ago>
AND
TOTAL AMOUNT OF GIFTS Greater Than 500
GIFT DATE Greater Than <day before today's date one year ago>
GIFT TYPE Is One Of <everything except Pledges and Write Offs>
Output:
NAME
HISTORY EXPIRES ON
TOTAL AMOUNT OF GIFTS
I can already see some problems. For example, I have one constituent whose membership expires on 4/12/17. That means my summary gift dates are not valid for that one constituent and I would have to adjust my summary dates to start at 4/12/17. You'll run into this problem with each constituent that has a different Membership Expires On value not to mention my example will not find constituents with a Membership Expires on earlier than 4/12/17 who might have given $500 in the following 365-day period.
I think you'll need to do this in Excel exporting all Members new and old which will allow you to leverage Today(), EDATE(), and other date functions in combination with the History Expires On date. I have no idea how you would go back to get giving summary information since the date range will depend upon the History Expires On date. You might have to export all gifts for all Members on another spreadsheet and again, leverage the History Expires On date in a fomula to sum gifts from another wooksheet in your workbook. I can't see a quick an easy way to do this. Good luck!Thanks for trying Aaron. The deeper I dive into it, the more problems I see. For example, these members may find themselves with gaps in membership if they haven't hit another $500 before the membership expires. So would I now be running two lists? Donors who have a membership with an expiry date and those who do not but are being reviewed repeatedly in case they hit the $500 mark? I think it wasn't a problem before because they were just eyeballing each record as they were adding new gifts (into Income Manager) but I think my recommendation is going to be to revisit the complimentary membership program to see if some more structure can be put around it. Thanks again!!
0 -
Do you really have to run this daily?
For a monthly run I could think of this:
Run the Donor Category report (under Reports/ Analytical Reports) with a level set to $500 or more (Levels need first to be set up in Config - Donor Categories) for a time range of 1 year from the run date. Create a constituent output query (static)
The next month, do the same, just change the date. Compare the 2 output queries and see who is new (by merging)
Once they are members, to track if they lapse is something the membership module should be able to do, but I don't have it, so I don't know.
I'm using recurring gifts to track this for our organisation. Lot of work for a free membership ;-)
0 -
Cathleen Mai:
Do you really have to run this daily?
For a monthly run I could think of this:
Run the Donor Category report (under Reports/ Analytical Reports) with a level set to $500 or more (Levels need first to be set up in Config - Donor Categories) for a time range of 1 year from the run date. Create a constituent output query (static)
The next month, do the same, just change the date. Compare the 2 output queries and see who is new (by merging)
Once they are members, to track if they lapse is something the membership module should be able to do, but I don't have it, so I don't know.
I'm using recurring gifts to track this for our organisation. Lot of work for a free membership ;-)
Thanks Cathleen! I'll play around with it and see what it looks like. I'm still going to make the committee re-think their model though. ;-)
1 -
Hi Joelle,
A couple of "structural" options for you here:
1. Break the problem into component queries and use RE merge queries to combine your results (with AND, OR, SUB, XOR). This way you can more clearly see how each part of your query is behaving as you change criteria (WHERE parameters).
2. My own personal favorite approach: Use direct SQL on the back-end. Even if you absolutely must have the query in RE - for reporting, etc - you can run the SQL in a much more flexible manner and check your definitions, execution plans, etc and then migrate the result back into an RE query (or queries)*. Far and away, this is my preferred approach to complicated stuff like this. (And you could even go a step further and adopt Reporting Services as your reporting tool, but that's another story.)
Generally speaking, the complication with these things is actually the defiition of the problem (stating the obvious, I guess). If you're finding that there are exceptions to your original definition, then these have to find their way into the definition somehow and breaking things up into components really helps with that in my experience.
Cheers,
Steve Cinquegrana | CEO and Principal Developer | Protégé Solutions
* Don't forget to use View/SQL (Ctrl+Q) if you have the - optional and usually free - RODBA module. It's a god-send for this kind of thing - even for us atheists!
1 -
Steven Cinquegrana:
Hi Joelle,
A couple of "structural" options for you here:
1. Break the problem into component queries and use RE merge queries to combine your results (with AND, OR, SUB, XOR). This way you can more clearly see how each part of your query is behaving as you change criteria (WHERE parameters).
2. My own personal favorite approach: Use direct SQL on the back-end. Even if you absolutely must have the query in RE - for reporting, etc - you can run the SQL in a much more flexible manner and check your definitions, execution plans, etc and then migrate the result back into an RE query (or queries)*. Far and away, this is my preferred approach to complicated stuff like this. (And you could even go a step further and adopt Reporting Services as your reporting tool, but that's another story.)
Generally speaking, the complication with these things is actually the defiition of the problem (stating the obvious, I guess). If you're finding that there are exceptions to your original definition, then these have to find their way into the definition somehow and breaking things up into components really helps with that in my experience.
Cheers,
Steve Cinquegrana | CEO and Principal Developer | Protégé Solutions
* Don't forget to use View/SQL (Ctrl+Q) if you have the - optional and usually free - RODBA module. It's a god-send for this kind of thing - even for us atheists!
Thanks, Steve! I'll see where things sit once I've run the initial problem by the committee and take some of your query build advice. :-)
0
Categories
- All Categories
- Shannon parent
- shannon 2
- shannon 1
- 21 Advocacy DC Users Group
- 14 BBCRM PAG Discussions
- 89 High Education Program Advisory Group (HE PAG)
- 28 Luminate CRM DC Users Group
- 8 DC Luminate CRM Users Group
- Luminate PAG
- 5.9K Blackbaud Altru®
- 58 Blackbaud Award Management™ and Blackbaud Stewardship Management™
- 409 bbcon®
- 2.1K Blackbaud CRM™ and Blackbaud Internet Solutions™
- donorCentrics®
- 1.1K Blackbaud eTapestry®
- 2.8K Blackbaud Financial Edge NXT®
- 1.1K Blackbaud Grantmaking™
- 527 Education Management Solutions for Higher Education
- 1 JustGiving® from Blackbaud®
- 4.6K Education Management Solutions for K-12 Schools
- Blackbaud Luminate Online & Blackbaud TeamRaiser
- 16.4K Blackbaud Raiser's Edge NXT®
- 4.1K SKY Developer
- 547 ResearchPoint™
- 151 Blackbaud Tuition Management™
- 61 everydayhero
- 3 Campaign Ideas
- 58 General Discussion
- 115 Blackbaud ID
- 87 K-12 Blackbaud ID
- 6 Admin Console
- 949 Organizational Best Practices
- 353 The Tap (Just for Fun)
- 235 Blackbaud Community Feedback Forum
- 55 Admissions Event Management EAP
- 18 MobilePay Terminal + BBID Canada EAP
- 36 EAP for New Email Campaigns Experience in Blackbaud Luminate Online®
- 109 EAP for 360 Student Profile in Blackbaud Student Information System
- 41 EAP for Assessment Builder in Blackbaud Learning Management System™
- 9 Technical Preview for SKY API for Blackbaud CRM™ and Blackbaud Altru®
- 55 Community Advisory Group
- 46 Blackbaud Community Ideas
- 26 Blackbaud Community Challenges
- 7 Security Testing Forum
- 3 Blackbaud Staff Discussions
- 1 Blackbaud Partners Discussions
- 1 Blackbaud Giving Search™
- 35 EAP Student Assignment Details and Assignment Center
- 39 EAP Core - Roles and Tasks
- 59 Blackbaud Community All-Stars Discussions
- 20 Blackbaud Raiser's Edge NXT® Online Giving EAP
- Diocesan Blackbaud Raiser’s Edge NXT® User’s Group
- 2 Blackbaud Consultant’s Community
- 43 End of Term Grade Entry EAP
- 92 EAP for Query in Blackbaud Raiser's Edge NXT®
- 38 Standard Reports for Blackbaud Raiser's Edge NXT® EAP
- 12 Payments Assistant for Blackbaud Financial Edge NXT® EAP
- 6 Ask an All Star (Austen Brown)
- 8 Ask an All-Star Alex Wong (Blackbaud Raiser's Edge NXT®)
- 1 Ask an All-Star Alex Wong (Blackbaud Financial Edge NXT®)
- 6 Ask an All-Star (Christine Robertson)
- 21 Ask an Expert (Anthony Gallo)
- Blackbaud Francophone Group
- 22 Ask an Expert (David Springer)
- 4 Raiser's Edge NXT PowerUp Challenge #1 (Query)
- 6 Ask an All-Star Sunshine Reinken Watson and Carlene Johnson
- 4 Raiser's Edge NXT PowerUp Challenge: Events
- 14 Ask an All-Star (Elizabeth Johnson)
- 7 Ask an Expert (Stephen Churchill)
- 2025 ARCHIVED FORUM POSTS
- 322 ARCHIVED | Financial Edge® Tips and Tricks
- 164 ARCHIVED | Raiser's Edge® Blog
- 300 ARCHIVED | Raiser's Edge® Blog
- 441 ARCHIVED | Blackbaud Altru® Tips and Tricks
- 66 ARCHIVED | Blackbaud NetCommunity™ Blog
- 211 ARCHIVED | Blackbaud Target Analytics® Tips and Tricks
- 47 Blackbaud CRM Higher Ed Product Advisory Group (HE PAG)
- Luminate CRM DC Users Group
- 225 ARCHIVED | Blackbaud eTapestry® Tips and Tricks
- 1 Blackbaud eTapestry® Know How Blog
- 19 Blackbaud CRM Product Advisory Group (BBCRM PAG)
- 1 Blackbaud K-12 Education Solutions™ Blog
- 280 ARCHIVED | Mixed Community Announcements
- 3 ARCHIVED | Blackbaud Corporations™ & Blackbaud Foundations™ Hosting Status
- 1 npEngage
- 24 ARCHIVED | K-12 Announcements
- 15 ARCHIVED | FIMS Host*Net Hosting Status
- 23 ARCHIVED | Blackbaud Outcomes & Online Applications (IGAM) Hosting Status
- 22 ARCHIVED | Blackbaud DonorCentral Hosting Status
- 14 ARCHIVED | Blackbaud Grantmaking™ UK Hosting Status
- 117 ARCHIVED | Blackbaud CRM™ and Blackbaud Internet Solutions™ Announcements
- 50 Blackbaud NetCommunity™ Blog
- 169 ARCHIVED | Blackbaud Grantmaking™ Tips and Tricks
- Advocacy DC Users Group
- 718 Community News
- Blackbaud Altru® Hosting Status
- 104 ARCHIVED | Member Spotlight
- 145 ARCHIVED | Hosting Blog
- 149 JustGiving® from Blackbaud® Blog
- 97 ARCHIVED | bbcon® Blogs
- 19 ARCHIVED | Blackbaud Luminate CRM™ Announcements
- 161 Luminate Advocacy News
- 187 Organizational Best Practices Blog
- 67 everydayhero Blog
- 52 Blackbaud SKY® Reporting Announcements
- 17 ARCHIVED | Blackbaud SKY® Reporting for K-12 Announcements
- 3 Luminate Online Product Advisory Group (LO PAG)
- 81 ARCHIVED | JustGiving® from Blackbaud® Tips and Tricks
- 1 ARCHIVED | K-12 Conference Blog
- Blackbaud Church Management™ Announcements
- ARCHIVED | Blackbaud Award Management™ and Blackbaud Stewardship Management™ Announcements
- 1 Blackbaud Peer-to-Peer Fundraising™, Powered by JustGiving® Blogs
- 39 Tips, Tricks, and Timesavers!
- 56 Blackbaud Church Management™ Resources
- 154 Blackbaud Church Management™ Announcements
- 1 ARCHIVED | Blackbaud Church Management™ Tips and Tricks
- 11 ARCHIVED | Blackbaud Higher Education Solutions™ Announcements
- 7 ARCHIVED | Blackbaud Guided Fundraising™ Blog
- 2 Blackbaud Fundraiser Performance Management™ Blog
- 9 Foundations Events and Content
- 14 ARCHIVED | Blog Posts
- 2 ARCHIVED | Blackbaud FIMS™ Announcement and Tips
- 59 Blackbaud Partner Announcements
- 10 ARCHIVED | Blackbaud Impact Edge™ EAP Blogs
- 1 Community Help Blogs
- Diocesan Blackbaud Raiser’s Edge NXT® Users' Group
- Blackbaud Consultant’s Community
- Blackbaud Francophone Group
- 1 BLOG ARCHIVE CATEGORY
- Blackbaud Community™ Discussions
- 8.3K Blackbaud Luminate Online® & Blackbaud TeamRaiser® Discussions
- 5.7K Jobs Board