There’s plenty of information out there about Raiser’s Edge Query and how to use it (and perhaps more importantly how not to use it). For this article I’ll assume you know how to create a query so I’ll just mention a few things that you should keep in mind when creating a query for a Crystal Reports report.
Query is not an exporting tool, otherwise it would be called Export. Query should be used to gather the objects for your report. Think of objects as constituents, gifts, actions, memberships, proposals, etc. An Export should then be created to export details about those objects. For example, your query would gather constituents that have given a gift during the current calendar year, and your export (based on the query) would export details about those constituents such as name, address, constituent code, total giving amount, number of gifts, etc. Don’t worry about the sorting or output fields in your query, they won’t matter much when you create your export.
You’ll need to create an Export in order to create the data file for your report (more on this in the next article). Yes, technically you could create a data file using Query but you won’t be able to set up and run the report as a Custom Report in Raiser’s Edge.
The most important decision you’ll need to make about your query is what type of query you should use. One way to figure out which type of query to use is to figure out what the smallest important piece of information is on the report (or ask yourself “What type of report is this?” and “What is the purpose of this report?”). For our report example, we could use a constituent query, but since it’s basically a gift report it would be better to use a gift query.
With all that said, you should also consider if you even need a query in the first place. Depending on your criteria and query type you might be able to apply your criteria in the Export itself. For example, with a Gift Export you can apply criteria and filter on fields such as gift date, gift amount, campaigns, funds, appeals, and gift types.
One final thing to consider is if you should use the “Ask” operator in your query. This will let the user enter criteria when running the report through Custom Reports in Raiser’s Edge, such as a gift date range. Do not use the “Ask” operator if you will be setting up your report to run with Queue, the queue will just get stuck waiting for a response. Another option, instead of “Ask,” would be to use parameter fields in Crystal Reports. For example, you could use parameter fields to filter a gift report by month or constituent ID, or both. The advantage to this is that you do not have to create or run separate reports for each month or constituent ID. Just be sure to include all of the data that would be needed in your export (i.e. multiple months or constituents) and let the user filter the report on the fly as needed. I’ll cover parameters in more detail in a future article (and will add a link to the article after it is posted).