The Progressive Technology Project has compiled a list of scenarios related to doing searches from our groups’ support requests. We would like to put these forward as suggestions/modifications for Advanced Search or custom searches. Perhaps some have already been solved and are lurking quietly as custom searches that we just don’t have on our radar yet. Please share comments and reactions to these - have any of your clients needed something similar?
In case you don't know us, PTP has trained and supports over fifty community organizing groups in the US using CiviCRM, in addition to our other programmatic work. The version of CiviCRM we support is called PowerBase - it includes the CiviEngage module and CiviCampaign component that facilitate activities that all of these organizing groups do regularly to build people power.
I’ve packaged each need below as an actual scenario so you can imagine it immediately, but many can be abstracted to be a bit more general (for example, all dropdown menus in Advanced Search, or all contact info with a primary checkbox).
A note about Search Builder: some of these are possible in Search Builder, but Search Builder has a significantly steeper learning curve. It also may not be maintained forever, so ensuring that functionality comes into Advanced Search that only Search Builder now has is crucial.
Notes: I would have to create two smart groups and then do another search to OR the two groups together. The problem seems to be that the data type “dropdown” remains a dropdown in Advanced Search. On data entry, it should be a dropdown. But in Advanced Search, it should change from a dropdown to a checkbox (multiselect) field. We think the fix is to make all dropdowns operate in the way privacy options operate or with the uncheck to match any/uncheck to match all.
Notes: An organization group has a standard way of entering phone numbers and email addresses. They put accurate information in the database, which means that the primary phone numbers/email addresses will be different from person to person (some want to be contacted at their home number, some at their cell, some at their work email, etc.). Only pulling primary numbers gets me all the best ways to contact people. But I’ve organized an event and I need the cell phone numbers of all the folks I want to turn out for the day of the event. I need to be able to do an advanced search and pull up only mobile phones, whether they are folks’ primary number or not, so I can see what data is missing and contact them for the cell numbers.
Notes: I need to clean up my mailing lists. I don’t want to have an inflated list full of individuals who don’t even have an email address. That could throw off the mailing report. I need to search on contacts with null email addresses and remove them from all groups that are mailing lists.
Notes: I’m doing an import with a bunch of data. I import successfully matching on the internal/external IDs. A few records have errors, so I need to investigate those contact records. I need to search on the specific unique identifiers.
Another use case is matching on the Voter Activation Network ID - something that’s key for many organizing groups.
Notes: I want to see all the contacts with a Twitter/Facebook account and quickly send them an email to ask them to post to social media about something inflammatory a politician just said. We need to be able to search on all websites/instant messengers of a certain type.
Notes: When I send a big mailing, a bunch of emails get put on hold. I can unhold all those email addresses en masse by doing an advanced search of all emails on hold. The bounce report from a given mailing actually could help me differentiate between the bounce reasons which would let me unhold only the ones that have a temporary bounce type. I should be able to do a search on the bounce type and optionally delete all those emails that are bounced for the following reasons:
Invalid, Inactive but not for Quota, Relay, Syntax, Host
Next, we’d need to be able to batch update all the primary email addresses that are invalid and make the secondary email primary (or do a fix via import).
Notes: I need to find incomplete addresses to update them or decide not to send my direct mailing to them so I don’t waste money. I want to do a search on all individuals/orgs who Street Address, City, State, or Zip is Null. It would be ideal to do this in one single search where I can OR each of the arguments.
I would like to see all the records that have been added by themselves via our email sign-up page. If you set up a profile right, listings get added to a group. But if you make a mistake, there is no way of seeing how many people are adding themselves regularly to your database.